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

Unified Diff: pkg/analyzer/test/src/task/html_test.dart

Issue 1193143002: Next steps toward HTML support (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Address comments Created 5 years, 6 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
« no previous file with comments | « pkg/analyzer/test/src/task/dart_test.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analyzer/test/src/task/html_test.dart
diff --git a/pkg/analyzer/test/src/task/html_test.dart b/pkg/analyzer/test/src/task/html_test.dart
index 89334103843d60cd473696ba0df511b031ee9219..e3413b7a49c9b19f3cec6f6c50c9a146c3e7d929 100644
--- a/pkg/analyzer/test/src/task/html_test.dart
+++ b/pkg/analyzer/test/src/task/html_test.dart
@@ -15,24 +15,23 @@ import '../context/abstract_context.dart';
main() {
groupSep = ' | ';
+ runReflectiveTests(DartScriptsTaskTest);
runReflectiveTests(HtmlErrorsTaskTest);
runReflectiveTests(ParseHtmlTaskTest);
- runReflectiveTests(ReferencedLibrariesTaskTest);
}
@reflectiveTest
-class HtmlErrorsTaskTest extends AbstractContextTest {
+class DartScriptsTaskTest extends AbstractContextTest {
test_buildInputs() {
Source source = newSource('/test.html');
- Map<String, TaskInput> inputs = HtmlErrorsTask.buildInputs(source);
+ Map<String, TaskInput> inputs = DartScriptsTask.buildInputs(source);
expect(inputs, isNotNull);
- expect(
- inputs.keys, unorderedEquals([HtmlErrorsTask.DOCUMENT_ERRORS_INPUT]));
+ expect(inputs.keys, unorderedEquals([DartScriptsTask.DOCUMENT_INPUT]));
}
test_constructor() {
Source source = newSource('/test.html');
- HtmlErrorsTask task = new HtmlErrorsTask(context, source);
+ DartScriptsTask task = new DartScriptsTask(context, source);
expect(task, isNotNull);
expect(task.context, context);
expect(task.target, source);
@@ -40,7 +39,7 @@ class HtmlErrorsTaskTest extends AbstractContextTest {
test_createTask() {
Source source = newSource('/test.html');
- HtmlErrorsTask task = HtmlErrorsTask.createTask(context, source);
+ DartScriptsTask task = DartScriptsTask.createTask(context, source);
expect(task, isNotNull);
expect(task.context, context);
expect(task.target, source);
@@ -48,16 +47,87 @@ class HtmlErrorsTaskTest extends AbstractContextTest {
test_description() {
Source source = newSource('/test.html');
- HtmlErrorsTask task = new HtmlErrorsTask(null, source);
+ DartScriptsTask task = new DartScriptsTask(null, source);
expect(task.description, isNotNull);
}
test_descriptor() {
- TaskDescriptor descriptor = HtmlErrorsTask.DESCRIPTOR;
+ TaskDescriptor descriptor = DartScriptsTask.DESCRIPTOR;
expect(descriptor, isNotNull);
}
- test_perform() {
+ void test_perform_embedded_source() {
+ String content = r'''
+ void buttonPressed() {}
+ ''';
+ AnalysisTarget target = newSource('/test.html', '''
+<!DOCTYPE html>
+<html>
+<head>
+ <script type='application/dart'>$content</script>
+</head>
+<body>
+</body>
+</html>''');
+ computeResult(target, REFERENCED_LIBRARIES);
+ expect(task, new isInstanceOf<DartScriptsTask>());
+ expect(outputs[REFERENCED_LIBRARIES], hasLength(0));
+ expect(outputs[DART_SCRIPTS], hasLength(1));
+ DartScript script = outputs[DART_SCRIPTS][0];
+ expect(script.fragments, hasLength(1));
+ ScriptFragment fragment = script.fragments[0];
+ expect(fragment.content, content);
+ }
+
+ void test_perform_empty_source_reference() {
+ AnalysisTarget target = newSource('/test.html', r'''
+<!DOCTYPE html>
+<html>
+<head>
+ <script type='application/dart' src=''/>
+</head>
+<body>
+</body>
+</html>''');
+ computeResult(target, REFERENCED_LIBRARIES);
+ expect(task, new isInstanceOf<DartScriptsTask>());
+ expect(outputs[REFERENCED_LIBRARIES], hasLength(0));
+ expect(outputs[DART_SCRIPTS], hasLength(0));
+ }
+
+ void test_perform_invalid_source_reference() {
+ AnalysisTarget target = newSource('/test.html', r'''
+<!DOCTYPE html>
+<html>
+<head>
+ <script type='application/dart' src='an;invalid:[]uri'/>
+</head>
+<body>
+</body>
+</html>''');
+ computeResult(target, REFERENCED_LIBRARIES);
+ expect(task, new isInstanceOf<DartScriptsTask>());
+ expect(outputs[REFERENCED_LIBRARIES], hasLength(0));
+ expect(outputs[DART_SCRIPTS], hasLength(0));
+ }
+
+ void test_perform_non_existing_source_reference() {
+ AnalysisTarget target = newSource('/test.html', r'''
+<!DOCTYPE html>
+<html>
+<head>
+ <script type='application/dart' src='does/not/exist.dart'/>
+</head>
+<body>
+</body>
+</html>''');
+ computeResult(target, REFERENCED_LIBRARIES);
+ expect(task, new isInstanceOf<DartScriptsTask>());
+ expect(outputs[REFERENCED_LIBRARIES], hasLength(1));
+ expect(outputs[DART_SCRIPTS], hasLength(0));
+ }
+
+ test_perform_none() {
AnalysisTarget target = newSource('/test.html', r'''
<!DOCTYPE html>
<html>
@@ -69,24 +139,44 @@ class HtmlErrorsTaskTest extends AbstractContextTest {
</body>
</html>
''');
- computeResult(target, HTML_ERRORS);
- expect(task, new isInstanceOf<HtmlErrorsTask>());
- expect(outputs[HTML_ERRORS], isEmpty);
+ computeResult(target, REFERENCED_LIBRARIES);
+ expect(task, new isInstanceOf<DartScriptsTask>());
+ expect(outputs[REFERENCED_LIBRARIES], hasLength(0));
+ expect(outputs[DART_SCRIPTS], hasLength(0));
+ }
+
+ void test_perform_referenced_source() {
+ AnalysisTarget target = newSource('/test.html', r'''
+<!DOCTYPE html>
+<html>
+<head>
+ <script type='application/dart' src='test.dart'/>
+</head>
+<body>
+</body>
+</html>''');
+ computeResult(target, REFERENCED_LIBRARIES);
+ expect(task, new isInstanceOf<DartScriptsTask>());
+ expect(outputs[REFERENCED_LIBRARIES], hasLength(1));
+ expect(outputs[DART_SCRIPTS], hasLength(0));
}
}
@reflectiveTest
-class ParseHtmlTaskTest extends AbstractContextTest {
+class HtmlErrorsTaskTest extends AbstractContextTest {
test_buildInputs() {
Source source = newSource('/test.html');
- Map<String, TaskInput> inputs = ParseHtmlTask.buildInputs(source);
+ Map<String, TaskInput> inputs = HtmlErrorsTask.buildInputs(source);
expect(inputs, isNotNull);
- expect(inputs.keys, unorderedEquals([ParseHtmlTask.CONTENT_INPUT_NAME]));
+ expect(inputs.keys, unorderedEquals([
+ HtmlErrorsTask.DART_ERRORS_INPUT,
+ HtmlErrorsTask.DOCUMENT_ERRORS_INPUT
+ ]));
}
test_constructor() {
Source source = newSource('/test.html');
- ParseHtmlTask task = new ParseHtmlTask(context, source);
+ HtmlErrorsTask task = new HtmlErrorsTask(context, source);
expect(task, isNotNull);
expect(task.context, context);
expect(task.target, source);
@@ -94,7 +184,7 @@ class ParseHtmlTaskTest extends AbstractContextTest {
test_createTask() {
Source source = newSource('/test.html');
- ParseHtmlTask task = ParseHtmlTask.createTask(context, source);
+ HtmlErrorsTask task = HtmlErrorsTask.createTask(context, source);
expect(task, isNotNull);
expect(task.context, context);
expect(task.target, source);
@@ -102,47 +192,79 @@ class ParseHtmlTaskTest extends AbstractContextTest {
test_description() {
Source source = newSource('/test.html');
- ParseHtmlTask task = new ParseHtmlTask(null, source);
+ HtmlErrorsTask task = new HtmlErrorsTask(null, source);
expect(task.description, isNotNull);
}
test_descriptor() {
- TaskDescriptor descriptor = ParseHtmlTask.DESCRIPTOR;
+ TaskDescriptor descriptor = HtmlErrorsTask.DESCRIPTOR;
expect(descriptor, isNotNull);
}
- test_perform() {
+ test_perform_dartErrors() {
AnalysisTarget target = newSource('/test.html', r'''
<!DOCTYPE html>
<html>
<head>
<title>test page</title>
+ <script type='application/dart'>
+ void buttonPressed() {
+ </script>
+ </head>
+ <body>Test</body>
+</html>
+''');
+ computeResult(target, HTML_ERRORS);
+ expect(task, new isInstanceOf<HtmlErrorsTask>());
+ expect(outputs[HTML_ERRORS], hasLength(1));
+ }
+
+ test_perform_htmlErrors() {
+ AnalysisTarget target = newSource('/test.html', r'''
+<html>
+ <head>
+ <title>test page</title>
</head>
<body>
- <h1 Test>
+ Test
</body>
</html>
''');
- computeResult(target, HTML_DOCUMENT);
- expect(task, new isInstanceOf<ParseHtmlTask>());
- expect(outputs[HTML_DOCUMENT], isNotNull);
- expect(outputs[HTML_DOCUMENT_ERRORS], isNotEmpty);
+ computeResult(target, HTML_ERRORS);
+ expect(task, new isInstanceOf<HtmlErrorsTask>());
+ expect(outputs[HTML_ERRORS], hasLength(1));
+ }
+
+ test_perform_noErrors() {
+ AnalysisTarget target = newSource('/test.html', r'''
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>test page</title>
+ </head>
+ <body>
+ Test
+ </body>
+</html>
+''');
+ computeResult(target, HTML_ERRORS);
+ expect(task, new isInstanceOf<HtmlErrorsTask>());
+ expect(outputs[HTML_ERRORS], isEmpty);
}
}
@reflectiveTest
-class ReferencedLibrariesTaskTest extends AbstractContextTest {
+class ParseHtmlTaskTest extends AbstractContextTest {
test_buildInputs() {
Source source = newSource('/test.html');
- Map<String, TaskInput> inputs = ReferencedLibrariesTask.buildInputs(source);
+ Map<String, TaskInput> inputs = ParseHtmlTask.buildInputs(source);
expect(inputs, isNotNull);
- expect(
- inputs.keys, unorderedEquals([ReferencedLibrariesTask.DOCUMENT_INPUT]));
+ expect(inputs.keys, unorderedEquals([ParseHtmlTask.CONTENT_INPUT_NAME]));
}
test_constructor() {
Source source = newSource('/test.html');
- ReferencedLibrariesTask task = new ReferencedLibrariesTask(context, source);
+ ParseHtmlTask task = new ParseHtmlTask(context, source);
expect(task, isNotNull);
expect(task.context, context);
expect(task.target, source);
@@ -150,8 +272,7 @@ class ReferencedLibrariesTaskTest extends AbstractContextTest {
test_createTask() {
Source source = newSource('/test.html');
- ReferencedLibrariesTask task =
- ReferencedLibrariesTask.createTask(context, source);
+ ParseHtmlTask task = ParseHtmlTask.createTask(context, source);
expect(task, isNotNull);
expect(task.context, context);
expect(task.target, source);
@@ -159,78 +280,16 @@ class ReferencedLibrariesTaskTest extends AbstractContextTest {
test_description() {
Source source = newSource('/test.html');
- ReferencedLibrariesTask task = new ReferencedLibrariesTask(null, source);
+ ParseHtmlTask task = new ParseHtmlTask(null, source);
expect(task.description, isNotNull);
}
test_descriptor() {
- TaskDescriptor descriptor = ReferencedLibrariesTask.DESCRIPTOR;
+ TaskDescriptor descriptor = ParseHtmlTask.DESCRIPTOR;
expect(descriptor, isNotNull);
}
- void test_perform_embedded_source() {
- AnalysisTarget target = newSource('/test.html', r'''
-<!DOCTYPE html>
-<html>
-<head>
- <script type='application/dart'>
- void buttonPressed() {}
- </script>
-</head>
-<body>
-</body>
-</html>''');
- computeResult(target, REFERENCED_LIBRARIES);
- expect(task, new isInstanceOf<ReferencedLibrariesTask>());
- expect(outputs[REFERENCED_LIBRARIES], hasLength(0));
- }
-
- void test_perform_empty_source_reference() {
- AnalysisTarget target = newSource('/test.html', r'''
-<!DOCTYPE html>
-<html>
-<head>
- <script type='application/dart' src=''/>
-</head>
-<body>
-</body>
-</html>''');
- computeResult(target, REFERENCED_LIBRARIES);
- expect(task, new isInstanceOf<ReferencedLibrariesTask>());
- expect(outputs[REFERENCED_LIBRARIES], hasLength(0));
- }
-
- void test_perform_invalid_source_reference() {
- AnalysisTarget target = newSource('/test.html', r'''
-<!DOCTYPE html>
-<html>
-<head>
- <script type='application/dart' src='an;invalid:[]uri'/>
-</head>
-<body>
-</body>
-</html>''');
- computeResult(target, REFERENCED_LIBRARIES);
- expect(task, new isInstanceOf<ReferencedLibrariesTask>());
- expect(outputs[REFERENCED_LIBRARIES], hasLength(0));
- }
-
- void test_perform_non_existing_source_reference() {
- AnalysisTarget target = newSource('/test.html', r'''
-<!DOCTYPE html>
-<html>
-<head>
- <script type='application/dart' src='does/not/exist.dart'/>
-</head>
-<body>
-</body>
-</html>''');
- computeResult(target, REFERENCED_LIBRARIES);
- expect(task, new isInstanceOf<ReferencedLibrariesTask>());
- expect(outputs[REFERENCED_LIBRARIES], hasLength(1));
- }
-
- test_perform_none() {
+ test_perform() {
AnalysisTarget target = newSource('/test.html', r'''
<!DOCTYPE html>
<html>
@@ -238,27 +297,13 @@ class ReferencedLibrariesTaskTest extends AbstractContextTest {
<title>test page</title>
</head>
<body>
- Test
+ <h1 Test>
</body>
</html>
''');
- computeResult(target, REFERENCED_LIBRARIES);
- expect(task, new isInstanceOf<ReferencedLibrariesTask>());
- expect(outputs[REFERENCED_LIBRARIES], isEmpty);
- }
-
- void test_perform_referenced_source() {
- AnalysisTarget target = newSource('/test.html', r'''
-<!DOCTYPE html>
-<html>
-<head>
- <script type='application/dart' src='test.dart'/>
-</head>
-<body>
-</body>
-</html>''');
- computeResult(target, REFERENCED_LIBRARIES);
- expect(task, new isInstanceOf<ReferencedLibrariesTask>());
- expect(outputs[REFERENCED_LIBRARIES], hasLength(1));
+ computeResult(target, HTML_DOCUMENT);
+ expect(task, new isInstanceOf<ParseHtmlTask>());
+ expect(outputs[HTML_DOCUMENT], isNotNull);
+ expect(outputs[HTML_DOCUMENT_ERRORS], isNotEmpty);
}
}
« no previous file with comments | « pkg/analyzer/test/src/task/dart_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698