| OLD | NEW | 
|    1 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file |    1 // Copyright (c) 2012, 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 import "package:expect/expect.dart"; |    5 import "package:expect/expect.dart"; | 
|    6 import "package:path/path.dart"; |    6 import "package:path/path.dart"; | 
|    7 import "dart:async"; |    7 import "dart:async"; | 
|    8 import "dart:io"; |    8 import "dart:io"; | 
|    9 import "dart:isolate"; |    9 import "dart:isolate"; | 
|   10  |   10  | 
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   56     test(() { }); |   56     test(() { }); | 
|   57   }); |   57   }); | 
|   58 } |   58 } | 
|   59  |   59  | 
|   60 void InitializeSSL() { |   60 void InitializeSSL() { | 
|   61   var testPkcertDatabase = Platform.script.resolve('pkcert').toFilePath(); |   61   var testPkcertDatabase = Platform.script.resolve('pkcert').toFilePath(); | 
|   62   SecureSocket.initialize(database: testPkcertDatabase, |   62   SecureSocket.initialize(database: testPkcertDatabase, | 
|   63                           password: 'dartdart'); |   63                           password: 'dartdart'); | 
|   64 } |   64 } | 
|   65  |   65  | 
 |   66 void testEarlyClientClose() { | 
 |   67   HttpServer.bindSecure(HOST_NAME, | 
 |   68                         0, | 
 |   69                         certificateName: 'localhost_cert').then((server) { | 
 |   70     server.listen( | 
 |   71       (request) { | 
 |   72         String name = Platform.script.toFilePath(); | 
 |   73         new File(name).openRead().pipe(request.response) | 
 |   74             .catchError((e) { /* ignore */ }); | 
 |   75       }); | 
 |   76  | 
 |   77     var count = 0; | 
 |   78     makeRequest() { | 
 |   79       Socket.connect("127.0.0.1", server.port).then((socket) { | 
 |   80         var data = "Invalid TLS handshake"; | 
 |   81         socket.write(data); | 
 |   82         socket.close(); | 
 |   83         socket.done.then((_) { | 
 |   84           socket.destroy(); | 
 |   85           if (++count < 10) { | 
 |   86             makeRequest(); | 
 |   87           } else { | 
 |   88             server.close(); | 
 |   89           } | 
 |   90         }); | 
 |   91       }); | 
 |   92     } | 
 |   93     makeRequest(); | 
 |   94   }); | 
 |   95 } | 
 |   96  | 
|   66 void main() { |   97 void main() { | 
|   67   InitializeSSL(); |   98   InitializeSSL(); | 
|   68   testListenOn(); |   99   testListenOn(); | 
 |  100   testEarlyClientClose(); | 
|   69 } |  101 } | 
| OLD | NEW |