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

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

Issue 7553009: Add some browser tests for net-internals (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Response to Sheridan's comments Created 9 years, 4 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 Library providing basic test framework functionality. 6 * @fileoverview Library providing basic test framework functionality.
7 **/ 7 **/
8 8
9 /** 9 /**
10 * Namespace for |Test|. 10 * Namespace for |Test|.
(...skipping 456 matching lines...) Expand 10 before | Expand all | Expand 10 after
467 } catch (e) { 467 } catch (e) {
468 errors.push(e); 468 errors.push(e);
469 } 469 }
470 }; 470 };
471 expectFunc.isExpect = true; 471 expectFunc.isExpect = true;
472 expectFunc.expectName = assertFunc.name.replace(/^assert/, 'expect'); 472 expectFunc.expectName = assertFunc.name.replace(/^assert/, 'expect');
473 return expectFunc; 473 return expectFunc;
474 } 474 }
475 475
476 /** 476 /**
477 * This is the starting point for tests run by WebUIBrowserTest. It clears 477 * This is the starting point for tests run by WebUIBrowserTest. If an error
478 * |errors|, runs the test surrounded by an expect to catch Errors. If 478 * occurs, it reports a failure and a message created by joining individual
479 * |errors| is non-empty, it reports a failure and a message by joining 479 * error messages.
480 * |errors|.
481 * @param {string} testFunction The function name to call. 480 * @param {string} testFunction The function name to call.
482 * @param {Array} testArguments The arguments to call |testFunction| with. 481 * @param {Array} testArguments The arguments to call |testFunction| with.
483 * @return {Array.<boolean, string>} [test-succeeded, message-if-failed] 482 * @return {Array.<boolean, string>} [test-succeeded, message-if-failed]
484 * @see errors 483 * @see errors
485 * @see createExpect 484 * @see runTestFunction
486 **/ 485 **/
487 function runTest(testFunction, testArguments) { 486 function runTest(testFunction, testArguments) {
488 errors.splice(0, errors.length);
489 // Avoid eval() if at all possible, since it will not work on pages 487 // Avoid eval() if at all possible, since it will not work on pages
490 // that have enabled content-security-policy. 488 // that have enabled content-security-policy.
491 var testBody = this[testFunction]; // global object -- not a method. 489 var testBody = this[testFunction]; // global object -- not a method.
492 if (typeof testBody === "undefined") 490 if (typeof testBody === "undefined")
493 testBody = eval(testFunction); 491 testBody = eval(testFunction);
494 if (testBody != RUN_TEST_F) { 492 if (testBody != RUN_TEST_F) {
495 var testName = 493 var testName =
496 testFunction.name ? testFunction.name : testBody.toString(); 494 testFunction.name ? testFunction.name : testBody.toString();
497 console.log('Running test ' + testName); 495 console.log('Running test ' + testName);
498 } 496 }
497 return runTestFunction(testFunction, testBody, testArguments);
498 }
499
500 /**
501 * This is the guts of WebUIBrowserTest. It clears |errors|, runs the
502 * test surrounded by an expect to catch Errors. If |errors| is
503 * non-empty, it reports a failure and a message by joining |errors|.
504 * Consumers can use this to use assert/expect functions asynchronously,
505 * but are then responsible for reporting errors to the browser themselves.
506 * @param {string} testFunction The function name to report on failure.
507 * @param {Function} testBody The function to call.
508 * @param {Array} testArguments The arguments to call |testBody| with.
509 * @return {Array.<boolean, string>} [test-succeeded, message-if-failed]
510 * @see errors
511 * @see createExpect
512 **/
513 function runTestFunction(testFunction, testBody, testArguments) {
514 errors.splice(0, errors.length);
499 createExpect(testBody).apply(null, testArguments); 515 createExpect(testBody).apply(null, testArguments);
500 516
501 var result = [true]; 517 var result = [true];
502 if (errors.length) { 518 if (errors.length) {
503 var message = ''; 519 var message = '';
504 for (var i = 0; i < errors.length; ++i) { 520 for (var i = 0; i < errors.length; ++i) {
505 message += 'Failed: ' + testFunction + '(' + 521 message += 'Failed: ' + testFunction + '(' +
506 testArguments.map(JSON.stringify) + 522 testArguments.map(JSON.stringify) +
507 ')\n' + errors[i].stack; 523 ')\n' + errors[i].stack;
508 } 524 }
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
710 window.expectGT = createExpect(assertGT); 726 window.expectGT = createExpect(assertGT);
711 window.expectEquals = createExpect(assertEquals); 727 window.expectEquals = createExpect(assertEquals);
712 window.expectLE = createExpect(assertLE); 728 window.expectLE = createExpect(assertLE);
713 window.expectLT = createExpect(assertLT); 729 window.expectLT = createExpect(assertLT);
714 window.expectNotEquals = createExpect(assertNotEquals); 730 window.expectNotEquals = createExpect(assertNotEquals);
715 window.expectNotReached = createExpect(assertNotReached); 731 window.expectNotReached = createExpect(assertNotReached);
716 window.preloadJavascriptLibraries = preloadJavascriptLibraries; 732 window.preloadJavascriptLibraries = preloadJavascriptLibraries;
717 window.registerMessageCallback = registerMessageCallback; 733 window.registerMessageCallback = registerMessageCallback;
718 window.registerMockMessageCallbacks = registerMockMessageCallbacks; 734 window.registerMockMessageCallbacks = registerMockMessageCallbacks;
719 window.runTest = runTest; 735 window.runTest = runTest;
736 window.runTestFunction = runTestFunction;
720 window.SaveArgumentsMatcher = SaveArgumentsMatcher; 737 window.SaveArgumentsMatcher = SaveArgumentsMatcher;
721 window.TEST = TEST; 738 window.TEST = TEST;
722 window.TEST_F = TEST_F; 739 window.TEST_F = TEST_F;
723 window.GEN = GEN; 740 window.GEN = GEN;
724 741
725 // Import the Mock4JS helpers. 742 // Import the Mock4JS helpers.
726 Mock4JS.addMockSupport(window); 743 Mock4JS.addMockSupport(window);
727 })(); 744 })();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698