Chromium Code Reviews| Index: chrome/test/data/webui/engagement/site_engagement_browsertest.js |
| diff --git a/chrome/test/data/webui/engagement/site_engagement_browsertest.js b/chrome/test/data/webui/engagement/site_engagement_browsertest.js |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..afe4690e4b82cad62359b3640c296d163b891909 |
| --- /dev/null |
| +++ b/chrome/test/data/webui/engagement/site_engagement_browsertest.js |
| @@ -0,0 +1,71 @@ |
| +// Copyright 2017 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +/** |
| + * @fileoverview Test suite for the Site Engagement WebUI. |
| + */ |
| +var ROOT_PATH = '../../../../../'; |
| +var EXAMPLE_URL_1 = 'http://example.com/'; |
| +var EXAMPLE_URL_2 = 'http://shmlexample.com/'; |
| + |
| +GEN('#include "chrome/browser/engagement/site_engagement_service.h"'); |
| +GEN('#include "chrome/browser/engagement/site_engagement_service_factory.h"'); |
| +GEN('#include "chrome/browser/ui/browser.h"'); |
| + |
| +function SiteEngagementBrowserTest() {} |
| + |
| +SiteEngagementBrowserTest.prototype = { |
| + __proto__: testing.Test.prototype, |
| + |
| + browsePreload: 'chrome://site-engagement', |
| + |
| + runAccessibilityChecks: false, |
| + |
| + isAsync: true, |
| + |
| + testGenPreamble: function() { |
| + GEN('SiteEngagementService* service ='); |
| + GEN(' SiteEngagementServiceFactory::GetForProfile(browser()->profile());'); |
| + GEN('service->ResetBaseScoreForURL(GURL("' + EXAMPLE_URL_1 + '"), 10);'); |
| + GEN('service->ResetBaseScoreForURL(GURL("' + EXAMPLE_URL_2 + |
| + '"), 3.14159);'); |
| + }, |
| + |
| + extraLibraries: [ |
| + ROOT_PATH + 'third_party/mocha/mocha.js', |
| + ROOT_PATH + 'chrome/test/data/webui/mocha_adapter.js', |
| + ], |
| + |
| + /** @override */ |
| + setUp: function() { |
| + testing.Test.prototype.setUp.call(this); |
| + suiteSetup(function() { |
| + return whenPageIsPopulatedForTest(); |
| + }); |
| + }, |
| +}; |
| + |
| +TEST_F('SiteEngagementBrowserTest', 'All', function() { |
| + suite('chrome://site-engagement', function() { |
|
tsergeant
2017/04/27 07:32:39
nit: You don't really need the suite here, since t
calamity
2017/04/28 04:40:28
Done.
|
| + test('check engagement values are loaded', function() { |
| + var originCells = |
| + Array.from(document.getElementsByClassName('origin-cell')); |
| + assertDeepEquals( |
| + [EXAMPLE_URL_1, EXAMPLE_URL_2], originCells.map(x => x.textContent)); |
| + }); |
| + |
| + test('scores rounded to 2 decimal places', function() { |
| + var scoreInputs = |
| + Array.from(document.getElementsByClassName('base-score-input')); |
| + assertDeepEquals(['10', '3.14'], scoreInputs.map(x => x.value)); |
| + var bonusScoreCells = |
| + Array.from(document.getElementsByClassName('bonus-score-cell')); |
| + assertDeepEquals(['0', '0'], bonusScoreCells.map(x => x.textContent)); |
| + var totalScoreCells = |
| + Array.from(document.getElementsByClassName('total-score-cell')); |
| + assertDeepEquals(['10', '3.14'], totalScoreCells.map(x => x.textContent)); |
| + }); |
| + }); |
| + mocha.run(); |
| +}); |