| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 Framework for running async JS tests for cr.js utility methods. | 6 * @fileoverview Framework for running async JS tests for cr.js utility methods. |
| 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 17 matching lines...) Expand all Loading... |
| 28 /** @override */ | 28 /** @override */ |
| 29 isAsync: true, | 29 isAsync: true, |
| 30 | 30 |
| 31 /** @override */ | 31 /** @override */ |
| 32 runAccessibilityChecks: false, | 32 runAccessibilityChecks: false, |
| 33 | 33 |
| 34 /** @override */ | 34 /** @override */ |
| 35 extraLibraries: [ | 35 extraLibraries: [ |
| 36 ROOT_PATH + 'third_party/mocha/mocha.js', | 36 ROOT_PATH + 'third_party/mocha/mocha.js', |
| 37 ROOT_PATH + 'chrome/test/data/webui/mocha_adapter.js', | 37 ROOT_PATH + 'chrome/test/data/webui/mocha_adapter.js', |
| 38 ROOT_PATH + 'chrome/test/data/webui/promise_resolver.js', | |
| 39 ROOT_PATH + 'ui/webui/resources/js/cr.js', | 38 ROOT_PATH + 'ui/webui/resources/js/cr.js', |
| 39 ROOT_PATH + 'ui/webui/resources/js/cr/promise_resolver.js', |
| 40 ], | 40 ], |
| 41 }; | 41 }; |
| 42 | 42 |
| 43 TEST_F('WebUIResourceAsyncTest', 'SendWithPromise', function() { | 43 TEST_F('WebUIResourceAsyncTest', 'SendWithPromise', function() { |
| 44 /** | 44 /** |
| 45 * TODO(dpapad): Move this helper method in test_api.js. | 45 * TODO(dpapad): Move this helper method in test_api.js. |
| 46 * @param {string} name chrome.send message name. | 46 * @param {string} name chrome.send message name. |
| 47 * @return {!Promise} Fires when chrome.send is called with the given message | 47 * @return {!Promise} Fires when chrome.send is called with the given message |
| 48 * name. | 48 * name. |
| 49 */ | 49 */ |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 147 return new Promise(function(resolve, reject) { | 147 return new Promise(function(resolve, reject) { |
| 148 listener1 = cr.addWebUIListener(EVENT_NAME, function() { | 148 listener1 = cr.addWebUIListener(EVENT_NAME, function() { |
| 149 assertEquals(0, arguments.length); | 149 assertEquals(0, arguments.length); |
| 150 resolve(); | 150 resolve(); |
| 151 }); | 151 }); |
| 152 cr.webUIListenerCallback(EVENT_NAME); | 152 cr.webUIListenerCallback(EVENT_NAME); |
| 153 }); | 153 }); |
| 154 }); | 154 }); |
| 155 | 155 |
| 156 test('addWebUIListener_MulitpleListeners', function() { | 156 test('addWebUIListener_MulitpleListeners', function() { |
| 157 var resolver1 = new PromiseResolver(); | 157 var resolver1 = new cr.PromiseResolver(); |
| 158 var resolver2 = new PromiseResolver(); | 158 var resolver2 = new cr.PromiseResolver(); |
| 159 listener1 = cr.addWebUIListener(EVENT_NAME, resolver1.resolve); | 159 listener1 = cr.addWebUIListener(EVENT_NAME, resolver1.resolve); |
| 160 listener2 = cr.addWebUIListener(EVENT_NAME, resolver2.resolve); | 160 listener2 = cr.addWebUIListener(EVENT_NAME, resolver2.resolve); |
| 161 cr.webUIListenerCallback(EVENT_NAME); | 161 cr.webUIListenerCallback(EVENT_NAME); |
| 162 // Check that both listeners registered are invoked. | 162 // Check that both listeners registered are invoked. |
| 163 return Promise.all([resolver1.promise, resolver2.promise]); | 163 return Promise.all([resolver1.promise, resolver2.promise]); |
| 164 }); | 164 }); |
| 165 }); | 165 }); |
| 166 | 166 |
| 167 // Run all registered tests. | 167 // Run all registered tests. |
| 168 mocha.run(); | 168 mocha.run(); |
| 169 }); | 169 }); |
| OLD | NEW |