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 library mock_client_test; | 5 library mock_client_test; |
6 | 6 |
7 import 'dart:io'; | 7 import 'dart:io'; |
8 import 'dart:json'; | 8 import 'dart:json'; |
9 import 'dart:uri'; | 9 import 'dart:uri'; |
10 | 10 |
11 // TODO(nweiz): make these "package:" imports. | 11 // TODO(nweiz): make these "package:" imports. |
12 import '../../unittest/lib/unittest.dart'; | 12 import '../../unittest/lib/unittest.dart'; |
13 import '../lib/http.dart' as http; | 13 import '../lib/http.dart' as http; |
14 import '../lib/testing.dart'; | 14 import '../lib/testing.dart'; |
15 import '../lib/src/utils.dart'; | 15 import '../lib/src/utils.dart'; |
16 import 'utils.dart'; | 16 import 'utils.dart'; |
17 | 17 |
18 void main() { | 18 void main() { |
19 test('handles a request', () { | 19 test('handles a request', () { |
20 var client = new MockClient((request) { | 20 var client = new MockClient((request) { |
21 return new Future.immediate(new http.Response( | 21 return new Future.immediate(new http.Response( |
22 JSON.stringify(request.bodyFields), 200, | 22 JSON.stringify(request.bodyFields), 200, |
23 headers: {'content-type': 'application/json'})); | 23 request: request, headers: {'content-type': 'application/json'})); |
24 }); | 24 }); |
25 | 25 |
26 expect(client.post("http://example.com/foo", fields: { | 26 expect(client.post("http://example.com/foo", fields: { |
27 'field1': 'value1', | 27 'field1': 'value1', |
28 'field2': 'value2' | 28 'field2': 'value2' |
29 }).transform((response) => response.body), completion(parse(equals({ | 29 }).transform((response) => response.body), completion(parse(equals({ |
30 'field1': 'value1', | 30 'field1': 'value1', |
31 'field2': 'value2' | 31 'field2': 'value2' |
32 })))); | 32 })))); |
33 }); | 33 }); |
(...skipping 23 matching lines...) Expand all Loading... |
57 | 57 |
58 test('handles a request with no body', () { | 58 test('handles a request with no body', () { |
59 var client = new MockClient((request) { | 59 var client = new MockClient((request) { |
60 return new Future.immediate(new http.Response('you did it', 200)); | 60 return new Future.immediate(new http.Response('you did it', 200)); |
61 }); | 61 }); |
62 | 62 |
63 expect(client.read("http://example.com/foo"), | 63 expect(client.read("http://example.com/foo"), |
64 completion(equals('you did it'))); | 64 completion(equals('you did it'))); |
65 }); | 65 }); |
66 } | 66 } |
OLD | NEW |