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 authorization_code_grant_test; | 5 library authorization_code_grant_test; |
6 | 6 |
7 import 'dart:async'; | 7 import 'dart:async'; |
8 import 'dart:io'; | 8 import 'dart:io'; |
9 import 'dart:json' as JSON; | 9 import 'dart:json' as JSON; |
10 import 'dart:uri'; | 10 import 'dart:uri'; |
11 | 11 |
12 import '../../unittest/lib/unittest.dart'; | 12 import '../../unittest/lib/unittest.dart'; |
13 import '../../http/lib/http.dart' as http; | 13 import '../../http/lib/http.dart' as http; |
14 import '../../http/lib/testing.dart'; | 14 import '../../http/lib/testing.dart'; |
15 import '../lib/oauth2.dart' as oauth2; | 15 import '../lib/oauth2.dart' as oauth2; |
16 import 'utils.dart'; | 16 import 'utils.dart'; |
17 | 17 |
18 final redirectUrl = new Uri.fromString('http://example.com/redirect'); | 18 final redirectUrl = Uri.parse('http://example.com/redirect'); |
19 | 19 |
20 ExpectClient client; | 20 ExpectClient client; |
21 | 21 |
22 oauth2.AuthorizationCodeGrant grant; | 22 oauth2.AuthorizationCodeGrant grant; |
23 | 23 |
24 void createGrant() { | 24 void createGrant() { |
25 client = new ExpectClient(); | 25 client = new ExpectClient(); |
26 grant = new oauth2.AuthorizationCodeGrant( | 26 grant = new oauth2.AuthorizationCodeGrant( |
27 'identifier', | 27 'identifier', |
28 'secret', | 28 'secret', |
29 new Uri.fromString('https://example.com/authorization'), | 29 Uri.parse('https://example.com/authorization'), |
30 new Uri.fromString('https://example.com/token'), | 30 Uri.parse('https://example.com/token'), |
31 httpClient: client); | 31 httpClient: client); |
32 } | 32 } |
33 | 33 |
34 void expectFutureThrows(future, predicate) { | 34 void expectFutureThrows(future, predicate) { |
35 future.catchError(expectAsync1((AsyncError e) { | 35 future.catchError(expectAsync1((AsyncError e) { |
36 expect(predicate(e.error), isTrue); | 36 expect(predicate(e.error), isTrue); |
37 })); | 37 })); |
38 } | 38 } |
39 | 39 |
40 void main() { | 40 void main() { |
(...skipping 27 matching lines...) Expand all Loading... |
68 '?response_type=code' | 68 '?response_type=code' |
69 '&client_id=identifier' | 69 '&client_id=identifier' |
70 '&redirect_uri=http%3A%2F%2Fexample.com%2Fredirect' | 70 '&redirect_uri=http%3A%2F%2Fexample.com%2Fredirect' |
71 '&state=state')); | 71 '&state=state')); |
72 }); | 72 }); |
73 | 73 |
74 test('merges with existing query parameters', () { | 74 test('merges with existing query parameters', () { |
75 grant = new oauth2.AuthorizationCodeGrant( | 75 grant = new oauth2.AuthorizationCodeGrant( |
76 'identifier', | 76 'identifier', |
77 'secret', | 77 'secret', |
78 new Uri.fromString('https://example.com/authorization?query=value'), | 78 Uri.parse('https://example.com/authorization?query=value'), |
79 new Uri.fromString('https://example.com/token'), | 79 Uri.parse('https://example.com/token'), |
80 httpClient: client); | 80 httpClient: client); |
81 | 81 |
82 var authorizationUrl = grant.getAuthorizationUrl(redirectUrl); | 82 var authorizationUrl = grant.getAuthorizationUrl(redirectUrl); |
83 expect(authorizationUrl.toString(), | 83 expect(authorizationUrl.toString(), |
84 equals('https://example.com/authorization' | 84 equals('https://example.com/authorization' |
85 '?query=value' | 85 '?query=value' |
86 '&response_type=code' | 86 '&response_type=code' |
87 '&client_id=identifier' | 87 '&client_id=identifier' |
88 '&redirect_uri=http%3A%2F%2Fexample.com%2Fredirect')); | 88 '&redirect_uri=http%3A%2F%2Fexample.com%2Fredirect')); |
89 }); | 89 }); |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
204 }); | 204 }); |
205 | 205 |
206 expect(grant.handleAuthorizationCode('auth code'), | 206 expect(grant.handleAuthorizationCode('auth code'), |
207 completion(predicate((client) { | 207 completion(predicate((client) { |
208 expect(client.credentials.accessToken, equals('access token')); | 208 expect(client.credentials.accessToken, equals('access token')); |
209 return true; | 209 return true; |
210 }))); | 210 }))); |
211 }); | 211 }); |
212 }); | 212 }); |
213 } | 213 } |
OLD | NEW |