3433d8cfc3
The tests are also now dartfmt. Bug: https://github.com/dart-lang/sdk/issues/40040 Change-Id: I8dece8097b37b70d47a5374dae2f3fadb0fc4b90 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134338 Commit-Queue: Jonas Termansen <sortie@google.com> Reviewed-by: Bob Nystrom <rnystrom@google.com>
40 lines
1017 B
Dart
40 lines
1017 B
Dart
// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
|
|
// for details. All rights reserved. Use of this source code is governed by a
|
|
// BSD-style license that can be found in the LICENSE file.
|
|
|
|
part of ServerTest;
|
|
|
|
abstract class TestingServer {
|
|
static const HOST = "127.0.0.1";
|
|
static const INIT = 0;
|
|
static const SHUTDOWN = -1;
|
|
|
|
void onConnection(Socket connection); // Abstract.
|
|
|
|
void errorHandlerServer(e, trace) {
|
|
String msg = "Server socket error $e";
|
|
if (trace != null) msg += "\nStackTrace: $trace";
|
|
Expect.fail(msg);
|
|
}
|
|
|
|
SendPort get closeSendPort => _closePort.sendPort;
|
|
|
|
Future<int> init() {
|
|
_closePort.first.then((_) {
|
|
close();
|
|
});
|
|
return ServerSocket.bind(HOST, 0).then((server) {
|
|
_server = server;
|
|
_server.listen(onConnection, onError: errorHandlerServer);
|
|
return _server.port;
|
|
});
|
|
}
|
|
|
|
void close() {
|
|
_server.close();
|
|
}
|
|
|
|
late ServerSocket _server;
|
|
final ReceivePort _closePort = new ReceivePort();
|
|
}
|