OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 test.services.src.index.store.codec; | 5 library test.services.src.index.store.codec; |
6 | 6 |
7 import 'package:analysis_server/src/services/index/index.dart'; | 7 import 'package:analysis_server/src/services/index/index.dart'; |
8 import 'package:analysis_server/src/services/index/store/codec.dart'; | 8 import 'package:analysis_server/src/services/index/store/codec.dart'; |
9 import 'package:analyzer/src/generated/element.dart'; | 9 import 'package:analyzer/src/generated/element.dart'; |
10 import 'package:analyzer/src/generated/engine.dart'; | 10 import 'package:analyzer/src/generated/engine.dart'; |
11 import 'package:unittest/unittest.dart'; | 11 import 'package:unittest/unittest.dart'; |
12 | 12 |
13 import '../../../abstract_single_unit.dart'; | 13 import '../../../abstract_single_unit.dart'; |
14 import '../../../mocks.dart'; | 14 import '../../../mocks.dart'; |
15 import '../../../reflective_tests.dart'; | 15 import '../../../reflective_tests.dart'; |
16 | 16 |
17 | 17 |
18 main() { | 18 main() { |
19 groupSep = ' | '; | 19 groupSep = ' | '; |
20 runReflectiveTests(_ContextCodecTest); | 20 runReflectiveTests(_ContextCodecTest); |
21 runReflectiveTests(_ElementCodecTest); | 21 runReflectiveTests(_ElementCodecTest); |
22 runReflectiveTests(_RelationshipCodecTest); | 22 runReflectiveTests(_RelationshipCodecTest); |
23 runReflectiveTests(_StringCodecTest); | 23 runReflectiveTests(_StringCodecTest); |
24 } | 24 } |
25 | 25 |
26 | 26 |
27 @ReflectiveTestCase() | 27 @reflectiveTest |
28 class _ContextCodecTest { | 28 class _ContextCodecTest { |
29 ContextCodec codec = new ContextCodec(); | 29 ContextCodec codec = new ContextCodec(); |
30 | 30 |
31 void test_encode_decode() { | 31 void test_encode_decode() { |
32 AnalysisContext contextA = new MockAnalysisContext('contextA'); | 32 AnalysisContext contextA = new MockAnalysisContext('contextA'); |
33 AnalysisContext contextB = new MockAnalysisContext('contextB'); | 33 AnalysisContext contextB = new MockAnalysisContext('contextB'); |
34 int idA = codec.encode(contextA); | 34 int idA = codec.encode(contextA); |
35 int idB = codec.encode(contextB); | 35 int idB = codec.encode(contextB); |
36 expect(idA, codec.encode(contextA)); | 36 expect(idA, codec.encode(contextA)); |
37 expect(idB, codec.encode(contextB)); | 37 expect(idB, codec.encode(contextB)); |
(...skipping 18 matching lines...) Expand all Loading... |
56 AnalysisContext context = new MockAnalysisContext('context'); | 56 AnalysisContext context = new MockAnalysisContext('context'); |
57 // encode | 57 // encode |
58 int id = codec.encode(context); | 58 int id = codec.encode(context); |
59 expect(id, 1); | 59 expect(id, 1); |
60 expect(codec.decode(id), context); | 60 expect(codec.decode(id), context); |
61 } | 61 } |
62 } | 62 } |
63 } | 63 } |
64 | 64 |
65 | 65 |
66 @ReflectiveTestCase() | 66 @reflectiveTest |
67 class _ElementCodecTest extends AbstractSingleUnitTest { | 67 class _ElementCodecTest extends AbstractSingleUnitTest { |
68 ElementCodec codec; | 68 ElementCodec codec; |
69 AnalysisContext context = new MockAnalysisContext('context'); | 69 AnalysisContext context = new MockAnalysisContext('context'); |
70 StringCodec stringCodec = new StringCodec(); | 70 StringCodec stringCodec = new StringCodec(); |
71 | 71 |
72 void setUp() { | 72 void setUp() { |
73 super.setUp(); | 73 super.setUp(); |
74 codec = new ElementCodec(stringCodec); | 74 codec = new ElementCodec(stringCodec); |
75 } | 75 } |
76 | 76 |
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
194 expect(codec.decode(context, id), element); | 194 expect(codec.decode(context, id), element); |
195 // check strings | 195 // check strings |
196 expect(stringCodec.nameToIndex, hasLength(3)); | 196 expect(stringCodec.nameToIndex, hasLength(3)); |
197 expect(stringCodec.nameToIndex, containsPair('file:///test.dart', 0)); | 197 expect(stringCodec.nameToIndex, containsPair('file:///test.dart', 0)); |
198 expect(stringCodec.nameToIndex, containsPair('main', 1)); | 198 expect(stringCodec.nameToIndex, containsPair('main', 1)); |
199 expect(stringCodec.nameToIndex, containsPair('foo', 2)); | 199 expect(stringCodec.nameToIndex, containsPair('foo', 2)); |
200 } | 200 } |
201 } | 201 } |
202 | 202 |
203 | 203 |
204 @ReflectiveTestCase() | 204 @reflectiveTest |
205 class _RelationshipCodecTest { | 205 class _RelationshipCodecTest { |
206 StringCodec stringCodec = new StringCodec(); | 206 StringCodec stringCodec = new StringCodec(); |
207 RelationshipCodec codec; | 207 RelationshipCodec codec; |
208 | 208 |
209 void setUp() { | 209 void setUp() { |
210 codec = new RelationshipCodec(stringCodec); | 210 codec = new RelationshipCodec(stringCodec); |
211 } | 211 } |
212 | 212 |
213 void test_all() { | 213 void test_all() { |
214 Relationship relationship = Relationship.getRelationship('my-relationship'); | 214 Relationship relationship = Relationship.getRelationship('my-relationship'); |
215 int id = codec.encode(relationship); | 215 int id = codec.encode(relationship); |
216 expect(codec.decode(id), relationship); | 216 expect(codec.decode(id), relationship); |
217 } | 217 } |
218 } | 218 } |
219 | 219 |
220 | 220 |
221 @ReflectiveTestCase() | 221 @reflectiveTest |
222 class _StringCodecTest { | 222 class _StringCodecTest { |
223 StringCodec codec = new StringCodec(); | 223 StringCodec codec = new StringCodec(); |
224 | 224 |
225 void test_all() { | 225 void test_all() { |
226 int idA = codec.encode('aaa'); | 226 int idA = codec.encode('aaa'); |
227 int idB = codec.encode('bbb'); | 227 int idB = codec.encode('bbb'); |
228 expect(codec.decode(idA), 'aaa'); | 228 expect(codec.decode(idA), 'aaa'); |
229 expect(codec.decode(idB), 'bbb'); | 229 expect(codec.decode(idB), 'bbb'); |
230 } | 230 } |
231 } | 231 } |
OLD | NEW |