| Index: extensions/test/data/unit_test_environment_specific_bindings.js
|
| diff --git a/extensions/test/data/unit_test_environment_specific_bindings.js b/extensions/test/data/unit_test_environment_specific_bindings.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..245d050d6325400bc5c7722c790620dc9a8d83aa
|
| --- /dev/null
|
| +++ b/extensions/test/data/unit_test_environment_specific_bindings.js
|
| @@ -0,0 +1,50 @@
|
| +// Copyright 2014 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.
|
| +
|
| +var nativesPromise = requireAsync('testNatives');
|
| +
|
| +function registerHooks(api) {
|
| + var chromeTest = api.compiledApi;
|
| + var apiFunctions = api.apiFunctions;
|
| +
|
| + apiFunctions.setHandleRequest('notifyPass', function() {
|
| + nativesPromise.then(function(natives) {
|
| + natives.NotifyPass();
|
| + });
|
| + });
|
| +
|
| + apiFunctions.setHandleRequest('notifyFail', function(message) {
|
| + nativesPromise.then(function(natives) {
|
| + natives.NotifyFail(message);
|
| + });
|
| + });
|
| +
|
| + apiFunctions.setHandleRequest('log', function() {
|
| + nativesPromise.then(function(natives) {
|
| + natives.Log($Array.join(arguments, ' '));
|
| + });
|
| + });
|
| +
|
| +}
|
| +
|
| +function testDone(runNextTest) {
|
| + // Use a promise here to allow previous test contexts to be eligible for
|
| + // garbage collection.
|
| + Promise.resolve().then(function() {
|
| + runNextTest();
|
| + });
|
| +}
|
| +
|
| +function exportTests(tests, runTests, exports) {
|
| + $Array.forEach(tests, function(test) {
|
| + exports[test.name] = function() {
|
| + runTests([test]);
|
| + return true;
|
| + }
|
| + });
|
| +}
|
| +
|
| +exports.registerHooks = registerHooks;
|
| +exports.testDone = testDone;
|
| +exports.exportTests = exportTests;
|
|
|