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

Unified Diff: chrome/renderer/resources/extensions/apitest.js

Issue 11571014: Lazy load chrome.* APIs (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: android compilation Created 7 years, 9 months 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 side-by-side diff with in-line comments
Download patch
Index: chrome/renderer/resources/extensions/apitest.js
diff --git a/chrome/renderer/resources/extensions/apitest.js b/chrome/renderer/resources/extensions/apitest.js
deleted file mode 100644
index 52414c2b07fcb46ffc10d265337c597d1fa98119..0000000000000000000000000000000000000000
--- a/chrome/renderer/resources/extensions/apitest.js
+++ /dev/null
@@ -1,274 +0,0 @@
-// Copyright (c) 2012 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.
-
-// extension_apitest.js
-// mini-framework for ExtensionApiTest browser tests
-
- chrome.test = chrome.test || {};
-
- chrome.test.tests = chrome.test.tests || [];
-
- var currentTest = null;
- var lastTest = null;
- var testsFailed = 0;
- var testCount = 1;
- var failureException = 'chrome.test.failure';
-
- // Helper function to get around the fact that function names in javascript
- // are read-only, and you can't assign one to anonymous functions.
- function testName(test) {
- return test ? (test.name || test.generatedName) : "(no test)";
- }
-
- function testDone() {
- // Use setTimeout here to allow previous test contexts to be
- // eligible for garbage collection.
- setTimeout(chrome.test.runNextTest, 0);
- }
-
- function allTestsDone() {
- if (testsFailed == 0) {
- chrome.test.notifyPass();
- } else {
- chrome.test.notifyFail('Failed ' + testsFailed + ' of ' +
- testCount + ' tests');
- }
-
- // Try to get the script to stop running immediately.
- // This isn't an error, just an attempt at saying "done".
- throw "completed";
- }
-
- var pendingCallbacks = 0;
-
- chrome.test.callbackAdded = function() {
- pendingCallbacks++;
-
- var called = false;
- return function() {
- chrome.test.assertFalse(called, 'callback has already been run');
- called = true;
-
- pendingCallbacks--;
- if (pendingCallbacks == 0) {
- chrome.test.succeed();
- }
- };
- };
-
- chrome.test.runNextTest = function() {
- // There may have been callbacks which were interrupted by failure
- // exceptions.
- pendingCallbacks = 0;
-
- lastTest = currentTest;
- currentTest = chrome.test.tests.shift();
-
- if (!currentTest) {
- allTestsDone();
- return;
- }
-
- try {
- chrome.test.log("( RUN ) " + testName(currentTest));
- currentTest.call();
- } catch (e) {
- if (e !== failureException)
- chrome.test.fail('uncaught exception: ' + e);
- }
- };
-
- chrome.test.fail = function(message) {
- chrome.test.log("( FAILED ) " + testName(currentTest));
-
- var stack = {};
- Error.captureStackTrace(stack, chrome.test.fail);
-
- if (!message)
- message = "FAIL (no message)";
-
- message += "\n" + stack.stack;
- console.log("[FAIL] " + testName(currentTest) + ": " + message);
- testsFailed++;
- testDone();
-
- // Interrupt the rest of the test.
- throw failureException;
- };
-
- chrome.test.succeed = function() {
- console.log("[SUCCESS] " + testName(currentTest));
- chrome.test.log("( SUCCESS )");
- testDone();
- };
-
- chrome.test.assertTrue = function(test, message) {
- chrome.test.assertBool(test, true, message);
- };
-
- chrome.test.assertFalse = function(test, message) {
- chrome.test.assertBool(test, false, message);
- };
-
- chrome.test.assertBool = function(test, expected, message) {
- if (test !== expected) {
- if (typeof(test) == "string") {
- if (message)
- message = test + "\n" + message;
- else
- message = test;
- }
- chrome.test.fail(message);
- }
- };
-
- chrome.test.checkDeepEq = function (expected, actual) {
- if ((expected === null) != (actual === null))
- return false;
-
- if (expected === actual)
- return true;
-
- if (typeof(expected) !== typeof(actual))
- return false;
-
- for (var p in actual) {
- if (actual.hasOwnProperty(p) && !expected.hasOwnProperty(p))
- return false;
- }
- for (var p in expected) {
- if (expected.hasOwnProperty(p) && !actual.hasOwnProperty(p))
- return false;
- }
-
- for (var p in expected) {
- var eq = true;
- switch (typeof(expected[p])) {
- case 'object':
- eq = chrome.test.checkDeepEq(expected[p], actual[p]);
- break;
- case 'function':
- eq = (typeof(actual[p]) != 'undefined' &&
- expected[p].toString() == actual[p].toString());
- break;
- default:
- eq = (expected[p] == actual[p] &&
- typeof(expected[p]) == typeof(actual[p]));
- break;
- }
- if (!eq)
- return false;
- }
- return true;
- };
-
- chrome.test.assertEq = function(expected, actual, message) {
- var error_msg = "API Test Error in " + testName(currentTest);
- if (message)
- error_msg += ": " + message;
- if (typeof(expected) == 'object') {
- if (!chrome.test.checkDeepEq(expected, actual)) {
- chrome.test.fail(error_msg +
- "\nActual: " + JSON.stringify(actual) +
- "\nExpected: " + JSON.stringify(expected));
- }
- return;
- }
- if (expected != actual) {
- chrome.test.fail(error_msg +
- "\nActual: " + actual + "\nExpected: " + expected);
- }
- if (typeof(expected) != typeof(actual)) {
- chrome.test.fail(error_msg +
- " (type mismatch)\nActual Type: " + typeof(actual) +
- "\nExpected Type:" + typeof(expected));
- }
- };
-
- chrome.test.assertNoLastError = function() {
- if (chrome.runtime.lastError != undefined) {
- chrome.test.fail("lastError.message == " +
- chrome.runtime.lastError.message);
- }
- };
-
- chrome.test.assertLastError = function(expectedError) {
- chrome.test.assertEq(typeof(expectedError), 'string');
- chrome.test.assertTrue(chrome.runtime.lastError != undefined,
- "No lastError, but expected " + expectedError);
- chrome.test.assertEq(expectedError, chrome.runtime.lastError.message);
- }
-
- function safeFunctionApply(func, args) {
- try {
- if (func)
- func.apply(null, args);
- } catch (e) {
- var msg = "uncaught exception " + e;
- chrome.test.fail(msg);
- }
- };
-
- // Wrapper for generating test functions, that takes care of calling
- // assertNoLastError() and (optionally) succeed() for you.
- chrome.test.callback = function(func, expectedError) {
- if (func) {
- chrome.test.assertEq(typeof(func), 'function');
- }
- var callbackCompleted = chrome.test.callbackAdded();
-
- return function() {
- if (expectedError == null) {
- chrome.test.assertNoLastError();
- } else {
- chrome.test.assertLastError(expectedError);
- }
-
- if (func) {
- safeFunctionApply(func, arguments);
- }
-
- callbackCompleted();
- };
- };
-
- chrome.test.listenOnce = function(event, func) {
- var callbackCompleted = chrome.test.callbackAdded();
- var listener = function() {
- event.removeListener(listener);
- safeFunctionApply(func, arguments);
- callbackCompleted();
- };
- event.addListener(listener);
- };
-
- chrome.test.listenForever = function(event, func) {
- var callbackCompleted = chrome.test.callbackAdded();
-
- var listener = function() {
- safeFunctionApply(func, arguments);
- };
-
- var done = function() {
- event.removeListener(listener);
- callbackCompleted();
- };
-
- event.addListener(listener);
- return done;
- };
-
- chrome.test.callbackPass = function(func) {
- return chrome.test.callback(func);
- };
-
- chrome.test.callbackFail = function(expectedError, func) {
- return chrome.test.callback(func, expectedError);
- };
-
- chrome.test.runTests = function(tests) {
- chrome.test.tests = tests;
- testCount = chrome.test.tests.length;
- chrome.test.runNextTest();
- };
« no previous file with comments | « chrome/renderer/extensions/webstore_bindings.cc ('k') | chrome/renderer/resources/extensions/app_custom_bindings.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698