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

Side by Side Diff: test/util/one_off_handler_test.dart

Issue 2515303002: Add expectAsyncX and expectAsyncUntilX methods, and deprecate the old methods. (Closed)
Patch Set: Mark parameter types as Object. Created 4 years, 1 month 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
« no previous file with comments | « test/util/forkable_stream_test.dart ('k') | test/util/path_handler_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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 'dart:async'; 5 import 'dart:async';
6 6
7 import 'package:shelf/shelf.dart' as shelf; 7 import 'package:shelf/shelf.dart' as shelf;
8 import 'package:test/src/util/one_off_handler.dart'; 8 import 'package:test/src/util/one_off_handler.dart';
9 import 'package:test/test.dart'; 9 import 'package:test/test.dart';
10 10
11 void main() { 11 void main() {
12 var handler; 12 var handler;
13 setUp(() => handler = new OneOffHandler()); 13 setUp(() => handler = new OneOffHandler());
14 14
15 _handle(request) => new Future.sync(() => handler.handler(request)); 15 _handle(request) => new Future.sync(() => handler.handler(request));
16 16
17 test("returns a 404 for a root URL", () async { 17 test("returns a 404 for a root URL", () async {
18 var request = new shelf.Request("GET", Uri.parse("http://localhost/")); 18 var request = new shelf.Request("GET", Uri.parse("http://localhost/"));
19 expect((await _handle(request)).statusCode, equals(404)); 19 expect((await _handle(request)).statusCode, equals(404));
20 }); 20 });
21 21
22 test("returns a 404 for an unhandled URL", () async { 22 test("returns a 404 for an unhandled URL", () async {
23 var request = new shelf.Request("GET", Uri.parse("http://localhost/1")); 23 var request = new shelf.Request("GET", Uri.parse("http://localhost/1"));
24 expect((await _handle(request)).statusCode, equals(404)); 24 expect((await _handle(request)).statusCode, equals(404));
25 }); 25 });
26 26
27 test("passes a request to a handler only once", () async { 27 test("passes a request to a handler only once", () async {
28 var path = handler.create(expectAsync((request) { 28 var path = handler.create(expectAsync1((request) {
29 expect(request.method, equals("GET")); 29 expect(request.method, equals("GET"));
30 return new shelf.Response.ok("good job!"); 30 return new shelf.Response.ok("good job!");
31 })); 31 }));
32 32
33 var request = new shelf.Request("GET", Uri.parse("http://localhost/$path")); 33 var request = new shelf.Request("GET", Uri.parse("http://localhost/$path"));
34 var response = await _handle(request); 34 var response = await _handle(request);
35 expect(response.statusCode, equals(200)); 35 expect(response.statusCode, equals(200));
36 expect(response.readAsString(), completion(equals("good job!"))); 36 expect(response.readAsString(), completion(equals("good job!")));
37 37
38 request = new shelf.Request("GET", Uri.parse("http://localhost/$path")); 38 request = new shelf.Request("GET", Uri.parse("http://localhost/$path"));
39 expect((await _handle(request)).statusCode, equals(404)); 39 expect((await _handle(request)).statusCode, equals(404));
40 }); 40 });
41 41
42 test("passes requests to the correct handlers", () async { 42 test("passes requests to the correct handlers", () async {
43 var path1 = handler.create(expectAsync((request) { 43 var path1 = handler.create(expectAsync1((request) {
44 expect(request.method, equals("GET")); 44 expect(request.method, equals("GET"));
45 return new shelf.Response.ok("one"); 45 return new shelf.Response.ok("one");
46 })); 46 }));
47 47
48 var path2 = handler.create(expectAsync((request) { 48 var path2 = handler.create(expectAsync1((request) {
49 expect(request.method, equals("GET")); 49 expect(request.method, equals("GET"));
50 return new shelf.Response.ok("two"); 50 return new shelf.Response.ok("two");
51 })); 51 }));
52 52
53 var path3 = handler.create(expectAsync((request) { 53 var path3 = handler.create(expectAsync1((request) {
54 expect(request.method, equals("GET")); 54 expect(request.method, equals("GET"));
55 return new shelf.Response.ok("three"); 55 return new shelf.Response.ok("three");
56 })); 56 }));
57 57
58 var request = new shelf.Request( 58 var request = new shelf.Request(
59 "GET", Uri.parse("http://localhost/$path2")); 59 "GET", Uri.parse("http://localhost/$path2"));
60 var response = await _handle(request); 60 var response = await _handle(request);
61 expect(response.statusCode, equals(200)); 61 expect(response.statusCode, equals(200));
62 expect(response.readAsString(), completion(equals("two"))); 62 expect(response.readAsString(), completion(equals("two")));
63 63
64 request = new shelf.Request("GET", Uri.parse("http://localhost/$path1")); 64 request = new shelf.Request("GET", Uri.parse("http://localhost/$path1"));
65 response = await _handle(request); 65 response = await _handle(request);
66 expect(response.statusCode, equals(200)); 66 expect(response.statusCode, equals(200));
67 expect(response.readAsString(), completion(equals("one"))); 67 expect(response.readAsString(), completion(equals("one")));
68 68
69 request = new shelf.Request("GET", Uri.parse("http://localhost/$path3")); 69 request = new shelf.Request("GET", Uri.parse("http://localhost/$path3"));
70 response = await _handle(request); 70 response = await _handle(request);
71 expect(response.statusCode, equals(200)); 71 expect(response.statusCode, equals(200));
72 expect(response.readAsString(), completion(equals("three"))); 72 expect(response.readAsString(), completion(equals("three")));
73 }); 73 });
74 } 74 }
OLDNEW
« no previous file with comments | « test/util/forkable_stream_test.dart ('k') | test/util/path_handler_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698