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

Side by Side Diff: pkg/analyzer/test/src/task/inputs_test.dart

Issue 1370323003: Fix computation of errors to not run extra tasks (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Added tests 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
« no previous file with comments | « pkg/analyzer/lib/src/task/inputs.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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.src.task.inputs_test; 5 library test.src.task.inputs_test;
6 6
7 import 'package:analyzer/src/task/inputs.dart'; 7 import 'package:analyzer/src/task/inputs.dart';
8 import 'package:analyzer/src/task/model.dart'; 8 import 'package:analyzer/src/task/model.dart';
9 import 'package:analyzer/task/model.dart'; 9 import 'package:analyzer/task/model.dart';
10 import 'package:unittest/unittest.dart'; 10 import 'package:unittest/unittest.dart';
11 11
12 import '../../generated/test_support.dart'; 12 import '../../generated/test_support.dart';
13 import '../../reflective_tests.dart'; 13 import '../../reflective_tests.dart';
14 import '../../utils.dart'; 14 import '../../utils.dart';
15 15
16 main() { 16 main() {
17 initializeTestEnvironment(); 17 initializeTestEnvironment();
18 runReflectiveTests(ConstantTaskInputBuilderTest);
19 runReflectiveTests(ConstantTaskInputTest);
18 runReflectiveTests(ListTaskInputImplTest); 20 runReflectiveTests(ListTaskInputImplTest);
19 runReflectiveTests(ListToListTaskInputTest); 21 runReflectiveTests(ListToListTaskInputTest);
20 runReflectiveTests(ListToListTaskInputBuilderTest); 22 runReflectiveTests(ListToListTaskInputBuilderTest);
21 runReflectiveTests(ListToMapTaskInputBuilderTest); 23 runReflectiveTests(ListToMapTaskInputBuilderTest);
22 runReflectiveTests(ListToMapTaskInputTest); 24 runReflectiveTests(ListToMapTaskInputTest);
23 runReflectiveTests(ObjectToListTaskInputBuilderTest); 25 runReflectiveTests(ObjectToListTaskInputBuilderTest);
24 runReflectiveTests(ObjectToListTaskInputTest); 26 runReflectiveTests(ObjectToListTaskInputTest);
25 runReflectiveTests(SimpleTaskInputTest); 27 runReflectiveTests(SimpleTaskInputTest);
26 runReflectiveTests(SimpleTaskInputBuilderTest); 28 runReflectiveTests(SimpleTaskInputBuilderTest);
27 runReflectiveTests(TopLevelTaskInputBuilderTest); 29 runReflectiveTests(TopLevelTaskInputBuilderTest);
28 } 30 }
29 31
30 @reflectiveTest 32 @reflectiveTest
33 class ConstantTaskInputBuilderTest extends EngineTestCase {
34 static final int value = 7;
35 static final ConstantTaskInput<int> input = new ConstantTaskInput<int>(value);
36
37 ConstantTaskInputBuilder builder;
38
39 void setUp() {
40 builder = new ConstantTaskInputBuilder(input);
41 }
42
43 test_create() {
44 expect(builder, isNotNull);
45 expect(builder.input, input);
46 }
47
48 test_currentResult_afterOneMoveNext() {
49 builder.moveNext();
50 expect(builder.currentResult, null);
51 }
52
53 test_currentResult_beforeMoveNext() {
54 expect(builder.currentResult, null);
55 }
56
57 test_currentTarget_afterOneMoveNext() {
58 builder.moveNext();
59 expect(builder.currentTarget, null);
60 }
61
62 test_currentTarget_beforeMoveNext() {
63 expect(builder.currentTarget, null);
64 }
65
66 test_currentValue_afterOneMoveNext() {
67 builder.moveNext();
68 expect(() {
69 builder.currentValue = 'value';
70 }, throwsStateError);
71 }
72
73 test_currentValue_beforeMoveNext() {
74 expect(() {
75 builder.currentValue = 'value';
76 }, throwsStateError);
77 }
78
79 test_currentValueNotAvailable_afterOneMoveNext() {
80 builder.moveNext();
81 expect(() {
82 builder.currentValueNotAvailable();
83 }, throwsStateError);
84 }
85
86 test_currentValueNotAvailable_beforeMoveNext() {
87 expect(() {
88 builder.currentValueNotAvailable();
89 }, throwsStateError);
90 }
91
92 test_inputValue_afterOneMoveNext() {
93 builder.moveNext();
94 expect(builder.inputValue, value);
95 }
96
97 test_inputValue_beforeMoveNext() {
98 expect(builder.inputValue, value);
99 }
100
101 test_moveNext() {
102 expect(builder.moveNext(), false);
103 expect(builder.moveNext(), false);
104 }
105 }
106
107 @reflectiveTest
108 class ConstantTaskInputTest extends EngineTestCase {
109 test_create() {
110 int value = 3;
111 ConstantTaskInput<int> input = new ConstantTaskInput<int>(value);
112 expect(input, isNotNull);
113 expect(input.value, value);
114 }
115
116 test_createBuilder() {
117 ConstantTaskInput<int> input = new ConstantTaskInput<int>(5);
118 expect(input.createBuilder(), new isInstanceOf<ConstantTaskInputBuilder>());
119 }
120 }
121
122 @reflectiveTest
31 class ListTaskInputImplTest extends EngineTestCase { 123 class ListTaskInputImplTest extends EngineTestCase {
32 static final AnalysisTarget target = new TestSource(); 124 static final AnalysisTarget target = new TestSource();
33 static final result1 = 125 static final result1 =
34 new ResultDescriptorImpl<List<AnalysisTarget>>('result1', null); 126 new ResultDescriptorImpl<List<AnalysisTarget>>('result1', null);
35 static final result2 = new ResultDescriptorImpl<int>('result2', null); 127 static final result2 = new ResultDescriptorImpl<int>('result2', null);
36 128
37 test_create() { 129 test_create() {
38 var input = new ListTaskInputImpl<AnalysisTarget>(target, result1); 130 var input = new ListTaskInputImpl<AnalysisTarget>(target, result1);
39 expect(input, isNotNull); 131 expect(input, isNotNull);
40 expect(input.target, target); 132 expect(input.target, target);
(...skipping 752 matching lines...) Expand 10 before | Expand all | Expand 10 after
793 } 885 }
794 886
795 test_currentResult_afterOneMoveNext() { 887 test_currentResult_afterOneMoveNext() {
796 Map<String, TaskInput> inputDescriptors = {'one': input1, 'two': input2}; 888 Map<String, TaskInput> inputDescriptors = {'one': input1, 'two': input2};
797 TopLevelTaskInputBuilder builder = 889 TopLevelTaskInputBuilder builder =
798 new TopLevelTaskInputBuilder(inputDescriptors); 890 new TopLevelTaskInputBuilder(inputDescriptors);
799 builder.moveNext(); 891 builder.moveNext();
800 expect(builder.currentResult, result1); 892 expect(builder.currentResult, result1);
801 } 893 }
802 894
895 test_currentResult_afterTwoMoveNext_withConstantInput() {
896 ConstantTaskInput<int> constantInput = new ConstantTaskInput<int>(11);
897 Map<String, TaskInput> inputDescriptors = {
898 'one': input1,
899 'constant': constantInput,
900 'two': input2
901 };
902 TopLevelTaskInputBuilder builder =
903 new TopLevelTaskInputBuilder(inputDescriptors);
904 builder.moveNext();
905 builder.currentValue = 'value1';
906 builder.moveNext();
907 expect(builder.currentResult, result2);
908 }
909
803 test_currentResult_beforeMoveNext() { 910 test_currentResult_beforeMoveNext() {
804 Map<String, TaskInput> inputDescriptors = {}; 911 Map<String, TaskInput> inputDescriptors = {};
805 TopLevelTaskInputBuilder builder = 912 TopLevelTaskInputBuilder builder =
806 new TopLevelTaskInputBuilder(inputDescriptors); 913 new TopLevelTaskInputBuilder(inputDescriptors);
807 expect(builder.currentResult, null); 914 expect(builder.currentResult, null);
808 } 915 }
809 916
810 test_currentTarget_afterComplete() { 917 test_currentTarget_afterComplete() {
811 Map<String, TaskInput> inputDescriptors = {'one': input1}; 918 Map<String, TaskInput> inputDescriptors = {'one': input1};
812 TopLevelTaskInputBuilder builder = 919 TopLevelTaskInputBuilder builder =
(...skipping 15 matching lines...) Expand all
828 } 935 }
829 936
830 test_currentTarget_afterOneMoveNext() { 937 test_currentTarget_afterOneMoveNext() {
831 Map<String, TaskInput> inputDescriptors = {'one': input1}; 938 Map<String, TaskInput> inputDescriptors = {'one': input1};
832 TopLevelTaskInputBuilder builder = 939 TopLevelTaskInputBuilder builder =
833 new TopLevelTaskInputBuilder(inputDescriptors); 940 new TopLevelTaskInputBuilder(inputDescriptors);
834 builder.moveNext(); 941 builder.moveNext();
835 expect(builder.currentTarget, target); 942 expect(builder.currentTarget, target);
836 } 943 }
837 944
945 test_currentTarget_afterTwoMoveNext_withConstantInput() {
946 ConstantTaskInput<int> constantInput = new ConstantTaskInput<int>(11);
947 Map<String, TaskInput> inputDescriptors = {
948 'one': input1,
949 'constant': constantInput,
950 'two': input2
951 };
952 TopLevelTaskInputBuilder builder =
953 new TopLevelTaskInputBuilder(inputDescriptors);
954 builder.moveNext();
955 builder.currentValue = 'value1';
956 builder.moveNext();
957 expect(builder.currentTarget, target);
958 }
959
838 test_currentTarget_beforeMoveNext() { 960 test_currentTarget_beforeMoveNext() {
839 Map<String, TaskInput> inputDescriptors = {}; 961 Map<String, TaskInput> inputDescriptors = {};
840 TopLevelTaskInputBuilder builder = 962 TopLevelTaskInputBuilder builder =
841 new TopLevelTaskInputBuilder(inputDescriptors); 963 new TopLevelTaskInputBuilder(inputDescriptors);
842 expect(builder.currentTarget, null); 964 expect(builder.currentTarget, null);
843 } 965 }
844 966
845 test_currentValue_afterOneMoveNext() { 967 test_currentValue_afterOneMoveNext() {
846 Map<String, TaskInput> inputDescriptors = {'one': input1}; 968 Map<String, TaskInput> inputDescriptors = {'one': input1};
847 TopLevelTaskInputBuilder builder = 969 TopLevelTaskInputBuilder builder =
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
942 test_moveNext_withSet() { 1064 test_moveNext_withSet() {
943 Map<String, TaskInput> inputDescriptors = {'one': input1}; 1065 Map<String, TaskInput> inputDescriptors = {'one': input1};
944 TopLevelTaskInputBuilder builder = 1066 TopLevelTaskInputBuilder builder =
945 new TopLevelTaskInputBuilder(inputDescriptors); 1067 new TopLevelTaskInputBuilder(inputDescriptors);
946 expect(builder.moveNext(), true); 1068 expect(builder.moveNext(), true);
947 builder.currentValue = 'value1'; 1069 builder.currentValue = 'value1';
948 expect(builder.moveNext(), false); 1070 expect(builder.moveNext(), false);
949 expect(builder.moveNext(), false); 1071 expect(builder.moveNext(), false);
950 } 1072 }
951 } 1073 }
OLDNEW
« no previous file with comments | « pkg/analyzer/lib/src/task/inputs.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698