The Encrypted Reporting Pipeline (ERP) provides a universal method for upload of data for enterprise customers.
The code structure looks like this: Chrome:
If you'd like to begin using ERP within Chrome please check the comment in //components/reporting/client/report_queue_provider.h.
To run the unit tests for this directory, after having configured Chromium's build environment:
autoninja -C out/Default components_unittests to build the components unit test executable.
out/Default/components_unittests --gtest_filter='<target tests>' to run relevant tests. Here,
<target tests> is a wildcard pattern (refer to the document of gtest for more details). For example, to run all tests for
$ out/Default/components_unittests --gtest_filter='*/StorageQueueTest.*'
For another example, to run all tests in this directory, run
$ tools/autotest.py -C out/Default --run_all components/reporting
You can also append a filter such as
--gtest_filter='*/StorageQueueTest.*' to the line above.
Another useful flag for dealing with flaky tests is
--gtest_repeat=, which repeats tests for multiple times.
For more gtest features, check out the gtest document.