OLD | NEW |
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 "ppapi/tests/test_tcp_server_socket_private_disallowed.h" | 5 #include "ppapi/tests/test_tcp_server_socket_private_disallowed.h" |
6 | 6 |
7 #include <cstddef> | 7 #include <cstddef> |
8 | 8 |
9 #include "ppapi/cpp/module.h" | 9 #include "ppapi/cpp/module.h" |
10 #include "ppapi/cpp/private/net_address_private.h" | 10 #include "ppapi/cpp/private/net_address_private.h" |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 if (!net_address_private_is_available) | 46 if (!net_address_private_is_available) |
47 instance_->AppendError("PPB_NetAddress_Private interface not available"); | 47 instance_->AppendError("PPB_NetAddress_Private interface not available"); |
48 | 48 |
49 return core_interface_ && | 49 return core_interface_ && |
50 tcp_server_socket_private_interface_ && | 50 tcp_server_socket_private_interface_ && |
51 net_address_private_is_available && | 51 net_address_private_is_available && |
52 CheckTestingInterface(); | 52 CheckTestingInterface(); |
53 } | 53 } |
54 | 54 |
55 void TestTCPServerSocketPrivateDisallowed::RunTests(const std::string& filter) { | 55 void TestTCPServerSocketPrivateDisallowed::RunTests(const std::string& filter) { |
56 RUN_TEST_FORCEASYNC_AND_NOT(Listen, filter); | 56 RUN_CALLBACK_TEST(TestTCPServerSocketPrivateDisallowed, Listen, filter); |
57 } | 57 } |
58 | 58 |
59 std::string TestTCPServerSocketPrivateDisallowed::TestListen() { | 59 std::string TestTCPServerSocketPrivateDisallowed::TestListen() { |
60 PP_Resource socket = | 60 PP_Resource socket = |
61 tcp_server_socket_private_interface_->Create(instance_->pp_instance()); | 61 tcp_server_socket_private_interface_->Create(instance_->pp_instance()); |
62 ASSERT_TRUE(socket != 0); | 62 ASSERT_TRUE(socket != 0); |
63 ASSERT_TRUE(tcp_server_socket_private_interface_->IsTCPServerSocket(socket)); | 63 ASSERT_TRUE(tcp_server_socket_private_interface_->IsTCPServerSocket(socket)); |
64 | 64 |
65 PP_NetAddress_Private base_address, current_address; | 65 PP_NetAddress_Private base_address, current_address; |
66 pp::NetAddressPrivate::GetAnyAddress(false, &base_address); | 66 pp::NetAddressPrivate::GetAnyAddress(false, &base_address); |
67 | 67 |
68 for (uint16_t port = kPortScanFrom; port < kPortScanTo; ++port) { | 68 for (uint16_t port = kPortScanFrom; port < kPortScanTo; ++port) { |
69 ASSERT_TRUE(pp::NetAddressPrivate::ReplacePort(base_address, | 69 ASSERT_TRUE(pp::NetAddressPrivate::ReplacePort(base_address, |
70 port, | 70 port, |
71 ¤t_address)); | 71 ¤t_address)); |
72 TestCompletionCallback callback(instance_->pp_instance(), force_async_); | 72 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); |
73 int32_t rv = tcp_server_socket_private_interface_->Listen( | 73 callback.WaitForResult(tcp_server_socket_private_interface_->Listen( |
74 socket, | 74 socket, |
75 ¤t_address, | 75 ¤t_address, |
76 1, | 76 1, |
77 callback.GetCallback().pp_completion_callback()); | 77 callback.GetCallback().pp_completion_callback())); |
78 if (force_async_ && rv != PP_OK_COMPLETIONPENDING) | 78 CHECK_CALLBACK_BEHAVIOR(callback); |
79 return ReportError("PPB_TCPServerSocket_Private::Listen force_async", rv); | 79 ASSERT_NE(PP_OK, callback.result()); |
80 if (rv == PP_OK_COMPLETIONPENDING) | |
81 rv = callback.WaitForResult(); | |
82 ASSERT_NE(PP_OK, rv); | |
83 } | 80 } |
84 | 81 |
85 PASS(); | 82 PASS(); |
86 } | 83 } |
OLD | NEW |