Clone this repo:

Branches

  1. b7760e2 Do not throw error if absolute coverage is missing. by Prakhar · 3 months ago main master
  2. 5313f56 Revert "Use unit test coverage metric to warn of low coverage" by Prakhar Asthana · 4 months ago
  3. f4621c3 Use unit test coverage metric to warn of low coverage by Prakhar · 4 months ago
  4. 49ab1e2 Show low coverage warning even when coverage is zero by Prakhar · 7 months ago
  5. ec06041 Change low coverage alert type from ERROR to WARNING. by Prakhar · 7 months ago

Chrome/Chromium Code Coverage Plugin

The purpose of this plugin is to surface code coverage data on Gerrit UI.

Checking out the code

To check out the chromium-coverage plugin code, first make sure you have gerrit frontend code checked in

git clone  https://gerrit.googlesource.com/gerrit

cd into plugins directory and checkout this repo

cd plugins/
git clone https://chromium.googlesource.com/infra/gerrit-plugins/code-coverage

Development

Following commands assume you have cd'ed into web/ directory

Running the tests

make test

Testing in Gerrit

For testing the plugin with Gerrit FE Dev Helper

1. make build (This creates a chromium-coverage.js file inside plugins directory)
2. cd ../../.. (cd into gerrit frontend code dir)
3. npx http-server -c-1 --cors

and let the Dev Helper redirect from .+/plugins/chromium-coverage/.* to http://localhost:8080/plugins/chromium-coverage.js

You might also have to block loading of prod coverage plugin(s) by using a block rule similar to .*polygerrit_assets/549.0/plugins/.*.

Project Configuration

This plugin is configured via the project.config file present in the repo's refs/meta/config ref. This file uses git config format. By default, the coverage percentage columns in the file list are hidden to avoid visual distraction in unrelated projects, and in order to have them displayed, please add the following config:

[plugin "code-coverage"]
  enabled = true