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

Side by Side Diff: utils/tests/pub/oauth2/with_an_expired_credentials_refreshes_and_saves_test.dart

Issue 14297021: Move pub into sdk/lib/_internal. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Disallow package: imports of pub. Created 7 years, 8 months 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 | Annotate | Revision Log
OLDNEW
(Empty)
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
3 // BSD-style license that can be found in the LICENSE file.
4
5 import 'dart:io';
6 import 'dart:json' as json;
7
8 import 'package:scheduled_test/scheduled_test.dart';
9 import 'package:scheduled_test/scheduled_server.dart';
10
11 import '../../../pub/io.dart';
12 import '../../../pub/utils.dart';
13 import '../descriptor.dart' as d;
14 import '../test_pub.dart';
15 import 'utils.dart';
16
17 main() {
18 initConfig();
19 integration('with an expired credentials.json, refreshes and saves the '
20 'refreshed access token to credentials.json', () {
21 d.validPackage.create();
22
23 var server = new ScheduledServer();
24 d.credentialsFile(server, 'access token',
25 refreshToken: 'refresh token',
26 expiration: new DateTime.now().subtract(new Duration(hours: 1)))
27 .create();
28
29 var pub = startPublish(server);
30 confirmPublish(pub);
31
32 server.handle('POST', '/token', (request) {
33 return new ByteStream(request).toBytes().then((bytes) {
34 var body = new String.fromCharCodes(bytes);
35 expect(body, matches(
36 new RegExp(r'(^|&)refresh_token=refresh\+token(&|$)')));
37
38 request.response.headers.contentType =
39 new ContentType("application", "json");
40 request.response.write(json.stringify({
41 "access_token": "new access token",
42 "token_type": "bearer"
43 }));
44 request.response.close();
45 });
46 });
47
48 server.handle('GET', '/packages/versions/new.json', (request) {
49 expect(request.headers.value('authorization'),
50 equals('Bearer new access token'));
51
52 request.response.close();
53 });
54
55 pub.shouldExit();
56
57 d.credentialsFile(server, 'new access token', refreshToken: 'refresh token')
58 .validate();
59 });
60 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698