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

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

Issue 7250009: Added guts to pull call signatures when assertions & expectations fail. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase, fix and fix nits. Created 9 years, 5 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
(Empty)
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
3 // found in the LICENSE file.
4
5 function WebUIAssertionsTest() {}
6
7 WebUIAssertionsTest.prototype = {
8 __proto__: testing.Test.prototype,
9 browsePreload: 'chrome://DummyURL',
10 typedefCppFixture: null,
11 };
12
13 GEN('#include "chrome/browser/ui/webui/chrome_web_ui.h"');
14 GEN('#include "chrome/browser/ui/webui/test_chrome_web_ui_factory.h"');
15 GEN('#include "googleurl/src/gurl.h"');
16 GEN('#include "testing/gmock/include/gmock/gmock.h"');
17 GEN('');
18 GEN('using ::testing::_;');
19 GEN('using ::testing::Eq;');
20 GEN('using ::testing::StrictMock;');
21 GEN('');
22 GEN('// Dummy URL location for us to override.');
23 GEN('const char kDummyURL[] = "chrome://DummyURL/";');
24 GEN('');
25 GEN('// Returns a new WebUI object for the TabContents from |arg0|.');
26 GEN('ACTION(ReturnNewWebUI) {');
27 GEN(' return new ChromeWebUI(arg0);');
28 GEN('}');
29 GEN('');
30 GEN('// Mock the TestChromeWebUIFactory::WebUIProvider to prove that ' +
31 'we are called as');
32 GEN('// expected.');
33 GEN('class MockWebUIProvider : public TestChromeWebUIFactory::WebUIProvider {');
34 GEN(' public:');
35 GEN(' MOCK_METHOD2(NewWebUI, WebUI*(TabContents* tab_contents, const GURL& ' +
36 'url));');
37 GEN('};');
38 GEN('');
39 GEN('class WebUIAssertionsTest : public WebUIBrowserTest {');
40 GEN(' public:');
41 GEN(' virtual void SetUpOnMainThread() OVERRIDE {');
42 GEN(' WebUIBrowserTest::SetUpOnMainThread();');
43 GEN(' TestChromeWebUIFactory::AddFactoryOverride(');
44 GEN(' GURL(kDummyURL).host(), &mock_provider_);');
45 GEN(' EXPECT_CALL(mock_provider_, NewWebUI(_, Eq(GURL(kDummyURL))))');
46 GEN(' .WillOnce(ReturnNewWebUI());');
47 GEN(' }');
48 GEN(' virtual void CleanUpOnMainThread() OVERRIDE {');
49 GEN(' WebUIBrowserTest::CleanUpOnMainThread();');
50 GEN(' TestChromeWebUIFactory::RemoveFactoryOverride(');
51 GEN(' GURL(kDummyURL).host());');
52 GEN(' }');
53 GEN('');
54 GEN(' StrictMock<MockWebUIProvider> mock_provider_;');
55 GEN('');
56 GEN('};');
57
58 TEST_F('WebUIAssertionsTest', 'testTwoExpects', function() {
59 var result = runTest(
60 function() {
61 expectTrue(false);
62 expectTrue(0);
63 }, []);
64
65 expectFalse(result[0]);
66 expectTrue(!!result[1].match(/expectTrue\(false\): false/));
67 expectTrue(!!result[1].match(/expectTrue\(0\): 0/));
68 });
69
70 function twoExpects() {
71 expectTrue(false, 'message1');
72 expectTrue(false, 'message2');
73 }
74
75 TEST_F('WebUIAssertionsTest', 'testCallTestTwice', function() {
76 var result = runTest(
77 function() {
78 twoExpects();
79 twoExpects();
80 }, []);
81 expectFalse(result[0]);
82 expectEquals(
83 2, result[1].match(/expectTrue\(false, 'message1'\): false/g).length);
84 expectEquals(
85 2, result[1].match(/expectTrue\(false, 'message2'\): false/g).length);
86 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698