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

Side by Side Diff: Source/web/tests/CustomEventTest.cpp

Issue 209713003: Make DOMWrapperWorld::current() return a reference instead of a pointer (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 9 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
« no previous file with comments | « Source/web/FrameLoaderClientImpl.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 EXPECT_EQ(event->type(), "blah"); 65 EXPECT_EQ(event->type(), "blah");
66 66
67 v8::Local<v8::Context> v8Context = WebCore::toV8Context(context, DOMWrap perWorld::mainWorld()); 67 v8::Local<v8::Context> v8Context = WebCore::toV8Context(context, DOMWrap perWorld::mainWorld());
68 v8::Isolate* isolate = v8Context->GetIsolate(); 68 v8::Isolate* isolate = v8Context->GetIsolate();
69 v8::Context::Scope scope(v8Context); 69 v8::Context::Scope scope(v8Context);
70 v8::Handle<v8::Value> jsEvent = toV8(event, v8::Handle<v8::Object>(), is olate); 70 v8::Handle<v8::Value> jsEvent = toV8(event, v8::Handle<v8::Object>(), is olate);
71 71
72 EXPECT_EQ(jsEvent->ToObject()->Get(v8::String::NewFromUtf8(isolate, "det ail")), v8::Boolean::New(isolate, true)); 72 EXPECT_EQ(jsEvent->ToObject()->Get(v8::String::NewFromUtf8(isolate, "det ail")), v8::Boolean::New(isolate, true));
73 } 73 }
74 74
75 static PassRefPtr<TestListener> create(v8::Isolate* isolate) 75 static PassRefPtr<TestListener> create(v8::Isolate* isolate, DOMWrapperWorld & world)
76 { 76 {
77 return adoptRef(new TestListener(isolate)); 77 return adoptRef(new TestListener(isolate, world));
78 } 78 }
79 79
80 private: 80 private:
81 TestListener(v8::Isolate* isolate) 81 TestListener(v8::Isolate* isolate, DOMWrapperWorld& world)
82 : V8AbstractEventListener(false, 0, isolate) 82 : V8AbstractEventListener(false, world, isolate)
83 { 83 {
84 } 84 }
85 85
86 virtual v8::Local<v8::Value> callListenerFunction(ExecutionContext*, v8::Han dle<v8::Value> jsevent, Event*) 86 virtual v8::Local<v8::Value> callListenerFunction(ExecutionContext*, v8::Han dle<v8::Value> jsevent, Event*)
87 { 87 {
88 ASSERT_NOT_REACHED(); 88 ASSERT_NOT_REACHED();
89 return v8::Local<v8::Value>(); 89 return v8::Local<v8::Value>();
90 } 90 }
91 }; 91 };
92 92
(...skipping 11 matching lines...) Expand all
104 URLTestHelpers::registerMockedURLFromBaseURL(WebString::fromUTF8(baseURL.c_s tr()), WebString::fromUTF8(path.c_str())); 104 URLTestHelpers::registerMockedURLFromBaseURL(WebString::fromUTF8(baseURL.c_s tr()), WebString::fromUTF8(path.c_str()));
105 FrameTestHelpers::WebViewHelper webViewHelper; 105 FrameTestHelpers::WebViewHelper webViewHelper;
106 WebFrameImpl* frame = toWebFrameImpl(webViewHelper.initializeAndLoad(baseURL + path)->mainFrame()); 106 WebFrameImpl* frame = toWebFrameImpl(webViewHelper.initializeAndLoad(baseURL + path)->mainFrame());
107 107
108 WebDOMEvent event = frame->frame()->document()->createEvent("CustomEvent", I GNORE_EXCEPTION); 108 WebDOMEvent event = frame->frame()->document()->createEvent("CustomEvent", I GNORE_EXCEPTION);
109 WebDOMCustomEvent customEvent = event.to<WebDOMCustomEvent>(); 109 WebDOMCustomEvent customEvent = event.to<WebDOMCustomEvent>();
110 110
111 v8::Isolate* isolate = toIsolate(frame->frame()); 111 v8::Isolate* isolate = toIsolate(frame->frame());
112 v8::HandleScope handleScope(isolate); 112 v8::HandleScope handleScope(isolate);
113 customEvent.initCustomEvent("blah", false, false, WebSerializedScriptValue:: serialize(v8::Boolean::New(isolate, true))); 113 customEvent.initCustomEvent("blah", false, false, WebSerializedScriptValue:: serialize(v8::Boolean::New(isolate, true)));
114 RefPtr<EventListener> listener = TestListener::create(isolate); 114 RefPtr<DOMWrapperWorld> world = DOMWrapperWorld::create();
115 RefPtr<EventListener> listener = TestListener::create(isolate, *world);
115 frame->frame()->document()->addEventListener("blah", listener, false); 116 frame->frame()->document()->addEventListener("blah", listener, false);
116 frame->frame()->document()->dispatchEvent(event); 117 frame->frame()->document()->dispatchEvent(event);
117 118
118 Platform::current()->unitTestSupport()->unregisterAllMockedURLs(); 119 Platform::current()->unitTestSupport()->unregisterAllMockedURLs();
119 } 120 }
120 121
121 } 122 }
OLDNEW
« no previous file with comments | « Source/web/FrameLoaderClientImpl.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698