| OLD | NEW |
| 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 | 14 |
| 15 main() { | 15 main() { |
| 16 groupSep = ' | '; | 16 groupSep = ' | '; |
| 17 runReflectiveTests(ListBasedTaskInputTest); | 17 runReflectiveTests(ListBasedTaskInputTest); |
| 18 runReflectiveTests(ListBasedTaskInputBuilderTest); | 18 runReflectiveTests(ListBasedTaskInputBuilderTest); |
| 19 runReflectiveTests(MapBasedTaskInputBuilderTest); |
| 20 runReflectiveTests(MapBasedTaskInputTest); |
| 19 runReflectiveTests(SimpleTaskInputTest); | 21 runReflectiveTests(SimpleTaskInputTest); |
| 20 runReflectiveTests(SimpleTaskInputBuilderTest); | 22 runReflectiveTests(SimpleTaskInputBuilderTest); |
| 21 runReflectiveTests(TopLevelTaskInputBuilderTest); | 23 runReflectiveTests(TopLevelTaskInputBuilderTest); |
| 22 } | 24 } |
| 23 | 25 |
| 24 @reflectiveTest | 26 @reflectiveTest |
| 25 class ListBasedTaskInputBuilderTest extends EngineTestCase { | 27 class ListBasedTaskInputBuilderTest extends EngineTestCase { |
| 26 static final AnalysisTarget target1 = new TestSource(); | 28 static final AnalysisTarget target1 = new TestSource(); |
| 27 static final ResultDescriptorImpl result1 = | 29 static final ResultDescriptorImpl result1 = |
| 28 new ResultDescriptorImpl('result1', null); | 30 new ResultDescriptorImpl('result1', null); |
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 152 | 154 |
| 153 test_createBuilder() { | 155 test_createBuilder() { |
| 154 SimpleTaskInput baseAccessor = result.inputFor(target); | 156 SimpleTaskInput baseAccessor = result.inputFor(target); |
| 155 GenerateTaskInputs generate = (object) {}; | 157 GenerateTaskInputs generate = (object) {}; |
| 156 ListBasedTaskInput input = new ListBasedTaskInput(baseAccessor, generate); | 158 ListBasedTaskInput input = new ListBasedTaskInput(baseAccessor, generate); |
| 157 expect(input.createBuilder(), isNotNull); | 159 expect(input.createBuilder(), isNotNull); |
| 158 } | 160 } |
| 159 } | 161 } |
| 160 | 162 |
| 161 @reflectiveTest | 163 @reflectiveTest |
| 164 class MapBasedTaskInputBuilderTest extends EngineTestCase { |
| 165 static final AnalysisTarget target1 = new TestSource('target1'); |
| 166 static final ResultDescriptorImpl result1 = |
| 167 new ResultDescriptorImpl('result1', null); |
| 168 static final ResultDescriptorImpl result2 = |
| 169 new ResultDescriptorImpl('result2', null); |
| 170 static final MapBasedTaskInput input = new MapBasedTaskInput( |
| 171 result1.inputFor(target1), (element) => result2.inputFor(element)); |
| 172 |
| 173 test_create() { |
| 174 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 175 expect(builder, isNotNull); |
| 176 expect(builder.input, input); |
| 177 } |
| 178 |
| 179 test_currentResult_afterComplete() { |
| 180 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 181 builder.moveNext(); |
| 182 builder.currentValue = []; |
| 183 builder.moveNext(); |
| 184 expect(builder.currentResult, null); |
| 185 } |
| 186 |
| 187 test_currentResult_afterOneMoveNext() { |
| 188 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 189 builder.moveNext(); |
| 190 expect(builder.currentResult, result1); |
| 191 } |
| 192 |
| 193 test_currentResult_beforeMoveNext() { |
| 194 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 195 expect(builder.currentResult, null); |
| 196 } |
| 197 |
| 198 test_currentTarget_afterComplete() { |
| 199 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 200 builder.moveNext(); |
| 201 builder.currentValue = []; |
| 202 builder.moveNext(); |
| 203 expect(builder.currentTarget, null); |
| 204 } |
| 205 |
| 206 test_currentTarget_afterOneMoveNext() { |
| 207 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 208 builder.moveNext(); |
| 209 expect(builder.currentTarget, target1); |
| 210 } |
| 211 |
| 212 test_currentTarget_beforeMoveNext() { |
| 213 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 214 expect(builder.currentTarget, null); |
| 215 } |
| 216 |
| 217 test_currentValue_afterOneMoveNext() { |
| 218 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 219 builder.moveNext(); |
| 220 builder.currentValue = []; |
| 221 } |
| 222 |
| 223 test_currentValue_beforeMoveNext() { |
| 224 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 225 expect(() { |
| 226 builder.currentValue = []; |
| 227 }, throwsStateError); |
| 228 } |
| 229 |
| 230 test_inputValue_afterComplete() { |
| 231 AnalysisTarget target2 = new TestSource('target2'); |
| 232 AnalysisTarget target3 = new TestSource('target3'); |
| 233 String value2 = 'value2'; |
| 234 String value3 = 'value3'; |
| 235 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 236 builder.moveNext(); // Advance to requesting the list |
| 237 builder.currentValue = [target2, target3]; |
| 238 builder.moveNext(); // Advance to requesting result2 for target2 |
| 239 builder.currentValue = value2; |
| 240 builder.moveNext(); // Advance to requesting result2 for target3 |
| 241 builder.currentValue = value3; |
| 242 builder.moveNext(); // Advance to the end |
| 243 var inputValue = builder.inputValue; |
| 244 expect(inputValue, new isInstanceOf<Map>()); |
| 245 expect(inputValue.length, 2); |
| 246 expect(inputValue, containsPair(target2, value2)); |
| 247 expect(inputValue, containsPair(target3, value3)); |
| 248 } |
| 249 |
| 250 test_inputValue_afterOneMoveNext() { |
| 251 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 252 builder.moveNext(); |
| 253 expect(() => builder.inputValue, throwsStateError); |
| 254 } |
| 255 |
| 256 test_inputValue_beforeMoveNext() { |
| 257 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 258 expect(() => builder.inputValue, throwsStateError); |
| 259 } |
| 260 |
| 261 test_moveNext_withoutSet() { |
| 262 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 263 expect(builder.moveNext(), true); |
| 264 expect(() => builder.moveNext(), throwsStateError); |
| 265 } |
| 266 |
| 267 test_moveNext_withSet() { |
| 268 MapBasedTaskInputBuilder builder = new MapBasedTaskInputBuilder(input); |
| 269 expect(builder.moveNext(), true); |
| 270 builder.currentValue = []; |
| 271 expect(builder.moveNext(), false); |
| 272 expect(builder.moveNext(), false); |
| 273 } |
| 274 } |
| 275 |
| 276 @reflectiveTest |
| 277 class MapBasedTaskInputTest extends EngineTestCase { |
| 278 static final AnalysisTarget target = new TestSource(); |
| 279 static final ResultDescriptorImpl result = |
| 280 new ResultDescriptorImpl('result', null); |
| 281 |
| 282 test_create() { |
| 283 SimpleTaskInput baseAccessor = result.inputFor(target); |
| 284 GenerateTaskInputs generate = (object) {}; |
| 285 MapBasedTaskInput input = new MapBasedTaskInput(baseAccessor, generate); |
| 286 expect(input, isNotNull); |
| 287 expect(input.baseAccessor, baseAccessor); |
| 288 expect(input.generateTaskInputs, equals(generate)); |
| 289 } |
| 290 |
| 291 test_createBuilder() { |
| 292 SimpleTaskInput baseAccessor = result.inputFor(target); |
| 293 GenerateTaskInputs generate = (object) {}; |
| 294 MapBasedTaskInput input = new MapBasedTaskInput(baseAccessor, generate); |
| 295 expect(input.createBuilder(), isNotNull); |
| 296 } |
| 297 } |
| 298 |
| 299 @reflectiveTest |
| 162 class SimpleTaskInputBuilderTest extends EngineTestCase { | 300 class SimpleTaskInputBuilderTest extends EngineTestCase { |
| 163 static final AnalysisTarget target = new TestSource(); | 301 static final AnalysisTarget target = new TestSource(); |
| 164 static final ResultDescriptorImpl result = | 302 static final ResultDescriptorImpl result = |
| 165 new ResultDescriptorImpl('result', null); | 303 new ResultDescriptorImpl('result', null); |
| 166 static final SimpleTaskInput input = new SimpleTaskInput(target, result); | 304 static final SimpleTaskInput input = new SimpleTaskInput(target, result); |
| 167 | 305 |
| 168 test_create() { | 306 test_create() { |
| 169 SimpleTaskInputBuilder builder = new SimpleTaskInputBuilder(input); | 307 SimpleTaskInputBuilder builder = new SimpleTaskInputBuilder(input); |
| 170 expect(builder, isNotNull); | 308 expect(builder, isNotNull); |
| 171 expect(builder.input, input); | 309 expect(builder.input, input); |
| (...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 408 test_moveNext_withSet() { | 546 test_moveNext_withSet() { |
| 409 Map<String, TaskInput> inputDescriptors = {'one': input1}; | 547 Map<String, TaskInput> inputDescriptors = {'one': input1}; |
| 410 TopLevelTaskInputBuilder builder = | 548 TopLevelTaskInputBuilder builder = |
| 411 new TopLevelTaskInputBuilder(inputDescriptors); | 549 new TopLevelTaskInputBuilder(inputDescriptors); |
| 412 expect(builder.moveNext(), true); | 550 expect(builder.moveNext(), true); |
| 413 builder.currentValue = 'value1'; | 551 builder.currentValue = 'value1'; |
| 414 expect(builder.moveNext(), false); | 552 expect(builder.moveNext(), false); |
| 415 expect(builder.moveNext(), false); | 553 expect(builder.moveNext(), false); |
| 416 } | 554 } |
| 417 } | 555 } |
| OLD | NEW |