Home | History | Annotate | Download | only in sockets_tcp
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "extensions/browser/api/sockets_tcp/sockets_tcp_api.h"
      6 #include "extensions/browser/api_test_utils.h"
      7 #include "extensions/common/extension.h"
      8 #include "extensions/common/test_util.h"
      9 #include "extensions/shell/test/shell_test.h"
     10 
     11 using extensions::api_test_utils::RunFunctionAndReturnSingleResult;
     12 
     13 namespace extensions {
     14 
     15 class SocketsTcpApiTest : public AppShellTest {};
     16 
     17 IN_PROC_BROWSER_TEST_F(SocketsTcpApiTest, SocketsTcpCreateGood) {
     18   scoped_refptr<extensions::core_api::SocketsTcpCreateFunction>
     19       socket_create_function(
     20           new extensions::core_api::SocketsTcpCreateFunction());
     21   scoped_refptr<Extension> empty_extension = test_util::CreateEmptyExtension();
     22 
     23   socket_create_function->set_extension(empty_extension.get());
     24   socket_create_function->set_has_callback(true);
     25 
     26   scoped_ptr<base::Value> result(RunFunctionAndReturnSingleResult(
     27       socket_create_function.get(), "[]", browser_context()));
     28 
     29   ASSERT_EQ(base::Value::TYPE_DICTIONARY, result->GetType());
     30   base::DictionaryValue* value =
     31       static_cast<base::DictionaryValue*>(result.get());
     32   int socketId = -1;
     33   EXPECT_TRUE(value->GetInteger("socketId", &socketId));
     34   ASSERT_TRUE(socketId > 0);
     35 }
     36 
     37 }  // namespace extensions
     38