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() {};"); |
68 } | 70 } |
69 }; | 71 }; |
70 | 72 |
71 TEST_F(EventUnittest, TestNothing) { | 73 TEST_F(EventUnittest, TestNothing) { |
72 ExpectNoAssertionsMade(); | 74 ExpectNoAssertionsMade(); |
73 } | 75 } |
74 | 76 |
75 TEST_F(EventUnittest, AddRemoveTwoListeners) { | 77 TEST_F(EventUnittest, AddRemoveTwoListeners) { |
76 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); | 78 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); |
77 RegisterModule("test", | 79 RegisterModule("test", |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
141 | 143 |
142 TEST_F(EventUnittest, NamedEventDispatch) { | 144 TEST_F(EventUnittest, NamedEventDispatch) { |
143 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); | 145 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); |
144 RegisterModule("test", | 146 RegisterModule("test", |
145 "var event = require('event');" | 147 "var event = require('event');" |
146 "var chromeHidden = requireNative('chrome_hidden').GetChromeHidden();" | 148 "var chromeHidden = requireNative('chrome_hidden').GetChromeHidden();" |
147 "var assert = requireNative('assert');" | 149 "var assert = requireNative('assert');" |
148 "var e = new event.Event('myevent');" | 150 "var e = new event.Event('myevent');" |
149 "var called = false;" | 151 "var called = false;" |
150 "e.addListener(function() { called = true; });" | 152 "e.addListener(function() { called = true; });" |
151 "chromeHidden.Event.dispatch('myevent', []);" | 153 "chromeHidden.Event.dispatchJSON('myevent', []);" |
152 "assert.AssertTrue(called);"); | 154 "assert.AssertTrue(called);"); |
153 module_system_->Require("test"); | 155 module_system_->Require("test"); |
154 } | 156 } |
155 | 157 |
156 TEST_F(EventUnittest, AddListenerWithFiltersThrowsErrorByDefault) { | 158 TEST_F(EventUnittest, AddListenerWithFiltersThrowsErrorByDefault) { |
157 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); | 159 ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get()); |
158 RegisterModule("test", | 160 RegisterModule("test", |
159 "var event = require('event');" | 161 "var event = require('event');" |
160 "var assert = requireNative('assert');" | 162 "var assert = requireNative('assert');" |
161 "var e = new event.Event('myevent');" | 163 "var e = new event.Event('myevent');" |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
239 "var caught = false;" | 241 "var caught = false;" |
240 "try {" | 242 "try {" |
241 " e.addListener(cb, filters);" | 243 " e.addListener(cb, filters);" |
242 "} catch (e) {" | 244 "} catch (e) {" |
243 " caught = true;" | 245 " caught = true;" |
244 "}" | 246 "}" |
245 "assert.AssertTrue(caught);"); | 247 "assert.AssertTrue(caught);"); |
246 module_system_->Require("test"); | 248 module_system_->Require("test"); |
247 } | 249 } |
248 | 250 |
| 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 |
249 } // namespace | 275 } // namespace |
OLD | NEW |