| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #include "chrome/test/base/module_system_test.h" | 5 #include "chrome/test/base/module_system_test.h" |
| 6 | 6 |
| 7 #include "grit/renderer_resources.h" | 7 #include "grit/renderer_resources.h" |
| 8 | 8 |
| 9 namespace { | 9 namespace { |
| 10 | 10 |
| 11 class EventUnittest : public ModuleSystemTest { | 11 class EventUnittest : public ModuleSystemTest { |
| 12 virtual void SetUp() OVERRIDE { | 12 virtual void SetUp() OVERRIDE { |
| 13 ModuleSystemTest::SetUp(); | 13 ModuleSystemTest::SetUp(); |
| 14 module_system_->RunString("chrome = {};", "setup-chrome"); | 14 module_system_->RunString("chrome = {};", "setup-chrome"); |
| 15 | 15 |
| 16 RegisterModule("event", IDR_EVENT_BINDINGS_JS); | 16 RegisterModule("event", IDR_EVENT_BINDINGS_JS); |
| 17 RegisterModule("utils", IDR_UTILS_JS); |
| 17 | 18 |
| 18 // Mock out the native handler for event_bindings. These mocks will fail if | 19 // Mock out the native handler for event_bindings. These mocks will fail if |
| 19 // any invariants maintained by the real event_bindings are broken. | 20 // any invariants maintained by the real event_bindings are broken. |
| 20 OverrideNativeHandler("event_bindings", | 21 OverrideNativeHandler("event_bindings", |
| 21 "var assert = requireNative('assert');" | 22 "var assert = requireNative('assert');" |
| 22 "var attachedListeners = exports.attachedListeners = {};" | 23 "var attachedListeners = exports.attachedListeners = {};" |
| 23 "exports.AttachEvent = function(eventName) {" | 24 "exports.AttachEvent = function(eventName) {" |
| 24 " assert.AssertFalse(!!attachedListeners[eventName]);" | 25 " assert.AssertFalse(!!attachedListeners[eventName]);" |
| 25 " attachedListeners[eventName] = 1;" | 26 " attachedListeners[eventName] = 1;" |
| 26 "};" | 27 "};" |
| 27 "exports.DetachEvent = function(eventName) {" | 28 "exports.DetachEvent = function(eventName) {" |
| 28 " assert.AssertTrue(!!attachedListeners[eventName]);" | 29 " assert.AssertTrue(!!attachedListeners[eventName]);" |
| 29 " delete attachedListeners[eventName];" | 30 " delete attachedListeners[eventName];" |
| 30 "};"); | 31 "};"); |
| 31 OverrideNativeHandler("chrome_hidden", | 32 OverrideNativeHandler("chrome_hidden", |
| 32 "var chromeHidden = {};" | 33 "var chromeHidden = {};" |
| 33 "exports.GetChromeHidden = function() { return chromeHidden; };"); | 34 "exports.GetChromeHidden = function() { return chromeHidden; };"); |
| 35 OverrideNativeHandler("sendRequest", |
| 36 "exports.sendRequest = function() {};"); |
| 37 OverrideNativeHandler("apiDefinitions", |
| 38 "exports.GetExtensionAPIDefinition = function() {};"); |
| 34 } | 39 } |
| 35 }; | 40 }; |
| 36 | 41 |
| 37 TEST_F(EventUnittest, TestNothing) { | 42 TEST_F(EventUnittest, TestNothing) { |
| 38 ExpectNoAssertionsMade(); | 43 ExpectNoAssertionsMade(); |
| 39 } | 44 } |
| 40 | 45 |
| 41 TEST_F(EventUnittest, AddRemoveTwoListeners) { | 46 TEST_F(EventUnittest, AddRemoveTwoListeners) { |
| 42 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); | 47 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); |
| 43 RegisterModule("test", | 48 RegisterModule("test", |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 80 "var assert = requireNative('assert');" | 85 "var assert = requireNative('assert');" |
| 81 "var e = new event.Event('myevent');" | 86 "var e = new event.Event('myevent');" |
| 82 "var called = false;" | 87 "var called = false;" |
| 83 "e.addListener(function() { called = true; });" | 88 "e.addListener(function() { called = true; });" |
| 84 "chromeHidden.Event.dispatch('myevent', []);" | 89 "chromeHidden.Event.dispatch('myevent', []);" |
| 85 "assert.AssertTrue(called);"); | 90 "assert.AssertTrue(called);"); |
| 86 module_system_->Require("test"); | 91 module_system_->Require("test"); |
| 87 } | 92 } |
| 88 | 93 |
| 89 } // namespace | 94 } // namespace |
| OLD | NEW |