| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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.source.analysis_options_provider; | 5 library test.source.analysis_options_provider; |
| 6 | 6 |
| 7 import 'package:analyzer/file_system/memory_file_system.dart'; | 7 import 'package:analyzer/file_system/memory_file_system.dart'; |
| 8 import 'package:analyzer/source/analysis_options_provider.dart'; | 8 import 'package:analyzer/source/analysis_options_provider.dart'; |
| 9 import 'package:unittest/unittest.dart'; | 9 import 'package:unittest/unittest.dart'; |
| 10 import 'package:yaml/yaml.dart'; | 10 import 'package:yaml/yaml.dart'; |
| (...skipping 25 matching lines...) Expand all Loading... |
| 36 }); | 36 }); |
| 37 test('test_doesnotexist', () { | 37 test('test_doesnotexist', () { |
| 38 var optionsProvider = new AnalysisOptionsProvider(); | 38 var optionsProvider = new AnalysisOptionsProvider(); |
| 39 Map<String, YamlNode> options = | 39 Map<String, YamlNode> options = |
| 40 optionsProvider.getOptions(resourceProvider.getFolder('/empty')); | 40 optionsProvider.getOptions(resourceProvider.getFolder('/empty')); |
| 41 expect(options.length, equals(0)); | 41 expect(options.length, equals(0)); |
| 42 }); | 42 }); |
| 43 }); | 43 }); |
| 44 group('AnalysisOptionsProvider', () { | 44 group('AnalysisOptionsProvider', () { |
| 45 setUp(() { | 45 setUp(() { |
| 46 buildResourceProvider(true); | 46 buildResourceProvider(emptyAnalysisOptions: true); |
| 47 }); | 47 }); |
| 48 tearDown(() { | 48 tearDown(() { |
| 49 clearResourceProvider(); | 49 clearResourceProvider(); |
| 50 }); | 50 }); |
| 51 test('test_empty', () { | 51 test('test_empty', () { |
| 52 var optionsProvider = new AnalysisOptionsProvider(); | 52 var optionsProvider = new AnalysisOptionsProvider(); |
| 53 Map<String, YamlNode> options = | 53 Map<String, YamlNode> options = |
| 54 optionsProvider.getOptions(resourceProvider.getFolder('/')); | 54 optionsProvider.getOptions(resourceProvider.getFolder('/')); |
| 55 expect(options, isNotNull); | 55 expect(options, isNotNull); |
| 56 }); | 56 }); |
| 57 }); | 57 }); |
| 58 group('AnalysisOptionsProvider', () { | 58 group('AnalysisOptionsProvider', () { |
| 59 setUp(() { | 59 setUp(() { |
| 60 buildResourceProvider(false, true); | 60 buildResourceProvider(badAnalysisOptions: true); |
| 61 }); | 61 }); |
| 62 tearDown(() { | 62 tearDown(() { |
| 63 clearResourceProvider(); | 63 clearResourceProvider(); |
| 64 }); | 64 }); |
| 65 test('test_invalid', () { | 65 test('test_invalid', () { |
| 66 var optionsProvider = new AnalysisOptionsProvider(); | 66 var optionsProvider = new AnalysisOptionsProvider(); |
| 67 bool exceptionCaught = false; | 67 bool exceptionCaught = false; |
| 68 try { | 68 try { |
| 69 Map<String, YamlNode> options = | 69 Map<String, YamlNode> options = |
| 70 optionsProvider.getOptions(resourceProvider.getFolder('/')); | 70 optionsProvider.getOptions(resourceProvider.getFolder('/')); |
| 71 expect(options, isNotNull); | 71 expect(options, isNotNull); |
| 72 } catch (e) { | 72 } catch (e) { |
| 73 exceptionCaught = true; | 73 exceptionCaught = true; |
| 74 } | 74 } |
| 75 expect(exceptionCaught, isTrue); | 75 expect(exceptionCaught, isTrue); |
| 76 }); | 76 }); |
| 77 }); | 77 }); |
| 78 } | 78 } |
| 79 | 79 |
| 80 MemoryResourceProvider resourceProvider; | 80 MemoryResourceProvider resourceProvider; |
| 81 | 81 |
| 82 buildResourceProvider([bool emptyAnalysisOptions = false, | 82 buildResourceProvider({bool emptyAnalysisOptions : false, |
| 83 bool badAnalysisOptions = false]) { | 83 bool badAnalysisOptions : false}) { |
| 84 resourceProvider = new MemoryResourceProvider(); | 84 resourceProvider = new MemoryResourceProvider(); |
| 85 resourceProvider.newFolder('/empty'); | 85 resourceProvider.newFolder('/empty'); |
| 86 resourceProvider.newFolder('/tmp'); | 86 resourceProvider.newFolder('/tmp'); |
| 87 if (badAnalysisOptions) { | 87 if (badAnalysisOptions) { |
| 88 resourceProvider.newFile('/.analysis_options', r''':'''); | 88 resourceProvider.newFile('/.analysis_options', r''':'''); |
| 89 } else if (emptyAnalysisOptions) { | 89 } else if (emptyAnalysisOptions) { |
| 90 resourceProvider.newFile('/.analysis_options', r''''''); | 90 resourceProvider.newFile('/.analysis_options', r'''#empty'''); |
| 91 } else { | 91 } else { |
| 92 resourceProvider.newFile( | 92 resourceProvider.newFile( |
| 93 '/.analysis_options', | 93 '/.analysis_options', |
| 94 r''' | 94 r''' |
| 95 analyzer: | 95 analyzer: |
| 96 ignore: | 96 ignore: |
| 97 - ignoreme.dart | 97 - ignoreme.dart |
| 98 - 'sdk_ext/**' | 98 - 'sdk_ext/**' |
| 99 '''); | 99 '''); |
| 100 } | 100 } |
| 101 } | 101 } |
| 102 | 102 |
| 103 clearResourceProvider() { | 103 clearResourceProvider() { |
| 104 resourceProvider = null; | 104 resourceProvider = null; |
| 105 } | 105 } |
| 106 | 106 |
| 107 emptyResourceProvider() { | 107 emptyResourceProvider() { |
| 108 resourceProvider = new MemoryResourceProvider(); | 108 resourceProvider = new MemoryResourceProvider(); |
| 109 } | 109 } |
| OLD | NEW |