| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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.domain.completion; | 5 library test.domain.completion; |
| 6 | 6 |
| 7 import 'dart:async'; | 7 import 'dart:async'; |
| 8 | 8 |
| 9 import 'package:analysis_server/plugin/protocol/protocol.dart'; | 9 import 'package:analysis_server/plugin/protocol/protocol.dart'; |
| 10 import 'package:analysis_server/src/analysis_server.dart'; | 10 import 'package:analysis_server/src/analysis_server.dart'; |
| (...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 335 expect(id.isNotEmpty, isTrue); | 335 expect(id.isNotEmpty, isTrue); |
| 336 } | 336 } |
| 337 | 337 |
| 338 @override | 338 @override |
| 339 Index createIndex() { | 339 Index createIndex() { |
| 340 return createLocalMemoryIndex(); | 340 return createLocalMemoryIndex(); |
| 341 } | 341 } |
| 342 | 342 |
| 343 Future getSuggestions() { | 343 Future getSuggestions() { |
| 344 return waitForTasksFinished().then((_) { | 344 return waitForTasksFinished().then((_) { |
| 345 Request request = new CompletionGetSuggestionsParams( | 345 Request request = |
| 346 testFile, completionOffset).toRequest('0'); | 346 new CompletionGetSuggestionsParams(testFile, completionOffset) |
| 347 .toRequest('0'); |
| 347 Response response = handleSuccessfulRequest(request); | 348 Response response = handleSuccessfulRequest(request); |
| 348 completionId = response.id; | 349 completionId = response.id; |
| 349 assertValidId(completionId); | 350 assertValidId(completionId); |
| 350 return pumpEventQueue().then((_) { | 351 return pumpEventQueue().then((_) { |
| 351 expect(suggestionsDone, isTrue); | 352 expect(suggestionsDone, isTrue); |
| 352 }); | 353 }); |
| 353 }); | 354 }); |
| 354 } | 355 } |
| 355 | 356 |
| 356 void processNotification(Notification notification) { | 357 void processNotification(Notification notification) { |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 525 | 526 |
| 526 test_invocation_withTrailingStmt() { | 527 test_invocation_withTrailingStmt() { |
| 527 addTestFile('class A {b() {}} main() {A a; a.^ int x = 7;}'); | 528 addTestFile('class A {b() {}} main() {A a; a.^ int x = 7;}'); |
| 528 return getSuggestions().then((_) { | 529 return getSuggestions().then((_) { |
| 529 expect(replacementOffset, equals(completionOffset)); | 530 expect(replacementOffset, equals(completionOffset)); |
| 530 expect(replacementLength, equals(0)); | 531 expect(replacementLength, equals(0)); |
| 531 assertHasResult(CompletionSuggestionKind.INVOCATION, 'b'); | 532 assertHasResult(CompletionSuggestionKind.INVOCATION, 'b'); |
| 532 }); | 533 }); |
| 533 } | 534 } |
| 534 | 535 |
| 536 test_inComment_block_beforeNode() async { |
| 537 addTestFile(''' |
| 538 main(aaa, bbb) { |
| 539 /* text ^ */ |
| 540 print(42); |
| 541 } |
| 542 '''); |
| 543 await getSuggestions(); |
| 544 expect(suggestions, isEmpty); |
| 545 } |
| 546 |
| 547 test_inComment_endOfLine_beforeNode() async { |
| 548 addTestFile(''' |
| 549 main(aaa, bbb) { |
| 550 // text ^ |
| 551 print(42); |
| 552 } |
| 553 '''); |
| 554 await getSuggestions(); |
| 555 expect(suggestions, isEmpty); |
| 556 } |
| 557 |
| 558 test_inComment_endOfLine_beforeToken() async { |
| 559 addTestFile(''' |
| 560 main(aaa, bbb) { |
| 561 // text ^ |
| 562 } |
| 563 '''); |
| 564 await getSuggestions(); |
| 565 expect(suggestions, isEmpty); |
| 566 } |
| 567 |
| 568 test_inDartDoc1() async { |
| 569 addTestFile(''' |
| 570 /// ^ |
| 571 main(aaa, bbb) {} |
| 572 '''); |
| 573 await getSuggestions(); |
| 574 expect(suggestions, isEmpty); |
| 575 } |
| 576 |
| 577 test_inDartDoc2() async { |
| 578 addTestFile(''' |
| 579 /// Some text^ |
| 580 main(aaa, bbb) {} |
| 581 '''); |
| 582 await getSuggestions(); |
| 583 expect(suggestions, isEmpty); |
| 584 } |
| 585 |
| 586 test_inDartDoc_reference2() async { |
| 587 addTestFile(''' |
| 588 /// The [^] |
| 589 main(aaa, bbb) {} |
| 590 '''); |
| 591 await getSuggestions(); |
| 592 assertHasResult(CompletionSuggestionKind.INVOCATION, 'main', |
| 593 relevance: DART_RELEVANCE_LOCAL_FUNCTION); |
| 594 assertHasResult(CompletionSuggestionKind.INVOCATION, 'Object'); |
| 595 } |
| 596 |
| 597 test_inDartDoc_reference3() async { |
| 598 addTestFile(''' |
| 599 /// The [m^] |
| 600 main(aaa, bbb) {} |
| 601 '''); |
| 602 await getSuggestions(); |
| 603 assertHasResult(CompletionSuggestionKind.INVOCATION, 'main', |
| 604 relevance: DART_RELEVANCE_LOCAL_FUNCTION); |
| 605 } |
| 606 |
| 535 test_keyword() { | 607 test_keyword() { |
| 536 addTestFile('library A; cl^'); | 608 addTestFile('library A; cl^'); |
| 537 return getSuggestions().then((_) { | 609 return getSuggestions().then((_) { |
| 538 expect(replacementOffset, equals(completionOffset - 2)); | 610 expect(replacementOffset, equals(completionOffset - 2)); |
| 539 expect(replacementLength, equals(2)); | 611 expect(replacementLength, equals(2)); |
| 540 assertHasResult(CompletionSuggestionKind.KEYWORD, 'export', | 612 assertHasResult(CompletionSuggestionKind.KEYWORD, 'export', |
| 541 relevance: DART_RELEVANCE_HIGH); | 613 relevance: DART_RELEVANCE_HIGH); |
| 542 assertHasResult(CompletionSuggestionKind.KEYWORD, 'class', | 614 assertHasResult(CompletionSuggestionKind.KEYWORD, 'class', |
| 543 relevance: DART_RELEVANCE_HIGH); | 615 relevance: DART_RELEVANCE_HIGH); |
| 544 }); | 616 }); |
| (...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 877 } | 949 } |
| 878 '''); | 950 '''); |
| 879 await waitForTasksFinished(); | 951 await waitForTasksFinished(); |
| 880 Request request = | 952 Request request = |
| 881 new CompletionGetSuggestionsParams(testFile, 0).toRequest('0'); | 953 new CompletionGetSuggestionsParams(testFile, 0).toRequest('0'); |
| 882 Response response = handler.handleRequest(request); | 954 Response response = handler.handleRequest(request); |
| 883 expect(response.error, isNotNull); | 955 expect(response.error, isNotNull); |
| 884 expect(response.error.code, RequestErrorCode.NO_INDEX_GENERATED); | 956 expect(response.error.code, RequestErrorCode.NO_INDEX_GENERATED); |
| 885 } | 957 } |
| 886 } | 958 } |
| OLD | NEW |