OLD | NEW |
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 import 'dart:json' as json; | 5 import 'dart:convert'; |
6 | 6 |
7 import 'package:scheduled_test/scheduled_test.dart'; | 7 import 'package:scheduled_test/scheduled_test.dart'; |
8 import 'package:scheduled_test/scheduled_server.dart'; | 8 import 'package:scheduled_test/scheduled_server.dart'; |
9 | 9 |
10 import '../descriptor.dart' as d; | 10 import '../descriptor.dart' as d; |
11 import '../test_pub.dart'; | 11 import '../test_pub.dart'; |
12 import 'utils.dart'; | 12 import 'utils.dart'; |
13 | 13 |
14 main() { | 14 main() { |
15 initConfig(); | 15 initConfig(); |
16 setUp(d.validPackage.create); | 16 setUp(d.validPackage.create); |
17 | 17 |
18 integration('archives and uploads a package', () { | 18 integration('archives and uploads a package', () { |
19 var server = new ScheduledServer(); | 19 var server = new ScheduledServer(); |
20 d.credentialsFile(server, 'access token').create(); | 20 d.credentialsFile(server, 'access token').create(); |
21 var pub = startPublish(server); | 21 var pub = startPublish(server); |
22 | 22 |
23 confirmPublish(pub); | 23 confirmPublish(pub); |
24 handleUploadForm(server); | 24 handleUploadForm(server); |
25 handleUpload(server); | 25 handleUpload(server); |
26 | 26 |
27 server.handle('GET', '/create', (request) { | 27 server.handle('GET', '/create', (request) { |
28 request.response.write(json.stringify({ | 28 request.response.write(JSON.encode({ |
29 'success': {'message': 'Package test_pkg 1.0.0 uploaded!'} | 29 'success': {'message': 'Package test_pkg 1.0.0 uploaded!'} |
30 })); | 30 })); |
31 request.response.close(); | 31 request.response.close(); |
32 }); | 32 }); |
33 | 33 |
34 expect(pub.nextLine(), completion(matches(r'Uploading\.\.\.+'))); | 34 expect(pub.nextLine(), completion(matches(r'Uploading\.\.\.+'))); |
35 | 35 |
36 expect(pub.nextLine(), | 36 expect(pub.nextLine(), |
37 completion(equals('Package test_pkg 1.0.0 uploaded!'))); | 37 completion(equals('Package test_pkg 1.0.0 uploaded!'))); |
38 pub.shouldExit(0); | 38 pub.shouldExit(0); |
39 }); | 39 }); |
40 | 40 |
41 // TODO(nweiz): Once a multipart/form-data parser in Dart exists, we should | 41 // TODO(nweiz): Once a multipart/form-data parser in Dart exists, we should |
42 // test that "pub lish" chooses the correct files to publish. | 42 // test that "pub lish" chooses the correct files to publish. |
43 } | 43 } |
OLD | NEW |