| 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 analyzer.test.generated.sdk_test; | 5 library analyzer.test.generated.sdk_test; |
| 6 | 6 |
| 7 import 'package:analyzer/src/generated/engine.dart'; | 7 import 'package:analyzer/src/generated/engine.dart'; |
| 8 import 'package:analyzer/src/generated/sdk.dart'; | 8 import 'package:analyzer/src/generated/sdk.dart'; |
| 9 import 'package:test/test.dart'; | 9 import 'package:test/test.dart'; |
| 10 import 'package:test_reflective_loader/test_reflective_loader.dart'; | 10 import 'package:test_reflective_loader/test_reflective_loader.dart'; |
| 11 | 11 |
| 12 import '../src/context/mock_sdk.dart'; | 12 import '../src/context/mock_sdk.dart'; |
| 13 import 'test_support.dart'; | 13 import 'test_support.dart'; |
| 14 | 14 |
| 15 main() { | 15 main() { |
| 16 defineReflectiveSuite(() { | 16 defineReflectiveSuite(() { |
| 17 defineReflectiveTests(DartSdkManagerTest); | 17 defineReflectiveTests(DartSdkManagerTest); |
| 18 defineReflectiveTests(SdkDescriptionTest); | 18 defineReflectiveTests(SdkDescriptionTest); |
| 19 }); | 19 }); |
| 20 } | 20 } |
| 21 | 21 |
| 22 @reflectiveTest | 22 @reflectiveTest |
| 23 class DartSdkManagerTest extends EngineTestCase { | 23 class DartSdkManagerTest extends EngineTestCase { |
| 24 void test_anySdk() { | 24 void test_anySdk() { |
| 25 DartSdkManager manager = | 25 DartSdkManager manager = new DartSdkManager('/a/b/c', false); |
| 26 new DartSdkManager('/a/b/c', false, _failIfCreated); | |
| 27 expect(manager.anySdk, isNull); | 26 expect(manager.anySdk, isNull); |
| 28 | 27 |
| 29 AnalysisOptions options = new AnalysisOptionsImpl(); | 28 AnalysisOptions options = new AnalysisOptionsImpl(); |
| 30 SdkDescription description = new SdkDescription(<String>['/c/d'], options); | 29 SdkDescription description = new SdkDescription(<String>['/c/d'], options); |
| 31 DartSdk sdk = new MockSdk(); | 30 DartSdk sdk = new MockSdk(); |
| 32 manager.getSdk(description, () => sdk); | 31 manager.getSdk(description, () => sdk); |
| 33 expect(manager.anySdk, same(sdk)); | 32 expect(manager.anySdk, same(sdk)); |
| 34 } | 33 } |
| 35 | 34 |
| 36 void test_getSdk_differentDescriptors() { | 35 void test_getSdk_differentDescriptors() { |
| 37 DartSdkManager manager = | 36 DartSdkManager manager = new DartSdkManager('/a/b/c', false); |
| 38 new DartSdkManager('/a/b/c', false, _failIfCreated); | |
| 39 AnalysisOptions options = new AnalysisOptionsImpl(); | 37 AnalysisOptions options = new AnalysisOptionsImpl(); |
| 40 SdkDescription description1 = new SdkDescription(<String>['/c/d'], options); | 38 SdkDescription description1 = new SdkDescription(<String>['/c/d'], options); |
| 41 DartSdk sdk1 = new MockSdk(); | 39 DartSdk sdk1 = new MockSdk(); |
| 42 DartSdk result1 = manager.getSdk(description1, () => sdk1); | 40 DartSdk result1 = manager.getSdk(description1, () => sdk1); |
| 43 expect(result1, same(sdk1)); | 41 expect(result1, same(sdk1)); |
| 44 SdkDescription description2 = new SdkDescription(<String>['/e/f'], options); | 42 SdkDescription description2 = new SdkDescription(<String>['/e/f'], options); |
| 45 DartSdk sdk2 = new MockSdk(); | 43 DartSdk sdk2 = new MockSdk(); |
| 46 DartSdk result2 = manager.getSdk(description2, () => sdk2); | 44 DartSdk result2 = manager.getSdk(description2, () => sdk2); |
| 47 expect(result2, same(sdk2)); | 45 expect(result2, same(sdk2)); |
| 48 | 46 |
| 49 manager.getSdk(description1, _failIfAbsent); | 47 manager.getSdk(description1, _failIfAbsent); |
| 50 manager.getSdk(description2, _failIfAbsent); | 48 manager.getSdk(description2, _failIfAbsent); |
| 51 } | 49 } |
| 52 | 50 |
| 53 void test_getSdk_sameDescriptor() { | 51 void test_getSdk_sameDescriptor() { |
| 54 DartSdkManager manager = | 52 DartSdkManager manager = new DartSdkManager('/a/b/c', false); |
| 55 new DartSdkManager('/a/b/c', false, _failIfCreated); | |
| 56 AnalysisOptions options = new AnalysisOptionsImpl(); | 53 AnalysisOptions options = new AnalysisOptionsImpl(); |
| 57 SdkDescription description = new SdkDescription(<String>['/c/d'], options); | 54 SdkDescription description = new SdkDescription(<String>['/c/d'], options); |
| 58 DartSdk sdk = new MockSdk(); | 55 DartSdk sdk = new MockSdk(); |
| 59 DartSdk result = manager.getSdk(description, () => sdk); | 56 DartSdk result = manager.getSdk(description, () => sdk); |
| 60 expect(result, same(sdk)); | 57 expect(result, same(sdk)); |
| 61 manager.getSdk(description, _failIfAbsent); | 58 manager.getSdk(description, _failIfAbsent); |
| 62 } | 59 } |
| 63 | 60 |
| 64 DartSdk _failIfAbsent() { | 61 DartSdk _failIfAbsent() { |
| 65 fail('Use of ifAbsent function'); | 62 fail('Use of ifAbsent function'); |
| 66 return null; | 63 return null; |
| 67 } | 64 } |
| 68 | |
| 69 DartSdk _failIfCreated(AnalysisOptions _) { | |
| 70 fail('Use of sdkCreator'); | |
| 71 return null; | |
| 72 } | |
| 73 } | 65 } |
| 74 | 66 |
| 75 @reflectiveTest | 67 @reflectiveTest |
| 76 class SdkDescriptionTest extends EngineTestCase { | 68 class SdkDescriptionTest extends EngineTestCase { |
| 77 void test_equals_differentPaths_nested() { | 69 void test_equals_differentPaths_nested() { |
| 78 AnalysisOptions options = new AnalysisOptionsImpl(); | 70 AnalysisOptions options = new AnalysisOptionsImpl(); |
| 79 SdkDescription left = new SdkDescription(<String>['/a/b/c'], options); | 71 SdkDescription left = new SdkDescription(<String>['/a/b/c'], options); |
| 80 SdkDescription right = new SdkDescription(<String>['/a/b'], options); | 72 SdkDescription right = new SdkDescription(<String>['/a/b'], options); |
| 81 expect(left == right, isFalse); | 73 expect(left == right, isFalse); |
| 82 } | 74 } |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 } | 109 } |
| 118 | 110 |
| 119 void test_equals_samePaths_sameOptions_single() { | 111 void test_equals_samePaths_sameOptions_single() { |
| 120 String path = '/a/b/c'; | 112 String path = '/a/b/c'; |
| 121 AnalysisOptions options = new AnalysisOptionsImpl(); | 113 AnalysisOptions options = new AnalysisOptionsImpl(); |
| 122 SdkDescription left = new SdkDescription(<String>[path], options); | 114 SdkDescription left = new SdkDescription(<String>[path], options); |
| 123 SdkDescription right = new SdkDescription(<String>[path], options); | 115 SdkDescription right = new SdkDescription(<String>[path], options); |
| 124 expect(left == right, isTrue); | 116 expect(left == right, isTrue); |
| 125 } | 117 } |
| 126 } | 118 } |
| OLD | NEW |