Upstream version 9.37.197.0
[platform/framework/web/crosswalk.git] / src / third_party / libjingle / source / talk / base / win32socketserver_unittest.cc
1 // Copyright 2009 Google Inc. All Rights Reserved.
2
3
4 #include "talk/base/gunit.h"
5 #include "talk/base/socket_unittest.h"
6 #include "talk/base/thread.h"
7 #include "talk/base/win32socketserver.h"
8
9 namespace talk_base {
10
11 // Test that Win32SocketServer::Wait works as expected.
12 TEST(Win32SocketServerTest, TestWait) {
13   Win32SocketServer server(NULL);
14   uint32 start = Time();
15   server.Wait(1000, true);
16   EXPECT_GE(TimeSince(start), 1000);
17 }
18
19 // Test that Win32Socket::Pump does not touch general Windows messages.
20 TEST(Win32SocketServerTest, TestPump) {
21   Win32SocketServer server(NULL);
22   SocketServerScope scope(&server);
23   EXPECT_EQ(TRUE, PostMessage(NULL, WM_USER, 999, 0));
24   server.Pump();
25   MSG msg;
26   EXPECT_EQ(TRUE, PeekMessage(&msg, NULL, WM_USER, 0, PM_REMOVE));
27   EXPECT_EQ(WM_USER, msg.message);
28   EXPECT_EQ(999, msg.wParam);
29 }
30
31 // Test that Win32Socket passes all the generic Socket tests.
32 class Win32SocketTest : public SocketTest {
33  protected:
34   Win32SocketTest() : server_(NULL), scope_(&server_) {}
35   Win32SocketServer server_;
36   SocketServerScope scope_;
37 };
38
39 TEST_F(Win32SocketTest, TestConnectIPv4) {
40   SocketTest::TestConnectIPv4();
41 }
42
43 TEST_F(Win32SocketTest, TestConnectIPv6) {
44   SocketTest::TestConnectIPv6();
45 }
46
47 TEST_F(Win32SocketTest, TestConnectWithDnsLookupIPv4) {
48   SocketTest::TestConnectWithDnsLookupIPv4();
49 }
50
51 TEST_F(Win32SocketTest, TestConnectWithDnsLookupIPv6) {
52   SocketTest::TestConnectWithDnsLookupIPv6();
53 }
54
55 TEST_F(Win32SocketTest, TestConnectFailIPv4) {
56   SocketTest::TestConnectFailIPv4();
57 }
58
59 TEST_F(Win32SocketTest, TestConnectFailIPv6) {
60   SocketTest::TestConnectFailIPv6();
61 }
62
63 TEST_F(Win32SocketTest, TestConnectWithDnsLookupFailIPv4) {
64   SocketTest::TestConnectWithDnsLookupFailIPv4();
65 }
66
67 TEST_F(Win32SocketTest, TestConnectWithDnsLookupFailIPv6) {
68   SocketTest::TestConnectWithDnsLookupFailIPv6();
69 }
70
71 TEST_F(Win32SocketTest, TestConnectWithClosedSocketIPv4) {
72   SocketTest::TestConnectWithClosedSocketIPv4();
73 }
74
75 TEST_F(Win32SocketTest, TestConnectWithClosedSocketIPv6) {
76   SocketTest::TestConnectWithClosedSocketIPv6();
77 }
78
79 TEST_F(Win32SocketTest, TestConnectWhileNotClosedIPv4) {
80   SocketTest::TestConnectWhileNotClosedIPv4();
81 }
82
83 TEST_F(Win32SocketTest, TestConnectWhileNotClosedIPv6) {
84   SocketTest::TestConnectWhileNotClosedIPv6();
85 }
86
87 TEST_F(Win32SocketTest, TestServerCloseDuringConnectIPv4) {
88   SocketTest::TestServerCloseDuringConnectIPv4();
89 }
90
91 TEST_F(Win32SocketTest, TestServerCloseDuringConnectIPv6) {
92   SocketTest::TestServerCloseDuringConnectIPv6();
93 }
94
95 TEST_F(Win32SocketTest, TestClientCloseDuringConnectIPv4) {
96   SocketTest::TestClientCloseDuringConnectIPv4();
97 }
98
99 TEST_F(Win32SocketTest, TestClientCloseDuringConnectIPv6) {
100   SocketTest::TestClientCloseDuringConnectIPv6();
101 }
102
103 TEST_F(Win32SocketTest, TestServerCloseIPv4) {
104   SocketTest::TestServerCloseIPv4();
105 }
106
107 TEST_F(Win32SocketTest, TestServerCloseIPv6) {
108   SocketTest::TestServerCloseIPv6();
109 }
110
111 TEST_F(Win32SocketTest, TestCloseInClosedCallbackIPv4) {
112   SocketTest::TestCloseInClosedCallbackIPv4();
113 }
114
115 TEST_F(Win32SocketTest, TestCloseInClosedCallbackIPv6) {
116   SocketTest::TestCloseInClosedCallbackIPv6();
117 }
118
119 TEST_F(Win32SocketTest, TestSocketServerWaitIPv4) {
120   SocketTest::TestSocketServerWaitIPv4();
121 }
122
123 TEST_F(Win32SocketTest, TestSocketServerWaitIPv6) {
124   SocketTest::TestSocketServerWaitIPv6();
125 }
126
127 TEST_F(Win32SocketTest, TestTcpIPv4) {
128   SocketTest::TestTcpIPv4();
129 }
130
131 TEST_F(Win32SocketTest, TestTcpIPv6) {
132   SocketTest::TestTcpIPv6();
133 }
134
135 TEST_F(Win32SocketTest, TestUdpIPv4) {
136   SocketTest::TestUdpIPv4();
137 }
138
139 TEST_F(Win32SocketTest, TestUdpIPv6) {
140   SocketTest::TestUdpIPv6();
141 }
142
143 TEST_F(Win32SocketTest, TestGetSetOptionsIPv4) {
144   SocketTest::TestGetSetOptionsIPv4();
145 }
146
147 TEST_F(Win32SocketTest, TestGetSetOptionsIPv6) {
148   SocketTest::TestGetSetOptionsIPv6();
149 }
150
151 }  // namespace talk_base