| 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.h" | 5 #include "ppapi/tests/test_tcp_server_socket_private.h" |
| 6 | 6 |
| 7 #include <cstdio> | 7 #include <cstdio> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "ppapi/cpp/pass_ref.h" | 10 #include "ppapi/cpp/pass_ref.h" |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 70 socket.Disconnect(); | 70 socket.Disconnect(); |
| 71 PASS(); | 71 PASS(); |
| 72 } | 72 } |
| 73 | 73 |
| 74 std::string TestTCPServerSocketPrivate::SyncRead(TCPSocketPrivate* socket, | 74 std::string TestTCPServerSocketPrivate::SyncRead(TCPSocketPrivate* socket, |
| 75 char* buffer, | 75 char* buffer, |
| 76 size_t num_bytes) { | 76 size_t num_bytes) { |
| 77 while (num_bytes > 0) { | 77 while (num_bytes > 0) { |
| 78 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); | 78 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); |
| 79 callback.WaitForResult( | 79 callback.WaitForResult( |
| 80 socket->Read(buffer, num_bytes, callback.GetCallback())); | 80 socket->Read(buffer, static_cast<int32_t>(num_bytes), |
| 81 callback.GetCallback())); |
| 81 CHECK_CALLBACK_BEHAVIOR(callback); | 82 CHECK_CALLBACK_BEHAVIOR(callback); |
| 82 ASSERT_TRUE(callback.result() >= 0); | 83 ASSERT_TRUE(callback.result() >= 0); |
| 83 buffer += callback.result(); | 84 buffer += callback.result(); |
| 84 num_bytes -= callback.result(); | 85 num_bytes -= callback.result(); |
| 85 } | 86 } |
| 86 PASS(); | 87 PASS(); |
| 87 } | 88 } |
| 88 | 89 |
| 89 std::string TestTCPServerSocketPrivate::SyncWrite(TCPSocketPrivate* socket, | 90 std::string TestTCPServerSocketPrivate::SyncWrite(TCPSocketPrivate* socket, |
| 90 const char* buffer, | 91 const char* buffer, |
| 91 size_t num_bytes) { | 92 size_t num_bytes) { |
| 92 while (num_bytes > 0) { | 93 while (num_bytes > 0) { |
| 93 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); | 94 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); |
| 94 callback.WaitForResult( | 95 callback.WaitForResult( |
| 95 socket->Write(buffer, num_bytes, callback.GetCallback())); | 96 socket->Write(buffer, static_cast<int32_t>(num_bytes), |
| 97 callback.GetCallback())); |
| 96 CHECK_CALLBACK_BEHAVIOR(callback); | 98 CHECK_CALLBACK_BEHAVIOR(callback); |
| 97 ASSERT_TRUE(callback.result() >= 0); | 99 ASSERT_TRUE(callback.result() >= 0); |
| 98 buffer += callback.result(); | 100 buffer += callback.result(); |
| 99 num_bytes -= callback.result(); | 101 num_bytes -= callback.result(); |
| 100 } | 102 } |
| 101 PASS(); | 103 PASS(); |
| 102 } | 104 } |
| 103 | 105 |
| 104 std::string TestTCPServerSocketPrivate::SyncConnect( | 106 std::string TestTCPServerSocketPrivate::SyncConnect( |
| 105 TCPSocketPrivate* socket, | 107 TCPSocketPrivate* socket, |
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 229 accepted_sockets[i] = new TCPSocketPrivate(pp::PassRef(), resources[i]); | 231 accepted_sockets[i] = new TCPSocketPrivate(pp::PassRef(), resources[i]); |
| 230 } | 232 } |
| 231 | 233 |
| 232 for (size_t i = 0; i < kBacklog; ++i) { | 234 for (size_t i = 0; i < kBacklog; ++i) { |
| 233 connect_callbacks[i]->WaitForResult(connect_rv[i]); | 235 connect_callbacks[i]->WaitForResult(connect_rv[i]); |
| 234 CHECK_CALLBACK_BEHAVIOR(*connect_callbacks[i]); | 236 CHECK_CALLBACK_BEHAVIOR(*connect_callbacks[i]); |
| 235 ASSERT_EQ(PP_OK, connect_callbacks[i]->result()); | 237 ASSERT_EQ(PP_OK, connect_callbacks[i]->result()); |
| 236 } | 238 } |
| 237 | 239 |
| 238 for (size_t i = 0; i < kBacklog; ++i) { | 240 for (size_t i = 0; i < kBacklog; ++i) { |
| 239 const char byte = 'a' + i; | 241 const char byte = static_cast<char>('a' + i); |
| 240 ASSERT_SUBTEST_SUCCESS(SyncWrite(client_sockets[i], &byte, sizeof(byte))); | 242 ASSERT_SUBTEST_SUCCESS(SyncWrite(client_sockets[i], &byte, sizeof(byte))); |
| 241 } | 243 } |
| 242 | 244 |
| 243 bool byte_received[kBacklog] = {}; | 245 bool byte_received[kBacklog] = {}; |
| 244 for (size_t i = 0; i < kBacklog; ++i) { | 246 for (size_t i = 0; i < kBacklog; ++i) { |
| 245 char byte; | 247 char byte; |
| 246 ASSERT_SUBTEST_SUCCESS(SyncRead(accepted_sockets[i], &byte, sizeof(byte))); | 248 ASSERT_SUBTEST_SUCCESS(SyncRead(accepted_sockets[i], &byte, sizeof(byte))); |
| 247 const size_t index = byte - 'a'; | 249 const size_t index = byte - 'a'; |
| 248 ASSERT_FALSE(byte_received[index]); | 250 ASSERT_FALSE(byte_received[index]); |
| 249 byte_received[index] = true; | 251 byte_received[index] = true; |
| 250 } | 252 } |
| 251 | 253 |
| 252 for (size_t i = 0; i < kBacklog; ++i) { | 254 for (size_t i = 0; i < kBacklog; ++i) { |
| 253 client_sockets[i]->Disconnect(); | 255 client_sockets[i]->Disconnect(); |
| 254 delete client_sockets[i]; | 256 delete client_sockets[i]; |
| 255 delete connect_callbacks[i]; | 257 delete connect_callbacks[i]; |
| 256 accepted_sockets[i]->Disconnect(); | 258 accepted_sockets[i]->Disconnect(); |
| 257 delete accepted_sockets[i]; | 259 delete accepted_sockets[i]; |
| 258 } | 260 } |
| 259 | 261 |
| 260 server_socket.StopListening(); | 262 server_socket.StopListening(); |
| 261 PASS(); | 263 PASS(); |
| 262 } | 264 } |
| OLD | NEW |