| 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 pub_lish_test; | 5 library pub_lish_test; |
| 6 | 6 |
| 7 import 'dart:io'; | 7 import 'dart:io'; |
| 8 import 'dart:json'; | 8 import 'dart:json'; |
| 9 | 9 |
| 10 import 'test_pub.dart'; | 10 import 'test_pub.dart'; |
| 11 import '../../../pkg/unittest/lib/unittest.dart'; | 11 import '../../../pkg/unittest/lib/unittest.dart'; |
| 12 import '../../pub/io.dart'; | 12 import '../../pub/io.dart'; |
| 13 | 13 |
| 14 void handleUploadForm(ScheduledServer server, [Map body]) { | 14 void handleUploadForm(ScheduledServer server, [Map body]) { |
| 15 server.handle('GET', '/packages/versions/new.json', (request, response) { | 15 server.handle('GET', '/packages/versions/new.json', (request, response) { |
| 16 return server.url.transform((url) { | 16 return server.url.then((url) { |
| 17 expect(request.headers.value('authorization'), | 17 expect(request.headers.value('authorization'), |
| 18 equals('Bearer access token')); | 18 equals('Bearer access token')); |
| 19 | 19 |
| 20 if (body == null) { | 20 if (body == null) { |
| 21 body = { | 21 body = { |
| 22 'url': url.resolve('/upload').toString(), | 22 'url': url.resolve('/upload').toString(), |
| 23 'fields': { | 23 'fields': { |
| 24 'field1': 'value1', | 24 'field1': 'value1', |
| 25 'field2': 'value2' | 25 'field2': 'value2' |
| 26 } | 26 } |
| 27 }; | 27 }; |
| 28 } | 28 } |
| 29 | 29 |
| 30 response.headers.contentType = new ContentType("application", "json"); | 30 response.headers.contentType = new ContentType("application", "json"); |
| 31 response.outputStream.writeString(JSON.stringify(body)); | 31 response.outputStream.writeString(JSON.stringify(body)); |
| 32 response.outputStream.close(); | 32 response.outputStream.close(); |
| 33 }); | 33 }); |
| 34 }); | 34 }); |
| 35 } | 35 } |
| 36 | 36 |
| 37 void handleUpload(ScheduledServer server) { | 37 void handleUpload(ScheduledServer server) { |
| 38 server.handle('POST', '/upload', (request, response) { | 38 server.handle('POST', '/upload', (request, response) { |
| 39 // TODO(nweiz): Once a multipart/form-data parser in Dart exists, validate | 39 // TODO(nweiz): Once a multipart/form-data parser in Dart exists, validate |
| 40 // that the request body is correctly formatted. See issue 6952. | 40 // that the request body is correctly formatted. See issue 6952. |
| 41 return server.url.transform((url) { | 41 return server.url.then((url) { |
| 42 response.statusCode = 302; | 42 response.statusCode = 302; |
| 43 response.headers.set('location', url.resolve('/create').toString()); | 43 response.headers.set('location', url.resolve('/create').toString()); |
| 44 response.outputStream.close(); | 44 response.outputStream.close(); |
| 45 }); | 45 }); |
| 46 }); | 46 }); |
| 47 } | 47 } |
| 48 | 48 |
| 49 main() { | 49 main() { |
| 50 setUp(() => normalPackage.scheduleCreate()); | 50 setUp(() => normalPackage.scheduleCreate()); |
| 51 | 51 |
| (...skipping 345 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 397 response.outputStream.close(); | 397 response.outputStream.close(); |
| 398 }); | 398 }); |
| 399 | 399 |
| 400 expectLater(pub.nextErrLine(), equals('Invalid server response:')); | 400 expectLater(pub.nextErrLine(), equals('Invalid server response:')); |
| 401 expectLater(pub.nextErrLine(), equals(JSON.stringify(body))); | 401 expectLater(pub.nextErrLine(), equals(JSON.stringify(body))); |
| 402 pub.shouldExit(1); | 402 pub.shouldExit(1); |
| 403 | 403 |
| 404 run(); | 404 run(); |
| 405 }); | 405 }); |
| 406 } | 406 } |
| OLD | NEW |