| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #ifndef PPAPI_TESTS_TEST_UDP_SOCKET_H_ | 5 #ifndef PPAPI_TESTS_TEST_UDP_SOCKET_H_ |
| 6 #define PPAPI_TESTS_TEST_UDP_SOCKET_H_ | 6 #define PPAPI_TESTS_TEST_UDP_SOCKET_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "ppapi/c/pp_stdint.h" | 10 #include "ppapi/c/pp_stdint.h" |
| 11 #include "ppapi/c/ppb_udp_socket.h" |
| 11 #include "ppapi/cpp/net_address.h" | 12 #include "ppapi/cpp/net_address.h" |
| 12 #include "ppapi/tests/test_case.h" | 13 #include "ppapi/tests/test_case.h" |
| 13 | 14 |
| 15 namespace { |
| 16 typedef int32_t (*UDPSocketSetOption)(PP_Resource udp_socket, |
| 17 PP_UDPSocket_Option name, |
| 18 struct PP_Var value, |
| 19 struct PP_CompletionCallback callback); |
| 20 } |
| 21 |
| 14 namespace pp { | 22 namespace pp { |
| 15 class UDPSocket; | 23 class UDPSocket; |
| 16 } | 24 } |
| 17 | 25 |
| 18 class TestUDPSocket: public TestCase { | 26 class TestUDPSocket: public TestCase { |
| 19 public: | 27 public: |
| 20 explicit TestUDPSocket(TestingInstance* instance); | 28 explicit TestUDPSocket(TestingInstance* instance); |
| 21 | 29 |
| 22 // TestCase implementation. | 30 // TestCase implementation. |
| 23 virtual bool Init(); | 31 virtual bool Init(); |
| 24 virtual void RunTests(const std::string& filter); | 32 virtual void RunTests(const std::string& filter); |
| 25 | 33 |
| 26 private: | 34 private: |
| 27 std::string GetLocalAddress(pp::NetAddress* address); | 35 std::string GetLocalAddress(pp::NetAddress* address); |
| 28 std::string SetBroadcastOptions(pp::UDPSocket* socket); | 36 std::string SetBroadcastOptions(pp::UDPSocket* socket); |
| 29 std::string BindUDPSocket(pp::UDPSocket* socket, | 37 std::string BindUDPSocket(pp::UDPSocket* socket, |
| 30 const pp::NetAddress& address); | 38 const pp::NetAddress& address); |
| 31 std::string LookupPortAndBindUDPSocket(pp::UDPSocket* socket, | 39 std::string LookupPortAndBindUDPSocket(pp::UDPSocket* socket, |
| 32 pp::NetAddress* address); | 40 pp::NetAddress* address); |
| 33 std::string ReadSocket(pp::UDPSocket* socket, | 41 std::string ReadSocket(pp::UDPSocket* socket, |
| 34 pp::NetAddress* address, | 42 pp::NetAddress* address, |
| 35 size_t size, | 43 size_t size, |
| 36 std::string* message); | 44 std::string* message); |
| 37 std::string PassMessage(pp::UDPSocket* target, | 45 std::string PassMessage(pp::UDPSocket* target, |
| 38 pp::UDPSocket* source, | 46 pp::UDPSocket* source, |
| 39 const pp::NetAddress& target_address, | 47 const pp::NetAddress& target_address, |
| 40 const std::string& message, | 48 const std::string& message, |
| 41 pp::NetAddress* recvfrom_address); | 49 pp::NetAddress* recvfrom_address); |
| 50 std::string SetMulticastOptions(pp::UDPSocket* socket); |
| 42 | 51 |
| 43 std::string TestReadWrite(); | 52 std::string TestReadWrite(); |
| 44 std::string TestBroadcast(); | 53 std::string TestBroadcast(); |
| 54 int32_t SetOptionValue(UDPSocketSetOption func, |
| 55 PP_Resource socket, |
| 56 PP_UDPSocket_Option option, |
| 57 const PP_Var& value); |
| 58 std::string TestSetOption_1_0(); |
| 59 std::string TestSetOption_1_1(); |
| 45 std::string TestSetOption(); | 60 std::string TestSetOption(); |
| 46 std::string TestParallelSend(); | 61 std::string TestParallelSend(); |
| 62 std::string TestMulticast(); |
| 47 | 63 |
| 48 pp::NetAddress address_; | 64 pp::NetAddress address_; |
| 65 |
| 66 const PPB_UDPSocket_1_0* socket_interface_1_0_; |
| 67 const PPB_UDPSocket_1_1* socket_interface_1_1_; |
| 49 }; | 68 }; |
| 50 | 69 |
| 51 #endif // PPAPI_TESTS_TEST_UDP_SOCKET_H_ | 70 #endif // PPAPI_TESTS_TEST_UDP_SOCKET_H_ |
| OLD | NEW |