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

Unified Diff: chrome/renderer/extensions/event_unittest.cc

Issue 10661038: Revert 143896 - Filtered events. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/renderer/extensions/event_bindings.cc ('k') | chrome/renderer/extensions/extension_dispatcher.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/renderer/extensions/event_unittest.cc
===================================================================
--- chrome/renderer/extensions/event_unittest.cc (revision 144007)
+++ chrome/renderer/extensions/event_unittest.cc (working copy)
@@ -22,41 +22,13 @@
OverrideNativeHandler("event_bindings",
"var assert = requireNative('assert');"
"var attachedListeners = exports.attachedListeners = {};"
- "var attachedFilteredListeners = "
- " exports.attachedFilteredListeners = {};"
- "var nextId = 0;"
- "var idToName = {};"
-
"exports.AttachEvent = function(eventName) {"
" assert.AssertFalse(!!attachedListeners[eventName]);"
" attachedListeners[eventName] = 1;"
"};"
-
"exports.DetachEvent = function(eventName) {"
" assert.AssertTrue(!!attachedListeners[eventName]);"
" delete attachedListeners[eventName];"
- "};"
-
- "exports.IsEventAttached = function(eventName) {"
- " return !!attachedListeners[eventName];"
- "};"
-
- "exports.AttachFilteredEvent = function(name, filters) {"
- " var id = nextId++;"
- " idToName[id] = name;"
- " attachedFilteredListeners[name] ="
- " attachedFilteredListeners[name] || [];"
- " attachedFilteredListeners[name][id] = filters;"
- " return id;"
- "};"
-
- "exports.DetachFilteredEvent = function(id, manual) {"
- " var i = attachedFilteredListeners[idToName[id]].indexOf(id);"
- " attachedFilteredListeners[idToName[id]].splice(i, 1);"
- "};"
-
- "exports.HasFilteredListener = function(name) {"
- " return attachedFilteredListeners[name].length;"
"};");
OverrideNativeHandler("chrome_hidden",
"var chromeHidden = {};"
@@ -90,39 +62,6 @@
module_system_->Require("test");
}
-TEST_F(EventUnittest, OnUnloadDetachesAllListeners) {
- ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get());
- RegisterModule("test",
- "var assert = requireNative('assert');"
- "var event = require('event');"
- "var eventBindings = requireNative('event_bindings');"
- "var chromeHidden = requireNative('chrome_hidden').GetChromeHidden();"
- "var myEvent = new event.Event('named-event');"
- "var cb1 = function() {};"
- "var cb2 = function() {};"
- "myEvent.addListener(cb1);"
- "myEvent.addListener(cb2);"
- "chromeHidden.dispatchOnUnload();"
- "assert.AssertFalse(!!eventBindings.attachedListeners['named-event']);");
- module_system_->Require("test");
-}
-
-TEST_F(EventUnittest, OnUnloadDetachesAllListenersEvenDupes) {
- ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get());
- RegisterModule("test",
- "var assert = requireNative('assert');"
- "var event = require('event');"
- "var eventBindings = requireNative('event_bindings');"
- "var chromeHidden = requireNative('chrome_hidden').GetChromeHidden();"
- "var myEvent = new event.Event('named-event');"
- "var cb1 = function() {};"
- "myEvent.addListener(cb1);"
- "myEvent.addListener(cb1);"
- "chromeHidden.dispatchOnUnload();"
- "assert.AssertFalse(!!eventBindings.attachedListeners['named-event']);");
- module_system_->Require("test");
-}
-
TEST_F(EventUnittest, EventsThatSupportRulesMustHaveAName) {
ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get());
RegisterModule("test",
@@ -153,97 +92,4 @@
module_system_->Require("test");
}
-TEST_F(EventUnittest, AddListenerWithFiltersThrowsErrorByDefault) {
- ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get());
- RegisterModule("test",
- "var event = require('event');"
- "var assert = requireNative('assert');"
- "var e = new event.Event('myevent');"
- "var filter = [{"
- " url: {hostSuffix: 'google.com'},"
- "}];"
- "var caught = false;"
- "try {"
- " e.addListener(function() {}, filter);"
- "} catch (e) {"
- " caught = true;"
- "}"
- "assert.AssertTrue(caught);");
- module_system_->Require("test");
-}
-
-TEST_F(EventUnittest, FilteredEventsAttachment) {
- ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get());
- RegisterModule("test",
- "var event = require('event');"
- "var assert = requireNative('assert');"
- "var bindings = requireNative('event_bindings');"
- "var eventOpts = {supportsListeners: true, supportsFilters: true};"
- "var e = new event.Event('myevent', undefined, eventOpts);"
- "var cb = function() {};"
- "var filters = {url: [{hostSuffix: 'google.com'}]};"
- "e.addListener(cb, filters);"
- "assert.AssertTrue(bindings.HasFilteredListener('myevent'));"
- "e.removeListener(cb);"
- "assert.AssertFalse(bindings.HasFilteredListener('myevent'));");
- module_system_->Require("test");
-}
-
-TEST_F(EventUnittest, DetachFilteredEvent) {
- ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get());
- RegisterModule("test",
- "var event = require('event');"
- "var assert = requireNative('assert');"
- "var bindings = requireNative('event_bindings');"
- "var eventOpts = {supportsListeners: true, supportsFilters: true};"
- "var e = new event.Event('myevent', undefined, eventOpts);"
- "var cb1 = function() {};"
- "var cb2 = function() {};"
- "var filters = {url: [{hostSuffix: 'google.com'}]};"
- "e.addListener(cb1, filters);"
- "e.addListener(cb2, filters);"
- "e.detach_();"
- "assert.AssertFalse(bindings.HasFilteredListener('myevent'));");
- module_system_->Require("test");
-}
-
-TEST_F(EventUnittest, AttachAndRemoveSameFilteredEventListener) {
- ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get());
- RegisterModule("test",
- "var event = require('event');"
- "var assert = requireNative('assert');"
- "var bindings = requireNative('event_bindings');"
- "var eventOpts = {supportsListeners: true, supportsFilters: true};"
- "var e = new event.Event('myevent', undefined, eventOpts);"
- "var cb = function() {};"
- "var filters = {url: [{hostSuffix: 'google.com'}]};"
- "e.addListener(cb, filters);"
- "e.addListener(cb, filters);"
- "assert.AssertTrue(bindings.HasFilteredListener('myevent'));"
- "e.removeListener(cb);"
- "assert.AssertTrue(bindings.HasFilteredListener('myevent'));"
- "e.removeListener(cb);"
- "assert.AssertFalse(bindings.HasFilteredListener('myevent'));");
- module_system_->Require("test");
-}
-
-TEST_F(EventUnittest, AddingFilterWithUrlFieldNotAListThrowsException) {
- ModuleSystem::NativesEnabledScope natives_enabled_scope(module_system_.get());
- RegisterModule("test",
- "var event = require('event');"
- "var assert = requireNative('assert');"
- "var eventOpts = {supportsListeners: true, supportsFilters: true};"
- "var e = new event.Event('myevent', undefined, eventOpts);"
- "var cb = function() {};"
- "var filters = {url: {hostSuffix: 'google.com'}};"
- "var caught = false;"
- "try {"
- " e.addListener(cb, filters);"
- "} catch (e) {"
- " caught = true;"
- "}"
- "assert.AssertTrue(caught);");
- module_system_->Require("test");
-}
-
} // namespace
« no previous file with comments | « chrome/renderer/extensions/event_bindings.cc ('k') | chrome/renderer/extensions/extension_dispatcher.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698