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

Unified Diff: chrome/browser/extensions/extension_messages_apitest.cc

Issue 10694085: Refactor extension event distribution to use Values instead of JSON strings. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Build fix. Created 8 years, 5 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
Index: chrome/browser/extensions/extension_messages_apitest.cc
diff --git a/chrome/browser/extensions/extension_messages_apitest.cc b/chrome/browser/extensions/extension_messages_apitest.cc
index afb94ca7a13d4de515ca3b619ef019f9cacd6423..6c4c9683aa4232ccb4b7fadcd10ad9b8444a3458 100644
--- a/chrome/browser/extensions/extension_messages_apitest.cc
+++ b/chrome/browser/extensions/extension_messages_apitest.cc
@@ -2,6 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "base/values.h"
#include "chrome/browser/extensions/extension_apitest.h"
#include "chrome/browser/extensions/extension_event_router.h"
#include "chrome/browser/profiles/profile.h"
@@ -20,6 +21,16 @@ class MessageSender : public content::NotificationObserver {
}
private:
+ static ListValue* BuildEventArguments(const bool last_message,
+ const std::string& data) {
+ DictionaryValue* event = new DictionaryValue();
+ event->SetBoolean("lastMessage", last_message);
+ event->SetString("data", data);
+ ListValue* arguments = new ListValue();
+ arguments->Append(event);
+ return arguments;
+ }
+
virtual void Observe(int type,
const content::NotificationSource& source,
const content::NotificationDetails& details) {
@@ -29,19 +40,19 @@ class MessageSender : public content::NotificationObserver {
// Sends four messages to the extension. All but the third message sent
// from the origin http://b.com/ are supposed to arrive.
event_router->DispatchEventToRenderers("test.onMessage",
- "[{\"lastMessage\":false,\"data\":\"no restriction\"}]",
+ BuildEventArguments(false, "no restriction"),
content::Source<Profile>(source).ptr(),
GURL());
event_router->DispatchEventToRenderers("test.onMessage",
- "[{\"lastMessage\":false,\"data\":\"http://a.com/\"}]",
+ BuildEventArguments(false, "http://a.com/"),
content::Source<Profile>(source).ptr(),
GURL("http://a.com/"));
event_router->DispatchEventToRenderers("test.onMessage",
- "[{\"lastMessage\":false,\"data\":\"http://b.com/\"}]",
+ BuildEventArguments(false, "http://b.com/"),
content::Source<Profile>(source).ptr(),
GURL("http://b.com/"));
event_router->DispatchEventToRenderers("test.onMessage",
- "[{\"lastMessage\":true,\"data\":\"last message\"}]",
+ BuildEventArguments(true, "last message"),
content::Source<Profile>(source).ptr(),
GURL());
}

Powered by Google App Engine
This is Rietveld 408576698