Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(64)

Side by Side Diff: tests/standalone/io/socket_exception_test.dart

Issue 984403004: Fixed a number of bugs on RawSocket and Socket (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 // 4 //
5 // Tests socket exceptions. 5 // Tests socket exceptions.
6 6
7 import "dart:async"; 7 import "dart:async";
8 import "dart:io"; 8 import "dart:io";
9 9
10 import "package:async_helper/async_helper.dart"; 10 import "package:async_helper/async_helper.dart";
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 } 64 }
65 65
66 static void clientSocketExceptionTest() { 66 static void clientSocketExceptionTest() {
67 bool exceptionCaught = false; 67 bool exceptionCaught = false;
68 bool wrongExceptionCaught = false; 68 bool wrongExceptionCaught = false;
69 69
70 ServerSocket.bind("127.0.0.1", 0).then((server) { 70 ServerSocket.bind("127.0.0.1", 0).then((server) {
71 Expect.isNotNull(server); 71 Expect.isNotNull(server);
72 int port = server.port; 72 int port = server.port;
73 Socket.connect("127.0.0.1", port).then((client) { 73 Socket.connect("127.0.0.1", port).then((client) {
74 Expect.isNotNull(client); 74 Expect.isNotNull(client);
75 client.close(); 75 client.close();
76 // First calls for which exceptions are note expected.
76 try { 77 try {
77 client.close(); 78 client.close();
78 } on SocketException catch(ex) { 79 } on SocketException catch(ex) {
79 exceptionCaught = true; 80 exceptionCaught = true;
80 } catch (ex) { 81 } catch (ex) {
81 wrongExceptionCaught = true; 82 wrongExceptionCaught = true;
82 } 83 }
83 Expect.isFalse(exceptionCaught); 84 Expect.isFalse(exceptionCaught);
84 Expect.isFalse(wrongExceptionCaught); 85 Expect.isFalse(wrongExceptionCaught);
85 try { 86 try {
86 client.destroy(); 87 client.destroy();
87 } on SocketException catch(ex) { 88 } on SocketException catch(ex) {
88 exceptionCaught = true; 89 exceptionCaught = true;
89 } catch (ex) { 90 } catch (ex) {
90 print(ex);
91 wrongExceptionCaught = true; 91 wrongExceptionCaught = true;
92 } 92 }
93 Expect.isFalse(exceptionCaught); 93 Expect.isFalse(exceptionCaught);
94 Expect.isFalse(wrongExceptionCaught); 94 Expect.isFalse(wrongExceptionCaught);
95 try { 95 try {
96 List<int> buffer = new List<int>(10); 96 List<int> buffer = new List<int>(10);
97 client.add(buffer); 97 client.add(buffer);
98 } on StateError catch (ex) { 98 } on StateError catch (ex) {
99 exceptionCaught = true; 99 exceptionCaught = true;
100 } catch (ex) { 100 } catch (ex) {
101 wrongExceptionCaught = true; 101 wrongExceptionCaught = true;
102 } 102 }
103 Expect.isFalse(exceptionCaught); 103 Expect.isFalse(exceptionCaught);
104 Expect.isFalse(wrongExceptionCaught); 104 Expect.isFalse(wrongExceptionCaught);
105 105
106 // From here exceptions are expected.
107 exceptionCaught = false;
108 try {
109 client.port;
110 } on SocketException catch(ex) {
111 exceptionCaught = true;
112 } catch (ex) {
113 wrongExceptionCaught = true;
114 }
115 Expect.isTrue(exceptionCaught);
116 Expect.isFalse(wrongExceptionCaught);
117 exceptionCaught = false;
118 try {
119 client.remotePort;
120 } on SocketException catch(ex) {
121 exceptionCaught = true;
122 } catch (ex) {
123 wrongExceptionCaught = true;
124 }
125 Expect.isTrue(exceptionCaught);
126 Expect.isFalse(wrongExceptionCaught);
127 exceptionCaught = false;
128 try {
129 client.address;
130 } on SocketException catch(ex) {
131 exceptionCaught = true;
132 } catch (ex) {
133 wrongExceptionCaught = true;
134 }
135 Expect.isTrue(exceptionCaught);
136 Expect.isFalse(wrongExceptionCaught);
137 exceptionCaught = false;
138 try {
139 client.remoteAddress;
140 } on SocketException catch(ex) {
141 exceptionCaught = true;
142 } catch (ex) {
143 wrongExceptionCaught = true;
144 }
145 Expect.isTrue(exceptionCaught);
146 Expect.isFalse(wrongExceptionCaught);
147
106 server.close(); 148 server.close();
107 }); 149 });
108 }); 150 });
109 } 151 }
110 152
111 static void clientSocketDestroyNoErrorTest() { 153 static void clientSocketDestroyNoErrorTest() {
112 ServerSocket.bind("127.0.0.1", 0).then((server) { 154 ServerSocket.bind("127.0.0.1", 0).then((server) {
113 server.listen((socket) { 155 server.listen((socket) {
114 socket.pipe(socket); 156 socket.pipe(socket);
115 }); 157 });
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 unknownHostTest(); 281 unknownHostTest();
240 } 282 }
241 } 283 }
242 284
243 main() { 285 main() {
244 asyncStart(); 286 asyncStart();
245 SocketExceptionTest.testMain(); 287 SocketExceptionTest.testMain();
246 asyncEnd(); 288 asyncEnd();
247 } 289 }
248 290
OLDNEW
« tests/standalone/io/raw_socket_test.dart ('K') | « tests/standalone/io/raw_socket_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698