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

Side by Side Diff: packages/analyzer/test/src/source/source_resource_test.dart

Issue 2990843002: Removed fixed dependencies (Closed)
Patch Set: Created 3 years, 4 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) 2016, 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 analyzer.test.src.source.source_resource_test;
6
7 import 'package:analyzer/file_system/file_system.dart';
8 import 'package:analyzer/file_system/memory_file_system.dart';
9 import 'package:analyzer/file_system/physical_file_system.dart';
10 import 'package:analyzer/src/generated/java_engine_io.dart';
11 import 'package:analyzer/src/generated/sdk.dart';
12 import 'package:analyzer/src/generated/source.dart';
13 import 'package:analyzer/src/generated/utilities_dart.dart';
14 import 'package:analyzer/src/source/source_resource.dart';
15 import 'package:test_reflective_loader/test_reflective_loader.dart';
16 import 'package:unittest/unittest.dart';
17
18 import '../../utils.dart';
19 import '../context/mock_sdk.dart';
20
21 main() {
22 initializeTestEnvironment();
23 defineReflectiveTests(FileSourceTest);
24 }
25
26 @reflectiveTest
27 class FileSourceTest {
28 MemoryResourceProvider resourceProvider = new MemoryResourceProvider();
29
30 void test_equals_false_differentFiles() {
31 File file1 = resourceProvider.getFile("/does/not/exist1.dart");
32 File file2 = resourceProvider.getFile("/does/not/exist2.dart");
33 FileSource source1 = new FileSource(file1);
34 FileSource source2 = new FileSource(file2);
35 expect(source1 == source2, isFalse);
36 }
37
38 void test_equals_false_null() {
39 File file = resourceProvider.getFile("/does/not/exist1.dart");
40 FileSource source1 = new FileSource(file);
41 expect(source1 == null, isFalse);
42 }
43
44 void test_equals_true() {
45 File file1 = resourceProvider.getFile("/does/not/exist.dart");
46 File file2 = resourceProvider.getFile("/does/not/exist.dart");
47 FileSource source1 = new FileSource(file1);
48 FileSource source2 = new FileSource(file2);
49 expect(source1 == source2, isTrue);
50 }
51
52 void test_fileReadMode() {
53 expect(FileSource.fileReadMode('a'), 'a');
54 expect(FileSource.fileReadMode('a\n'), 'a\n');
55 expect(FileSource.fileReadMode('ab'), 'ab');
56 expect(FileSource.fileReadMode('abc'), 'abc');
57 expect(FileSource.fileReadMode('a\nb'), 'a\nb');
58 expect(FileSource.fileReadMode('a\rb'), 'a\rb');
59 expect(FileSource.fileReadMode('a\r\nb'), 'a\r\nb');
60 }
61
62 void test_fileReadMode_changed() {
63 FileSource.fileReadMode = (String s) => s + 'xyz';
64 expect(FileSource.fileReadMode('a'), 'axyz');
65 expect(FileSource.fileReadMode('a\n'), 'a\nxyz');
66 expect(FileSource.fileReadMode('ab'), 'abxyz');
67 expect(FileSource.fileReadMode('abc'), 'abcxyz');
68 FileSource.fileReadMode = (String s) => s;
69 }
70
71 void test_fileReadMode_normalize_eol_always() {
72 FileSource.fileReadMode = PhysicalResourceProvider.NORMALIZE_EOL_ALWAYS;
73 expect(FileSource.fileReadMode('a'), 'a');
74
75 // '\n' -> '\n' as first, last and only character
76 expect(FileSource.fileReadMode('\n'), '\n');
77 expect(FileSource.fileReadMode('a\n'), 'a\n');
78 expect(FileSource.fileReadMode('\na'), '\na');
79
80 // '\r\n' -> '\n' as first, last and only character
81 expect(FileSource.fileReadMode('\r\n'), '\n');
82 expect(FileSource.fileReadMode('a\r\n'), 'a\n');
83 expect(FileSource.fileReadMode('\r\na'), '\na');
84
85 // '\r' -> '\n' as first, last and only character
86 expect(FileSource.fileReadMode('\r'), '\n');
87 expect(FileSource.fileReadMode('a\r'), 'a\n');
88 expect(FileSource.fileReadMode('\ra'), '\na');
89
90 FileSource.fileReadMode = (String s) => s;
91 }
92
93 void test_getEncoding() {
94 SourceFactory factory =
95 new SourceFactory([new ResourceUriResolver(resourceProvider)]);
96 String fullPath = "/does/not/exist.dart";
97 File file = resourceProvider.getFile(fullPath);
98 FileSource source = new FileSource(file);
99 expect(factory.fromEncoding(source.encoding), source);
100 }
101
102 void test_getFullName() {
103 String fullPath = "/does/not/exist.dart";
104 File file = resourceProvider.getFile(fullPath);
105 FileSource source = new FileSource(file);
106 expect(source.fullName, file.path);
107 }
108
109 void test_getShortName() {
110 File file = resourceProvider.getFile("/does/not/exist.dart");
111 FileSource source = new FileSource(file);
112 expect(source.shortName, "exist.dart");
113 }
114
115 void test_hashCode() {
116 File file1 = resourceProvider.getFile("/does/not/exist.dart");
117 File file2 = resourceProvider.getFile("/does/not/exist.dart");
118 FileSource source1 = new FileSource(file1);
119 FileSource source2 = new FileSource(file2);
120 expect(source2.hashCode, source1.hashCode);
121 }
122
123 void test_isInSystemLibrary_contagious() {
124 DartSdk sdk = _createSdk();
125 UriResolver resolver = new DartUriResolver(sdk);
126 SourceFactory factory = new SourceFactory([resolver]);
127 // resolve dart:core
128 Source result = resolver.resolveAbsolute(Uri.parse("dart:async"));
129 expect(result, isNotNull);
130 expect(result.isInSystemLibrary, isTrue);
131 // system libraries reference only other system libraries
132 Source partSource = factory.resolveUri(result, "stream.dart");
133 expect(partSource, isNotNull);
134 expect(partSource.isInSystemLibrary, isTrue);
135 }
136
137 void test_isInSystemLibrary_false() {
138 File file = resourceProvider.getFile("/does/not/exist.dart");
139 FileSource source = new FileSource(file);
140 expect(source, isNotNull);
141 expect(source.fullName, file.path);
142 expect(source.isInSystemLibrary, isFalse);
143 }
144
145 void test_issue14500() {
146 // see https://code.google.com/p/dart/issues/detail?id=14500
147 FileSource source =
148 new FileSource(resourceProvider.getFile("/some/packages/foo:bar.dart"));
149 expect(source, isNotNull);
150 expect(source.exists(), isFalse);
151 }
152
153 void test_resolveRelative_file_fileName() {
154 if (OSUtilities.isWindows()) {
155 // On Windows, the URI that is produced includes a drive letter,
156 // which I believe is not consistent across all machines that might run
157 // this test.
158 return;
159 }
160 File file = resourceProvider.getFile("/a/b/test.dart");
161 FileSource source = new FileSource(file);
162 expect(source, isNotNull);
163 Uri relative = resolveRelativeUri(source.uri, Uri.parse("lib.dart"));
164 expect(relative, isNotNull);
165 expect(relative.toString(), "file:///a/b/lib.dart");
166 }
167
168 void test_resolveRelative_file_filePath() {
169 if (OSUtilities.isWindows()) {
170 // On Windows, the URI that is produced includes a drive letter,
171 // which I believe is not consistent across all machines that might run
172 // this test.
173 return;
174 }
175 File file = resourceProvider.getFile("/a/b/test.dart");
176 FileSource source = new FileSource(file);
177 expect(source, isNotNull);
178 Uri relative = resolveRelativeUri(source.uri, Uri.parse("c/lib.dart"));
179 expect(relative, isNotNull);
180 expect(relative.toString(), "file:///a/b/c/lib.dart");
181 }
182
183 void test_resolveRelative_file_filePathWithParent() {
184 if (OSUtilities.isWindows()) {
185 // On Windows, the URI that is produced includes a drive letter, which I
186 // believe is not consistent across all machines that might run this test.
187 return;
188 }
189 File file = resourceProvider.getFile("/a/b/test.dart");
190 FileSource source = new FileSource(file);
191 expect(source, isNotNull);
192 Uri relative = resolveRelativeUri(source.uri, Uri.parse("../c/lib.dart"));
193 expect(relative, isNotNull);
194 expect(relative.toString(), "file:///a/c/lib.dart");
195 }
196
197 void test_system() {
198 File file = resourceProvider.getFile("/does/not/exist.dart");
199 FileSource source = new FileSource(file, Uri.parse("dart:core"));
200 expect(source, isNotNull);
201 expect(source.fullName, file.path);
202 expect(source.isInSystemLibrary, isTrue);
203 }
204
205 DartSdk _createSdk() {
206 return new MockSdk(resourceProvider: resourceProvider);
207 }
208 }
OLDNEW
« no previous file with comments | « packages/analyzer/test/src/plugin/plugin_config_test.dart ('k') | packages/analyzer/test/src/source/test_all.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698