Commit a86cf71f authored by Joon Ahn's avatar Joon Ahn Committed by Commit Bot

Diagnostics: Register individual MANUAL_ tests for debugging.

`browser_tests --gtest_filter=DiagnosticsApp*` to run in a single instance.
`browser_tests --run-manual --gtest_filter=DiagnosticsApp.MANUAL_*`
to run each test on a new instance.

Bug: 1125150
Test: Described above.
Change-Id: Iebef0469550523c2ef588e6ff6816ee2cc54683e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2508792
Commit-Queue: Joon Ahn <joonbug@chromium.org>
Reviewed-by: default avatarZentaro Kavanagh <zentaro@chromium.org>
Cr-Commit-Position: refs/heads/master@{#822919}
parent b39389a1
......@@ -23,20 +23,27 @@ import {routineResultEntryTestSuite} from './routine_result_entry_test.js';
import {routineResultListTestSuite} from './routine_result_list_test.js';
import {routineSectionTestSuite} from './routine_section_test.js';
suite('App', appTestSuite);
suite('BatteryStatusCard', batteryStatusCardTestSuite);
suite('CpuCard', cpuCardTestSuite);
suite('DataPoint', dataPointTestSuite);
suite('FakeMethodProvider', fakeMethodResolverTestSuite);
suite('FakeMojoInterface', fakeMojoProviderTestSuite);
suite('FakeObservables', fakeObservablesTestSuite);
suite('FakeSystemDataProvider', fakeSystemDataProviderTestSuite);
suite('FakeSystemRoutineContoller', fakeSystemRoutineContollerTestSuite);
suite('MemoryCard', memoryCardTestSuite);
suite('OverviewCard', overviewCardTestSuite);
suite('PercentBarChart', percentBarChartTestSuite);
suite('RealtimeCpuChart', realtimeCpuChartTestSuite);
suite('RoutineListExecutor', fakeRoutineListExecutorTestSuite);
suite('RoutineResultEntry', routineResultEntryTestSuite);
suite('RoutineResultList', routineResultListTestSuite);
suite('RoutineSection', routineSectionTestSuite);
window.test_suites_list = [];
function runSuite(suiteName, testFn) {
test_suites_list.push(suiteName);
suite(suiteName, testFn);
}
runSuite('App', appTestSuite);
runSuite('BatteryStatusCard', batteryStatusCardTestSuite);
runSuite('CpuCard', cpuCardTestSuite);
runSuite('DataPoint', dataPointTestSuite);
runSuite('FakeMethodProvider', fakeMethodResolverTestSuite);
runSuite('FakeMojoInterface', fakeMojoProviderTestSuite);
runSuite('FakeObservables', fakeObservablesTestSuite);
runSuite('FakeSystemDataProvider', fakeSystemDataProviderTestSuite);
runSuite('FakeSystemRoutineContoller', fakeSystemRoutineContollerTestSuite);
runSuite('MemoryCard', memoryCardTestSuite);
runSuite('OverviewCard', overviewCardTestSuite);
runSuite('PercentBarChart', percentBarChartTestSuite);
runSuite('RealtimeCpuChart', realtimeCpuChartTestSuite);
runSuite('RoutineListExecutor', fakeRoutineListExecutorTestSuite);
runSuite('RoutineResultEntry', routineResultEntryTestSuite);
runSuite('RoutineResultList', routineResultListTestSuite);
runSuite('RoutineSection', routineSectionTestSuite);
......@@ -4,6 +4,17 @@
/**
* @fileoverview Test fixture for chrome://diagnostics.
* Unifieid polymer testing suite for diagnostics app.
*
* To run all tests in a single instance (default, faster):
* `browser_tests --gtest_filter=DiagnosticsApp*``
*
* To run each test in a new instance:
* `browser_tests --run-manual --gtest_filter=DiagnosticsApp.MANUAL_*``
*
* To run a single test suite, such as 'CpuCard':
* `browser_tests --run-manual --gtest_filter=DiagnosticsApp.MANUAL_CpuCard`
*
*/
GEN_INCLUDE(['//chrome/test/data/webui/polymer_browser_test_base.js']);
......@@ -13,7 +24,7 @@ GEN('#include "content/public/test/browser_test.h"');
const dxTestSuites = 'chromeos/diagnostics/diagnostics_app_unified_test.js';
this['DiagnosticsAppTest'] = class extends PolymerTest {
this['DiagnosticsApp'] = class extends PolymerTest {
/** @override */
get browsePreload() {
return `chrome://diagnostics/test_loader.html?module=${dxTestSuites}`;
......@@ -37,6 +48,28 @@ this['DiagnosticsAppTest'] = class extends PolymerTest {
}
};
TEST_F('DiagnosticsAppTest', 'All', function() {
// List of names of suites in unified test to register for individual debugging.
// You must register all suites in unified test here as well for consistency,
// although technically is not necessary.
const debug_suites_list = [
'App', 'BatteryStatusCard', 'CpuCard', 'DataPoint', 'FakeMethodProvider',
'FakeMojoInterface', 'FakeObservables', 'FakeSystemDataProvider',
'FakeSystemRoutineContoller', 'MemoryCard', 'OverviewCard', 'PercentBarChart',
'RealtimeCpuChart', 'RoutineListExecutor', 'RoutineResultEntry',
'RoutineResultList', 'RoutineSection'
];
TEST_F('DiagnosticsApp', 'BrowserTest', function() {
assertDeepEquals(
debug_suites_list, test_suites_list,
'List of registered tests suites and debug suites do not match.\n' +
'Did you forget to add your test in debug_suites_list?');
mocha.run();
});
\ No newline at end of file
});
// Register each suite listed as individual tests for debugging purposes.
for (const suiteName of debug_suites_list) {
TEST_F('DiagnosticsApp', `MANUAL_${suiteName}`, function() {
runMochaSuite(suiteName);
});
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment