InstrumentedFilesInfo

Informar um problema Acessar fonte

Contém informações sobre arquivos de origem e arquivos de metadados de instrumentação para segmentações de regras correspondidas por --instrumentation_filter para fins de coleta de dados de cobertura de código. Quando a coleta de dados de cobertura está ativada, um manifesto contendo os caminhos combinados em instrumented_files e metadata_files é transmitido para a ação de teste como entradas, com o caminho do manifesto indicado na variável de ambiente COVERAGE_MANIFEST. Os arquivos de metadados, mas não os arquivos de origem, também são transmitidos para a ação de teste como entradas. Quando InstrumentedFilesInfo é retornado pela função de implementação de um aspect, qualquer InstrumentedFilesInfo do destino da regra base é ignorado.

Participantes

instrumented_files

depset InstrumentedFilesInfo.instrumented_files

depset de objetos File que representam arquivos de origem instrumentados para esse destino e as dependências dele.

metadata_files

depset InstrumentedFilesInfo.metadata_files

depset de objetos File que representam arquivos de metadados de cobertura para esse destino e as dependências dele. Esses arquivos contêm outras informações necessárias para gerar a saída da cobertura do formato LCOV após a execução do código, por exemplo, os arquivos .gcno gerados quando gcc é executado com -ftest-coverage.

to_json

string InstrumentedFilesInfo.to_json()

Obsoleto. Esta API foi descontinuada e vai ser removida em breve. Não dependa disso. Ela está desativada com o ---incompatible_struct_has_no_methods. Use essa sinalização para verificar se seu código é compatível com a remoção iminente.
Cria uma string JSON a partir do parâmetro struct. Esse método só funciona se todos os elementos de struct (recursivamente) forem strings, ints, booleanos, outras estruturas, uma lista desses tipos ou um dicionário com chaves de string e valores desses tipos. Aspas e novas linhas em strings têm escape. Por exemplo:
struct(key=123).to_json()
# {"key":123}

struct(key=True).to_json()
# {"key":true}

struct(key=[1, 2, 3]).to_json()
# {"key":[1,2,3]}

struct(key='text').to_json()
# {"key":"text"}

struct(key=struct(inner_key='text')).to_json()
# {"key":{"inner_key":"text"}}

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_json()
# {"key":[{"inner_key":1},{"inner_key":2}]}

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_json()
# {"key":{"inner_key":{"inner_inner_key":"text"}}}
.

Obsoleto: em vez disso, use json.encode(x) ou json.encode_indent(x), que funcionam para valores diferentes de structs e não poluem o namespace do campo struct.

to_proto

string InstrumentedFilesInfo.to_proto()

Obsoleto. Esta API foi descontinuada e vai ser removida em breve. Não dependa disso. Ela está desativada com o ---incompatible_struct_has_no_methods. Use essa sinalização para verificar se seu código é compatível com a remoção iminente.
Cria uma mensagem de texto a partir do parâmetro struct. Esse método só funciona se todos os elementos struct (recursivamente) forem strings, ints, booleanos, outras estruturas, dicts ou listas desses tipos. Aspas e novas linhas em strings têm escape. As chaves struct são iteradas na ordem de classificação. Exemplos:
struct(key=123).to_proto()
# key: 123

struct(key=True).to_proto()
# key: true

struct(key=[1, 2, 3]).to_proto()
# key: 1
# key: 2
# key: 3

struct(key='text').to_proto()
# key: "text"

struct(key=struct(inner_key='text')).to_proto()
# key {
#   inner_key: "text"
# }

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_proto()
# key {
#   inner_key: 1
# }
# key {
#   inner_key: 2
# }

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_proto()
# key {
#    inner_key {
#     inner_inner_key: "text"
#   }
# }

struct(foo={4: 3, 2: 1}).to_proto()
# foo: {
#   key: 4
#   value: 3
# }
# foo: {
#   key: 2
#   value: 1
# }

Obsoleto: use proto.encode_text(x).