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

Side by Side Diff: pkg/analysis_server/test/src/plugin/result_merger_test.dart

Issue 2879273002: Make server use the common protocol classes (Closed)
Patch Set: Created 3 years, 7 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
OLDNEW
1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2017, 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 import 'package:analysis_server/protocol/protocol_generated.dart'; 5 import 'package:analysis_server/protocol/protocol_generated.dart';
6 import 'package:analysis_server/src/plugin/result_merger.dart'; 6 import 'package:analysis_server/src/plugin/result_merger.dart';
7 import 'package:analyzer_plugin/protocol/protocol_common.dart' as plugin; 7 import 'package:analyzer_plugin/protocol/protocol_common.dart';
8 import 'package:analyzer_plugin/protocol/protocol_generated.dart' as plugin; 8 import 'package:analyzer_plugin/protocol/protocol_generated.dart' as plugin;
9 import 'package:test/test.dart'; 9 import 'package:test/test.dart';
10 import 'package:test_reflective_loader/test_reflective_loader.dart'; 10 import 'package:test_reflective_loader/test_reflective_loader.dart';
11 11
12 main() { 12 main() {
13 defineReflectiveSuite(() { 13 defineReflectiveSuite(() {
14 defineReflectiveTests(ResultMergerTest); 14 defineReflectiveTests(ResultMergerTest);
15 }); 15 });
16 } 16 }
17 17
18 @reflectiveTest 18 @reflectiveTest
19 class ResultMergerTest { 19 class ResultMergerTest {
20 // 20 //
21 // The tests in this class should always perform the merge operation twice 21 // The tests in this class should always perform the merge operation twice
22 // using the same input values in order to ensure that the input values are 22 // using the same input values in order to ensure that the input values are
23 // not modified by the merge operation. 23 // not modified by the merge operation.
24 // 24 //
25 25
26 ResultMerger merger = new ResultMerger(); 26 ResultMerger merger = new ResultMerger();
27 27
28 void test_mergeAnalysisErrorFixes() { 28 void test_mergeAnalysisErrorFixes() {
29 plugin.AnalysisError createError(int offset) { 29 AnalysisError createError(int offset) {
30 plugin.AnalysisErrorSeverity severity = 30 AnalysisErrorSeverity severity = AnalysisErrorSeverity.ERROR;
31 plugin.AnalysisErrorSeverity.ERROR; 31 AnalysisErrorType type = AnalysisErrorType.HINT;
32 plugin.AnalysisErrorType type = plugin.AnalysisErrorType.HINT; 32 Location location = new Location('test.dart', offset, 2, 3, 4);
33 plugin.Location location = 33 return new AnalysisError(severity, type, location, '', '');
34 new plugin.Location('test.dart', offset, 2, 3, 4);
35 return new plugin.AnalysisError(severity, type, location, '', '');
36 } 34 }
37 35
38 plugin.AnalysisError error1 = createError(10); 36 AnalysisError error1 = createError(10);
39 plugin.AnalysisError error2 = createError(20); 37 AnalysisError error2 = createError(20);
40 plugin.AnalysisError error3 = createError(30); 38 AnalysisError error3 = createError(30);
41 plugin.AnalysisError error4 = createError(40); 39 AnalysisError error4 = createError(40);
42 plugin.PrioritizedSourceChange change1 = 40 plugin.PrioritizedSourceChange change1 =
43 new plugin.PrioritizedSourceChange(1, new plugin.SourceChange('a')); 41 new plugin.PrioritizedSourceChange(1, new SourceChange('a'));
44 plugin.PrioritizedSourceChange change2 = 42 plugin.PrioritizedSourceChange change2 =
45 new plugin.PrioritizedSourceChange(2, new plugin.SourceChange('b')); 43 new plugin.PrioritizedSourceChange(2, new SourceChange('b'));
46 plugin.PrioritizedSourceChange change3 = 44 plugin.PrioritizedSourceChange change3 =
47 new plugin.PrioritizedSourceChange(3, new plugin.SourceChange('c')); 45 new plugin.PrioritizedSourceChange(3, new SourceChange('c'));
48 plugin.PrioritizedSourceChange change4 = 46 plugin.PrioritizedSourceChange change4 =
49 new plugin.PrioritizedSourceChange(4, new plugin.SourceChange('d')); 47 new plugin.PrioritizedSourceChange(4, new SourceChange('d'));
50 plugin.PrioritizedSourceChange change5 = 48 plugin.PrioritizedSourceChange change5 =
51 new plugin.PrioritizedSourceChange(5, new plugin.SourceChange('e')); 49 new plugin.PrioritizedSourceChange(5, new SourceChange('e'));
52 plugin.AnalysisErrorFixes fix1 = 50 plugin.AnalysisErrorFixes fix1 =
53 new plugin.AnalysisErrorFixes(error1, fixes: [change1]); 51 new plugin.AnalysisErrorFixes(error1, fixes: [change1]);
54 plugin.AnalysisErrorFixes fix2 = 52 plugin.AnalysisErrorFixes fix2 =
55 new plugin.AnalysisErrorFixes(error2, fixes: [change2]); 53 new plugin.AnalysisErrorFixes(error2, fixes: [change2]);
56 plugin.AnalysisErrorFixes fix3 = 54 plugin.AnalysisErrorFixes fix3 =
57 new plugin.AnalysisErrorFixes(error2, fixes: [change3]); 55 new plugin.AnalysisErrorFixes(error2, fixes: [change3]);
58 plugin.AnalysisErrorFixes fix4 = 56 plugin.AnalysisErrorFixes fix4 =
59 new plugin.AnalysisErrorFixes(error3, fixes: [change4]); 57 new plugin.AnalysisErrorFixes(error3, fixes: [change4]);
60 plugin.AnalysisErrorFixes fix5 = 58 plugin.AnalysisErrorFixes fix5 =
61 new plugin.AnalysisErrorFixes(error4, fixes: [change5]); 59 new plugin.AnalysisErrorFixes(error4, fixes: [change5]);
(...skipping 279 matching lines...) Expand 10 before | Expand all | Expand 10 after
341 ]), 339 ]),
342 unorderedEquals([outline1, outline2and3, outline4])); 340 unorderedEquals([outline1, outline2and3, outline4]));
343 } 341 }
344 342
345 runTest(); 343 runTest();
346 runTest(); 344 runTest();
347 } 345 }
348 346
349 void test_mergePrioritizedSourceChanges() { 347 void test_mergePrioritizedSourceChanges() {
350 plugin.PrioritizedSourceChange kind1 = 348 plugin.PrioritizedSourceChange kind1 =
351 new plugin.PrioritizedSourceChange(1, new plugin.SourceChange('')); 349 new plugin.PrioritizedSourceChange(1, new SourceChange(''));
352 plugin.PrioritizedSourceChange kind2 = 350 plugin.PrioritizedSourceChange kind2 =
353 new plugin.PrioritizedSourceChange(1, new plugin.SourceChange('')); 351 new plugin.PrioritizedSourceChange(1, new SourceChange(''));
354 plugin.PrioritizedSourceChange kind3 = 352 plugin.PrioritizedSourceChange kind3 =
355 new plugin.PrioritizedSourceChange(1, new plugin.SourceChange('')); 353 new plugin.PrioritizedSourceChange(1, new SourceChange(''));
356 plugin.PrioritizedSourceChange kind4 = 354 plugin.PrioritizedSourceChange kind4 =
357 new plugin.PrioritizedSourceChange(1, new plugin.SourceChange('')); 355 new plugin.PrioritizedSourceChange(1, new SourceChange(''));
358 356
359 void runTest() { 357 void runTest() {
360 expect( 358 expect(
361 merger.mergePrioritizedSourceChanges([ 359 merger.mergePrioritizedSourceChanges([
362 [kind3, kind2], 360 [kind3, kind2],
363 [], 361 [],
364 [kind4], 362 [kind4],
365 [kind1] 363 [kind1]
366 ]), 364 ]),
367 unorderedEquals([kind1, kind2, kind3, kind4])); 365 unorderedEquals([kind1, kind2, kind3, kind4]));
(...skipping 363 matching lines...) Expand 10 before | Expand all | Expand 10 after
731 } 729 }
732 730
733 void test_overlaps_true_onLeft() { 731 void test_overlaps_true_onLeft() {
734 expect(merger.overlaps(1, 5, 3, 7), isTrue); 732 expect(merger.overlaps(1, 5, 3, 7), isTrue);
735 } 733 }
736 734
737 void test_overlaps_true_onRight() { 735 void test_overlaps_true_onRight() {
738 expect(merger.overlaps(3, 7, 1, 5), isTrue); 736 expect(merger.overlaps(3, 7, 1, 5), isTrue);
739 } 737 }
740 } 738 }
OLDNEW
« no previous file with comments | « pkg/analysis_server/test/src/plugin/result_converter_test.dart ('k') | pkg/analysis_server/test/stress/replay/replay.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698