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 |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 "exports.HasFilteredListener = function(name) {" | 58 "exports.HasFilteredListener = function(name) {" |
59 " return attachedFilteredListeners[name].length;" | 59 " return attachedFilteredListeners[name].length;" |
60 "};"); | 60 "};"); |
61 OverrideNativeHandler("chrome_hidden", | 61 OverrideNativeHandler("chrome_hidden", |
62 "var chromeHidden = {};" | 62 "var chromeHidden = {};" |
63 "exports.GetChromeHidden = function() { return chromeHidden; };"); | 63 "exports.GetChromeHidden = function() { return chromeHidden; };"); |
64 OverrideNativeHandler("sendRequest", | 64 OverrideNativeHandler("sendRequest", |
65 "exports.sendRequest = function() {};"); | 65 "exports.sendRequest = function() {};"); |
66 OverrideNativeHandler("apiDefinitions", | 66 OverrideNativeHandler("apiDefinitions", |
67 "exports.GetExtensionAPIDefinition = function() {};"); | 67 "exports.GetExtensionAPIDefinition = function() {};"); |
68 OverrideNativeHandler("logging", | |
69 "exports.DCHECK = function() {};"); | |
70 } | 68 } |
71 }; | 69 }; |
72 | 70 |
73 TEST_F(EventUnittest, TestNothing) { | 71 TEST_F(EventUnittest, TestNothing) { |
74 ExpectNoAssertionsMade(); | 72 ExpectNoAssertionsMade(); |
75 } | 73 } |
76 | 74 |
77 TEST_F(EventUnittest, AddRemoveTwoListeners) { | 75 TEST_F(EventUnittest, AddRemoveTwoListeners) { |
78 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); | 76 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); |
79 RegisterModule("test", | 77 RegisterModule("test", |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
143 | 141 |
144 TEST_F(EventUnittest, NamedEventDispatch) { | 142 TEST_F(EventUnittest, NamedEventDispatch) { |
145 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); | 143 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); |
146 RegisterModule("test", | 144 RegisterModule("test", |
147 "var event = require('event');" | 145 "var event = require('event');" |
148 "var chromeHidden = requireNative('chrome_hidden').GetChromeHidden();" | 146 "var chromeHidden = requireNative('chrome_hidden').GetChromeHidden();" |
149 "var assert = requireNative('assert');" | 147 "var assert = requireNative('assert');" |
150 "var e = new event.Event('myevent');" | 148 "var e = new event.Event('myevent');" |
151 "var called = false;" | 149 "var called = false;" |
152 "e.addListener(function() { called = true; });" | 150 "e.addListener(function() { called = true; });" |
153 "chromeHidden.Event.dispatchJSON('myevent', []);" | 151 "chromeHidden.Event.dispatch('myevent', []);" |
154 "assert.AssertTrue(called);"); | 152 "assert.AssertTrue(called);"); |
155 module_system_->Require("test"); | 153 module_system_->Require("test"); |
156 } | 154 } |
157 | 155 |
158 TEST_F(EventUnittest, AddListenerWithFiltersThrowsErrorByDefault) { | 156 TEST_F(EventUnittest, AddListenerWithFiltersThrowsErrorByDefault) { |
159 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); | 157 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); |
160 RegisterModule("test", | 158 RegisterModule("test", |
161 "var event = require('event');" | 159 "var event = require('event');" |
162 "var assert = requireNative('assert');" | 160 "var assert = requireNative('assert');" |
163 "var e = new event.Event('myevent');" | 161 "var e = new event.Event('myevent');" |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
241 "var caught = false;" | 239 "var caught = false;" |
242 "try {" | 240 "try {" |
243 " e.addListener(cb, filters);" | 241 " e.addListener(cb, filters);" |
244 "} catch (e) {" | 242 "} catch (e) {" |
245 " caught = true;" | 243 " caught = true;" |
246 "}" | 244 "}" |
247 "assert.AssertTrue(caught);"); | 245 "assert.AssertTrue(caught);"); |
248 module_system_->Require("test"); | 246 module_system_->Require("test"); |
249 } | 247 } |
250 | 248 |
251 TEST_F(EventUnittest, MaxListeners) { | |
252 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); | |
253 RegisterModule("test", | |
254 "var event = require('event');" | |
255 "var assert = requireNative('assert');" | |
256 "var eventOpts = {supportsListeners: true, maxListeners: 1};" | |
257 "var e = new event.Event('myevent', undefined, eventOpts);" | |
258 "var cb = function() {};" | |
259 "var caught = false;" | |
260 "try {" | |
261 " e.addListener(cb);" | |
262 "} catch (e) {" | |
263 " caught = true;" | |
264 "}" | |
265 "assert.AssertTrue(!caught);" | |
266 "try {" | |
267 " e.addListener(cb);" | |
268 "} catch (e) {" | |
269 " caught = true;" | |
270 "}" | |
271 "assert.AssertTrue(caught);"); | |
272 module_system_->Require("test"); | |
273 } | |
274 | |
275 } // namespace | 249 } // namespace |
OLD | NEW |