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