Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(146)

Side by Side Diff: packages/analyzer/test/source/analysis_options_provider_test.dart

Issue 1400473008: Roll Observatory packages and add a roll script (Closed) Base URL: git@github.com:dart-lang/observatory_pub_packages.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
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
3 // BSD-style license that can be found in the LICENSE file.
4
5 library test.source.analysis_options_provider;
6
7 import 'package:analyzer/file_system/memory_file_system.dart';
8 import 'package:analyzer/source/analysis_options_provider.dart';
9 import 'package:unittest/unittest.dart';
10 import 'package:yaml/yaml.dart';
11
12 import '../utils.dart';
13
14 main() {
15 initializeTestEnvironment();
16 group('AnalysisOptionsProvider', () {
17 setUp(() {
18 buildResourceProvider();
19 });
20 tearDown(() {
21 clearResourceProvider();
22 });
23 test('test_simple', () {
24 var optionsProvider = new AnalysisOptionsProvider();
25 Map<String, YamlNode> options =
26 optionsProvider.getOptions(resourceProvider.getFolder('/'));
27 expect(options.length, equals(1));
28 expect(options['analyzer'], isNotNull);
29 YamlMap analyzer = options['analyzer'];
30 expect(analyzer.length, equals(1));
31 expect(analyzer['ignore'], isNotNull);
32 YamlList ignore = analyzer['ignore'];
33 expect(ignore.length, equals(2));
34 expect(ignore[0], equals('ignoreme.dart'));
35 expect(ignore[1], equals('sdk_ext/**'));
36 });
37 test('test_doesnotexist', () {
38 var optionsProvider = new AnalysisOptionsProvider();
39 Map<String, YamlNode> options =
40 optionsProvider.getOptions(resourceProvider.getFolder('/empty'));
41 expect(options.length, equals(0));
42 });
43 });
44 group('AnalysisOptionsProvider', () {
45 setUp(() {
46 buildResourceProvider(true);
47 });
48 tearDown(() {
49 clearResourceProvider();
50 });
51 test('test_empty', () {
52 var optionsProvider = new AnalysisOptionsProvider();
53 Map<String, YamlNode> options =
54 optionsProvider.getOptions(resourceProvider.getFolder('/'));
55 expect(options, isNotNull);
56 });
57 });
58 group('AnalysisOptionsProvider', () {
59 setUp(() {
60 buildResourceProvider(false, true);
61 });
62 tearDown(() {
63 clearResourceProvider();
64 });
65 test('test_invalid', () {
66 var optionsProvider = new AnalysisOptionsProvider();
67 bool exceptionCaught = false;
68 try {
69 Map<String, YamlNode> options =
70 optionsProvider.getOptions(resourceProvider.getFolder('/'));
71 expect(options, isNotNull);
72 } catch (e) {
73 exceptionCaught = true;
74 }
75 expect(exceptionCaught, isTrue);
76 });
77 });
78 }
79
80 MemoryResourceProvider resourceProvider;
81
82 buildResourceProvider([bool emptyAnalysisOptions = false,
83 bool badAnalysisOptions = false]) {
84 resourceProvider = new MemoryResourceProvider();
85 resourceProvider.newFolder('/empty');
86 resourceProvider.newFolder('/tmp');
87 if (badAnalysisOptions) {
88 resourceProvider.newFile('/.analysis_options', r''':''');
89 } else if (emptyAnalysisOptions) {
90 resourceProvider.newFile('/.analysis_options', r'''''');
91 } else {
92 resourceProvider.newFile(
93 '/.analysis_options',
94 r'''
95 analyzer:
96 ignore:
97 - ignoreme.dart
98 - 'sdk_ext/**'
99 ''');
100 }
101 }
102
103 clearResourceProvider() {
104 resourceProvider = null;
105 }
106
107 emptyResourceProvider() {
108 resourceProvider = new MemoryResourceProvider();
109 }
OLDNEW
« no previous file with comments | « packages/analyzer/test/reflective_tests.dart ('k') | packages/analyzer/test/source/package_map_provider_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698