aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party/py
diff options
context:
space:
mode:
authorGravatar elenairina <elenairina@google.com>2017-12-05 05:10:52 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-12-05 05:12:52 -0800
commit3d362fb9a122ceee6d781be127dfedbbff8051f8 (patch)
tree638b6a8e8ef65ddfb30a68b3934b4c5507baa5ae /third_party/py
parent581c197e2da57214f8c4915ba6ca9a78b5af537c (diff)
Add --experimental_java_coverage.
Context: java_import or other custom rules (genrules or Skylark) do not propagate coverage information. Coverage metadata is retrieved from the compilation information and it is passed around through providers as Artifact(s). The problem with the current implementation is that there is no way of retrieving instrumentation metadata from arbitrary jars provided by java_import or other custom rules. --experimental_java_coverage solves the issue presented above ONLY for the java rules (has no effect for android/[]/etc). Implementation details: * For each build jar create a .txt file containing the relative path of each Java file. This file is included in the build jar. It is used for recreating the correct path for each covered file when included in the coverage report. * java_binary/java_test will set 3 environment variables: 1) JACOCO_METADATA_JAR - in experimental mode will be a txt file containing all the jars considered for collecting coverage (JacocoCoverageRunner filters out the ones that don't have .uninstrumented.class files). In non-experimental mode will be a jar containing all the instrumented class files. 2) JACOCO_MAIN_CLASS - The main class to be called for the current coverage run. Previously this information was embedded in the JACOCO_METADATA_JAR's manifest. 3) JACOCO_JAVA_RUNFILES RELNOTES: --experimental_java_coverage is available for testing. PiperOrigin-RevId: 177941471
Diffstat (limited to 'third_party/py')
0 files changed, 0 insertions, 0 deletions