| Index: pkg/analyzer/test/src/task/dart_work_manager_test.dart
|
| diff --git a/pkg/analyzer/test/src/task/dart_work_manager_test.dart b/pkg/analyzer/test/src/task/dart_work_manager_test.dart
|
| index b11c55f3734c56e866a7a4ee5b0a24c8b6b8c53c..8497f2cf2420378d9e5b145e3b7a2d639ac9bfce 100644
|
| --- a/pkg/analyzer/test/src/task/dart_work_manager_test.dart
|
| +++ b/pkg/analyzer/test/src/task/dart_work_manager_test.dart
|
| @@ -190,6 +190,40 @@ class DartWorkManagerTest {
|
| expect(request, isNull);
|
| }
|
|
|
| + void test_getNextResult_hasPriority_firstIsError() {
|
| + manager.addPriorityResult(source1, SOURCE_KIND);
|
| + manager.addPriorityResult(source2, SOURCE_KIND);
|
| + expect(manager.priorityResultQueue, unorderedEquals([
|
| + new TargetedResult(source1, SOURCE_KIND),
|
| + new TargetedResult(source2, SOURCE_KIND)
|
| + ]));
|
| + // configure state and get next result
|
| + entry1.setErrorState(caughtException, [SOURCE_KIND]);
|
| + TargetedResult request = manager.getNextResult();
|
| + expect(request.target, source2);
|
| + expect(request.result, SOURCE_KIND);
|
| + // source1 is out, source2 is waiting
|
| + expect(manager.priorityResultQueue,
|
| + unorderedEquals([new TargetedResult(source2, SOURCE_KIND)]));
|
| + }
|
| +
|
| + void test_getNextResult_hasPriority_firstIsValid() {
|
| + manager.addPriorityResult(source1, SOURCE_KIND);
|
| + manager.addPriorityResult(source2, SOURCE_KIND);
|
| + expect(manager.priorityResultQueue, unorderedEquals([
|
| + new TargetedResult(source1, SOURCE_KIND),
|
| + new TargetedResult(source2, SOURCE_KIND)
|
| + ]));
|
| + // configure state and get next result
|
| + entry1.setValue(SOURCE_KIND, SourceKind.LIBRARY, []);
|
| + TargetedResult request = manager.getNextResult();
|
| + expect(request.target, source2);
|
| + expect(request.result, SOURCE_KIND);
|
| + // source1 is out, source2 is waiting
|
| + expect(manager.priorityResultQueue,
|
| + unorderedEquals([new TargetedResult(source2, SOURCE_KIND)]));
|
| + }
|
| +
|
| void test_getNextResult_hasUnknown_firstIsError() {
|
| entry1.setErrorState(caughtException, [SOURCE_KIND]);
|
| manager.unknownSourceQueue.addAll([source1, source2]);
|
|
|