Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(107)

Side by Side Diff: chrome/test/data/webui/bluetooth_internals_browsertest.js

Issue 2568283003: bluetooth: Add notification system to internals page. (Closed)
Patch Set: CSS/Snackbar/test changes Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /** 5 /**
6 * @fileoverview Tests for chrome://bluetooth-internals 6 * @fileoverview Tests for chrome://bluetooth-internals
7 */ 7 */
8 8
9 /** @const {string} Path to source root. */ 9 /** @const {string} Path to source root. */
10 var ROOT_PATH = '../../../../'; 10 var ROOT_PATH = '../../../../';
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 deviceTable = document.querySelector('#devices table'); 257 deviceTable = document.querySelector('#devices table');
258 sidebarNode = document.querySelector('#sidebar'); 258 sidebarNode = document.querySelector('#sidebar');
259 devices.splice(0, devices.length); 259 devices.splice(0, devices.length);
260 adapterBroker.adapterClient_.deviceAdded(fakeDeviceInfo1()); 260 adapterBroker.adapterClient_.deviceAdded(fakeDeviceInfo1());
261 adapterBroker.adapterClient_.deviceAdded(fakeDeviceInfo2()); 261 adapterBroker.adapterClient_.deviceAdded(fakeDeviceInfo2());
262 }); 262 });
263 263
264 teardown(function() { 264 teardown(function() {
265 adapterFactory.reset(); 265 adapterFactory.reset();
266 sidebarObj.close(); 266 sidebarObj.close();
267 snackbar.Snackbar.dismiss(true);
267 }); 268 });
268 269
269 /** 270 /**
270 * Updates device info and verifies the contents of the device table. 271 * Updates device info and verifies the contents of the device table.
271 * @param {!device_collection.DeviceInfo} deviceInfo 272 * @param {!device_collection.DeviceInfo} deviceInfo
272 */ 273 */
273 function changeDevice(deviceInfo) { 274 function changeDevice(deviceInfo) {
274 var deviceRow = deviceTable.querySelector('#' + escapeDeviceAddress( 275 var deviceRow = deviceTable.querySelector('#' + escapeDeviceAddress(
275 deviceInfo.address)); 276 deviceInfo.address));
276 var nameForDisplayColumn = deviceRow.children[0]; 277 var nameForDisplayColumn = deviceRow.children[0];
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after
458 sidebarObj.open(); 459 sidebarObj.open();
459 expectTrue(sidebarNode.classList.contains('open')); 460 expectTrue(sidebarNode.classList.contains('open'));
460 }); 461 });
461 462
462 test('Sidebar_CloseTwice', function() { 463 test('Sidebar_CloseTwice', function() {
463 // Multiple calls to close shouldn't change the state. 464 // Multiple calls to close shouldn't change the state.
464 sidebarObj.close(); 465 sidebarObj.close();
465 sidebarObj.close(); 466 sidebarObj.close();
466 expectFalse(sidebarNode.classList.contains('open')); 467 expectFalse(sidebarNode.classList.contains('open'));
467 }); 468 });
469
470 /* Snackbar Tests */
471 function finishSnackbarTest(done) {
472 // Let event queue finish.
473 setTimeout(function() {
474 expectEquals(0, $('snackbar-container').children.length);
475 expectFalse(!!window.snackbar.Snackbar.current_);
Dan Beam 2016/12/16 21:54:41 nit: remove "window." everywhere
mbrunson 2016/12/17 02:21:59 Done.
476 done();
477 }, 10);
478 }
479
480 test('Snackbar_ShowTimeout', function(done) {
481 var snackbar = window.snackbar.Snackbar.show('Message 1');
482 assertEquals(1, $('snackbar-container').children.length);
483
484 snackbar.addEventListener('dismissed', function() {
485 finishSnackbarTest(done);
486 });
487 });
488
489 test('Snackbar_ShowDismiss', function(done) {
490 var snackbar = window.snackbar.Snackbar.show('Message 1');
491 assertEquals(1, $('snackbar-container').children.length);
492 snackbar.addEventListener('dismissed', function() {
493 finishSnackbarTest(done);
494 });
495
496 window.snackbar.Snackbar.dismiss();
497 });
498
499 test('Snackbar_QueueThreeDismiss', function(done) {
500 var expectedCalls = 3;
501 var actualCalls = 0;
502
503 var snackbar1 = window.snackbar.Snackbar.show('Message 1');
504 var snackbar2 = window.snackbar.Snackbar.show('Message 2');
505 var snackbar3 = window.snackbar.Snackbar.show('Message 3');
506
507 assertEquals(1, $('snackbar-container').children.length);
508 expectEquals(2, window.snackbar.Snackbar.queue_.length);
509
510 function next() {
511 actualCalls++;
512 window.snackbar.Snackbar.dismiss();
513 }
514
515 snackbar1.addEventListener('dismissed', next);
516 snackbar2.addEventListener('dismissed', next);
517 snackbar3.addEventListener('dismissed', function() {
518 next();
519 expectEquals(expectedCalls, actualCalls);
520 finishSnackbarTest(done);
521 });
522
523 window.snackbar.Snackbar.dismiss();
524 });
525
526 test('Snackbar_QueueThreeDismissAll', function(done) {
527 var expectedCalls = 1;
528 var actualCalls = 0;
529
530 var snackbar1 = window.snackbar.Snackbar.show('Message 1');
531 var snackbar2 = window.snackbar.Snackbar.show('Message 2');
532 var snackbar3 = window.snackbar.Snackbar.show('Message 3');
533
534 assertEquals(1, $('snackbar-container').children.length);
535 expectEquals(2, window.snackbar.Snackbar.queue_.length);
536
537 function next() {
538 assertTrue(false);
539 }
540
541 snackbar1.addEventListener('dismissed', function() {
542 expectEquals(0, window.snackbar.Snackbar.queue_.length);
543 expectFalse(!!window.snackbar.Snackbar.current_);
544 window.snackbar.Snackbar.dismiss();
545
546 finishSnackbarTest(done);
547 });
548 snackbar2.addEventListener('dismissed', next);
549 snackbar3.addEventListener('dismissed', next);
550
551 window.snackbar.Snackbar.dismiss(true);
552 });
468 }); 553 });
469 554
555
470 // Run all registered tests. 556 // Run all registered tests.
471 mocha.run(); 557 mocha.run();
472 }); 558 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698