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

Side by Side Diff: chrome/browser/extensions/api/dns/dns_apitest.cc

Issue 10694106: Added support for multiple parameters to Extension API callbacks. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Synced. 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 unified diff | Download patch
OLDNEW
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 "base/memory/ref_counted.h" 5 #include "base/memory/ref_counted.h"
6 #include "base/memory/scoped_ptr.h" 6 #include "base/memory/scoped_ptr.h"
7 #include "chrome/browser/extensions/api/dns/dns_api.h" 7 #include "chrome/browser/extensions/api/dns/dns_api.h"
8 #include "chrome/browser/extensions/api/dns/host_resolver_wrapper.h" 8 #include "chrome/browser/extensions/api/dns/host_resolver_wrapper.h"
9 #include "chrome/browser/extensions/api/dns/mock_host_resolver_creator.h" 9 #include "chrome/browser/extensions/api/dns/mock_host_resolver_creator.h"
10 #include "chrome/browser/extensions/extension_apitest.h" 10 #include "chrome/browser/extensions/extension_apitest.h"
11 #include "chrome/browser/extensions/extension_function_test_utils.h" 11 #include "chrome/browser/extensions/extension_function_test_utils.h"
12 #include "net/base/mock_host_resolver.h" 12 #include "net/base/mock_host_resolver.h"
13 #include "net/base/net_errors.h" 13 #include "net/base/net_errors.h"
14 #include "net/base/net_util.h" 14 #include "net/base/net_util.h"
15 15
16 using extension_function_test_utils::CreateEmptyExtension; 16 using extension_function_test_utils::CreateEmptyExtension;
17 using extension_function_test_utils::RunFunctionAndReturnResult; 17 using extension_function_test_utils::RunFunctionAndReturnSingleResult;
18 18
19 namespace { 19 namespace {
20 20
21 class DnsApiTest : public PlatformAppApiTest { 21 class DnsApiTest : public PlatformAppApiTest {
22 public: 22 public:
23 DnsApiTest() : resolver_event_(true, false), 23 DnsApiTest() : resolver_event_(true, false),
24 resolver_creator_(new extensions::MockHostResolverCreator()) { 24 resolver_creator_(new extensions::MockHostResolverCreator()) {
25 } 25 }
26 26
27 void SetUpOnMainThread() OVERRIDE { 27 void SetUpOnMainThread() OVERRIDE {
(...skipping 19 matching lines...) Expand all
47 } // namespace 47 } // namespace
48 48
49 IN_PROC_BROWSER_TEST_F(DnsApiTest, DnsResolveIPLiteral) { 49 IN_PROC_BROWSER_TEST_F(DnsApiTest, DnsResolveIPLiteral) {
50 scoped_refptr<extensions::DnsResolveFunction> resolve_function( 50 scoped_refptr<extensions::DnsResolveFunction> resolve_function(
51 new extensions::DnsResolveFunction()); 51 new extensions::DnsResolveFunction());
52 scoped_refptr<extensions::Extension> empty_extension(CreateEmptyExtension()); 52 scoped_refptr<extensions::Extension> empty_extension(CreateEmptyExtension());
53 53
54 resolve_function->set_extension(empty_extension.get()); 54 resolve_function->set_extension(empty_extension.get());
55 resolve_function->set_has_callback(true); 55 resolve_function->set_has_callback(true);
56 56
57 scoped_ptr<base::Value> result(RunFunctionAndReturnResult( 57 scoped_ptr<base::Value> result(RunFunctionAndReturnSingleResult(
58 resolve_function, "[\"127.0.0.1\"]", browser())); 58 resolve_function, "[\"127.0.0.1\"]", browser()));
59 ASSERT_EQ(base::Value::TYPE_DICTIONARY, result->GetType()); 59 ASSERT_EQ(base::Value::TYPE_DICTIONARY, result->GetType());
60 DictionaryValue *value = static_cast<DictionaryValue*>(result.get()); 60 DictionaryValue *value = static_cast<DictionaryValue*>(result.get());
61 61
62 int resultCode; 62 int resultCode;
63 EXPECT_TRUE(value->GetInteger("resultCode", &resultCode)); 63 EXPECT_TRUE(value->GetInteger("resultCode", &resultCode));
64 EXPECT_EQ(net::OK, resultCode); 64 EXPECT_EQ(net::OK, resultCode);
65 65
66 std::string address; 66 std::string address;
67 EXPECT_TRUE(value->GetString("address", &address)); 67 EXPECT_TRUE(value->GetString("address", &address));
68 EXPECT_EQ("127.0.0.1", address); 68 EXPECT_EQ("127.0.0.1", address);
69 } 69 }
70 70
71 IN_PROC_BROWSER_TEST_F(DnsApiTest, DnsResolveHostname) { 71 IN_PROC_BROWSER_TEST_F(DnsApiTest, DnsResolveHostname) {
72 scoped_refptr<extensions::DnsResolveFunction> resolve_function( 72 scoped_refptr<extensions::DnsResolveFunction> resolve_function(
73 new extensions::DnsResolveFunction()); 73 new extensions::DnsResolveFunction());
74 scoped_refptr<extensions::Extension> empty_extension(CreateEmptyExtension()); 74 scoped_refptr<extensions::Extension> empty_extension(CreateEmptyExtension());
75 75
76 resolve_function->set_extension(empty_extension.get()); 76 resolve_function->set_extension(empty_extension.get());
77 resolve_function->set_has_callback(true); 77 resolve_function->set_has_callback(true);
78 78
79 std::string function_arguments("[\""); 79 std::string function_arguments("[\"");
80 function_arguments += extensions::MockHostResolverCreator::kHostname; 80 function_arguments += extensions::MockHostResolverCreator::kHostname;
81 function_arguments += "\"]"; 81 function_arguments += "\"]";
82 scoped_ptr<base::Value> result( 82 scoped_ptr<base::Value> result(
83 RunFunctionAndReturnResult(resolve_function.get(), 83 RunFunctionAndReturnSingleResult(resolve_function.get(),
84 function_arguments, browser())); 84 function_arguments, browser()));
85 ASSERT_EQ(base::Value::TYPE_DICTIONARY, result->GetType()); 85 ASSERT_EQ(base::Value::TYPE_DICTIONARY, result->GetType());
86 DictionaryValue *value = static_cast<DictionaryValue*>(result.get()); 86 DictionaryValue *value = static_cast<DictionaryValue*>(result.get());
87 87
88 int resultCode; 88 int resultCode;
89 EXPECT_TRUE(value->GetInteger("resultCode", &resultCode)); 89 EXPECT_TRUE(value->GetInteger("resultCode", &resultCode));
90 EXPECT_EQ(net::OK, resultCode); 90 EXPECT_EQ(net::OK, resultCode);
91 91
92 std::string address; 92 std::string address;
93 EXPECT_TRUE(value->GetString("address", &address)); 93 EXPECT_TRUE(value->GetString("address", &address));
94 EXPECT_EQ(extensions::MockHostResolverCreator::kAddress, address); 94 EXPECT_EQ(extensions::MockHostResolverCreator::kAddress, address);
95 } 95 }
96 96
97 IN_PROC_BROWSER_TEST_F(DnsApiTest, DnsExtension) { 97 IN_PROC_BROWSER_TEST_F(DnsApiTest, DnsExtension) {
98 ASSERT_TRUE(RunExtensionTest("dns/api")) << message_; 98 ASSERT_TRUE(RunExtensionTest("dns/api")) << message_;
99 } 99 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698