OLD | NEW |
| (Empty) |
1 library http_base.http_base_test; | |
2 | |
3 import 'package:http_base/http_base.dart'; | |
4 import 'package:unittest/unittest.dart'; | |
5 | |
6 main() { | |
7 group('headers-impl', () { | |
8 test('empty', () { | |
9 for (HeadersImpl emptyHeaders in [HeadersImpl.Empty, | |
10 new HeadersImpl({})]) { | |
11 expect(emptyHeaders.names, isEmpty); | |
12 expect(emptyHeaders['foo'], isNull); | |
13 expect(emptyHeaders.getMultiple('foo'), isNull); | |
14 } | |
15 }); | |
16 | |
17 test('multi-value', () { | |
18 var headers = new HeadersImpl({ | |
19 'Single' : 'single-value', | |
20 'Mul' : ['mul-1', 'mul-2', 'mul-3,mul-4'], | |
21 'Mul-Inline' : 'mi-1,mi-2,mi-3', | |
22 }); | |
23 | |
24 expect(headers.names, hasLength(3)); | |
25 expect(headers.names, contains('single')); | |
26 expect(headers.names, contains('mul')); | |
27 expect(headers.names, contains('mul-inline')); | |
28 | |
29 for (var key in ['Single', 'single']) { | |
30 expect(headers[key], equals('single-value')); | |
31 expect(headers.getMultiple(key), equals(['single-value'])); | |
32 } | |
33 | |
34 for (var key in ['Mul', 'mul']) { | |
35 expect(headers[key], equals('mul-1,mul-2,mul-3,mul-4')); | |
36 expect(headers.getMultiple(key), | |
37 equals(['mul-1','mul-2','mul-3','mul-4'])); | |
38 } | |
39 | |
40 for (var key in ['Mul-Inline', 'mul-inline']) { | |
41 expect(headers[key], equals('mi-1,mi-2,mi-3')); | |
42 expect(headers.getMultiple(key), equals(['mi-1','mi-2','mi-3'])); | |
43 } | |
44 }); | |
45 | |
46 test('cookie-headers', () { | |
47 var headers = new HeadersImpl({ | |
48 'Set-Cookie' : [ | |
49 'lang=en-US; Expires=Wed, 09 Jun 2021 10:18:14 GMT', | |
50 'lang=de-DE; Expires=Wed, 09 Jun 2021 10:18:14 GMT',], | |
51 'Cookie' : ['name1=value1; name2=value2', 'name3=value3'], | |
52 }); | |
53 | |
54 expect(() => headers['set-cookie'], throwsArgumentError); | |
55 expect(() => headers['cookie'], throwsArgumentError); | |
56 | |
57 expect(headers.getMultiple('set-cookie').toList(), equals([ | |
58 'lang=en-US; Expires=Wed, 09 Jun 2021 10:18:14 GMT', | |
59 'lang=de-DE; Expires=Wed, 09 Jun 2021 10:18:14 GMT'])); | |
60 | |
61 expect(headers.getMultiple('cookie').toList(), | |
62 equals(['name1=value1; name2=value2', 'name3=value3'])); | |
63 }); | |
64 | |
65 test('replace', () { | |
66 var headers = new HeadersImpl({ | |
67 'Single' : 'single-value', | |
68 'Mul' : ['mul-1', 'mul-2', 'mul-3,mul-4'], | |
69 'Mul-Inline' : 'mi-1,mi-2,mi-3', | |
70 }).replace({ | |
71 'single' : 'foo', | |
72 'mul' : null, | |
73 'mul-inline' : 'bar', | |
74 }); | |
75 | |
76 expect(headers.names, hasLength(2)); | |
77 expect(headers['single'], equals('foo')); | |
78 expect(headers['mul-inline'], equals('bar')); | |
79 }); | |
80 }); | |
81 } | |
OLD | NEW |