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

Unified Diff: pkg/analyzer/test/source/embedder_test.dart

Issue 1584663006: Add EmbedderSdk to EmbedderUriResolver (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: pkg/analyzer/test/source/embedder_test.dart
diff --git a/pkg/analyzer/test/source/embedder_test.dart b/pkg/analyzer/test/source/embedder_test.dart
index c1527730054abd1ead25a66d89a78b91466ee944..d210e0dedaca932f3a0d5947bb5301116d57c653 100644
--- a/pkg/analyzer/test/source/embedder_test.dart
+++ b/pkg/analyzer/test/source/embedder_test.dart
@@ -6,6 +6,7 @@ library analyzer.test.source.embedder_test;
import 'package:analyzer/file_system/memory_file_system.dart';
import 'package:analyzer/source/embedder.dart';
+import 'package:analyzer/src/generated/java_io.dart';
import 'package:unittest/unittest.dart';
import '../utils.dart';
@@ -62,6 +63,56 @@ main() {
expect(restoreUri.scheme, equals('dart'));
expect(restoreUri.path, equals('fox'));
});
+
+ test('test_EmbedderSdk_fromFileUri', () {
+ var locator = new EmbedderYamlLocator({
+ 'fox': [resourceProvider.getResource('/tmp')]
+ });
+ var resolver = new EmbedderUriResolver(locator.embedderYamls);
+ var sdk = resolver.dartSdk;
+
+ expectSource(String filePath, String dartUri) {
+ var uri = Uri.parse(filePath);
+ var source = sdk.fromFileUri(uri);
+ expect(source, isNotNull, reason: filePath);
+ expect(source.uri.toString(), dartUri);
+ expect(source.fullName, filePath.replaceAll('/', JavaFile.separator));
+ }
+
+ expectSource('/tmp/slippy.dart', 'dart:fox');
+ expectSource('\\tmp\\slippy.dart', 'dart:fox');
+ expectSource('/tmp/deep/directory/file.dart', 'dart:deep');
+ expectSource('/tmp/deep/directory/part.dart', 'dart:deep/part.dart');
+ });
+ test('test_EmbedderSdk_getSdkLibrary', () {
+ var locator = new EmbedderYamlLocator({
+ 'fox': [resourceProvider.getResource('/tmp')]
+ });
+ var resolver = new EmbedderUriResolver(locator.embedderYamls);
+ var sdk = resolver.dartSdk;
+ var lib = sdk.getSdkLibrary('dart:fox');
+ expect(lib, isNotNull);
+ expect(lib.path, '/tmp/slippy.dart');
+ expect(lib.shortName, 'fox');
+ });
+ test('test_EmbedderSdk_mapDartUri', () {
+ var locator = new EmbedderYamlLocator({
+ 'fox': [resourceProvider.getResource('/tmp')]
+ });
+ var resolver = new EmbedderUriResolver(locator.embedderYamls);
+ var sdk = resolver.dartSdk;
+
+ expectSource(String dartUri, String filePath) {
+ var source = sdk.mapDartUri(dartUri);
+ expect(source, isNotNull, reason: filePath);
+ expect(source.uri.toString(), dartUri);
+ expect(source.fullName, filePath.replaceAll('/', JavaFile.separator));
+ }
+
+ expectSource('dart:fox', '/tmp/slippy.dart');
+ expectSource('dart:deep', '/tmp/deep/directory/file.dart');
+ expectSource('dart:deep/part.dart', '/tmp/deep/directory/part.dart');
+ });
});
}
« pkg/analyzer/lib/source/embedder.dart ('K') | « pkg/analyzer/lib/source/embedder.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698