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.services.completion.dart.keyword; | 5 library test.services.completion.dart.keyword; |
6 | 6 |
7 import 'package:analysis_server/src/protocol.dart'; | 7 import 'package:analysis_server/src/protocol.dart'; |
8 import 'package:analysis_server/src/services/completion/dart_completion_manager.
dart'; | 8 import 'package:analysis_server/src/services/completion/dart_completion_manager.
dart'; |
9 import 'package:analysis_server/src/services/completion/keyword_contributor.dart
'; | 9 import 'package:analysis_server/src/services/completion/keyword_contributor.dart
'; |
10 import 'package:analyzer/src/generated/scanner.dart'; | 10 import 'package:analyzer/src/generated/scanner.dart'; |
(...skipping 781 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
792 assertSuggestKeywords([], relevance: DART_RELEVANCE_HIGH); | 792 assertSuggestKeywords([], relevance: DART_RELEVANCE_HIGH); |
793 } | 793 } |
794 | 794 |
795 test_library() { | 795 test_library() { |
796 addTestSource('library foo;^'); | 796 addTestSource('library foo;^'); |
797 expect(computeFast(), isTrue); | 797 expect(computeFast(), isTrue); |
798 assertSuggestKeywords(DIRECTIVE_AND_DECLARATION_KEYWORDS, | 798 assertSuggestKeywords(DIRECTIVE_AND_DECLARATION_KEYWORDS, |
799 relevance: DART_RELEVANCE_HIGH); | 799 relevance: DART_RELEVANCE_HIGH); |
800 } | 800 } |
801 | 801 |
| 802 test_library_declaration() { |
| 803 addTestSource('library ^'); |
| 804 expect(computeFast(), isTrue); |
| 805 assertSuggestKeywords([]); |
| 806 } |
| 807 |
| 808 test_library_declaration2() { |
| 809 addTestSource('library a^'); |
| 810 expect(computeFast(), isTrue); |
| 811 assertSuggestKeywords([]); |
| 812 } |
| 813 |
| 814 test_library_declaration3() { |
| 815 addTestSource('library a.^'); |
| 816 expect(computeFast(), isTrue); |
| 817 assertSuggestKeywords([]); |
| 818 } |
| 819 |
802 test_library_name() { | 820 test_library_name() { |
803 addTestSource('library ^'); | 821 addTestSource('library ^'); |
804 expect(computeFast(), isTrue); | 822 expect(computeFast(), isTrue); |
805 assertSuggestKeywords([]); | 823 assertSuggestKeywords([]); |
806 } | 824 } |
807 | 825 |
808 test_method_async() { | 826 test_method_async() { |
809 addTestSource('class A { foo() ^}'); | 827 addTestSource('class A { foo() ^}'); |
810 expect(computeFast(), isTrue); | 828 expect(computeFast(), isTrue); |
811 assertSuggestKeywords(CLASS_BODY_KEYWORDS, pseudoKeywords: ['async']); | 829 assertSuggestKeywords(CLASS_BODY_KEYWORDS, pseudoKeywords: ['async']); |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
989 expect(computeFast(), isTrue); | 1007 expect(computeFast(), isTrue); |
990 assertSuggestKeywords([]); | 1008 assertSuggestKeywords([]); |
991 } | 1009 } |
992 | 1010 |
993 test_prefixed_field2() { | 1011 test_prefixed_field2() { |
994 addTestSource('class A { int x; foo() {x.^ print("foo");}}'); | 1012 addTestSource('class A { int x; foo() {x.^ print("foo");}}'); |
995 expect(computeFast(), isTrue); | 1013 expect(computeFast(), isTrue); |
996 assertSuggestKeywords([]); | 1014 assertSuggestKeywords([]); |
997 } | 1015 } |
998 | 1016 |
| 1017 test_prefixed_library() { |
| 1018 addTestSource('import "b" as b; class A { foo() {b.^}}'); |
| 1019 expect(computeFast(), isTrue); |
| 1020 assertSuggestKeywords([]); |
| 1021 } |
| 1022 |
999 test_prefixed_local() { | 1023 test_prefixed_local() { |
1000 addTestSource('class A { foo() {int x; x.^}}'); | 1024 addTestSource('class A { foo() {int x; x.^}}'); |
1001 expect(computeFast(), isTrue); | 1025 expect(computeFast(), isTrue); |
1002 assertSuggestKeywords([]); | 1026 assertSuggestKeywords([]); |
1003 } | 1027 } |
1004 | 1028 |
1005 test_prefixed_local2() { | 1029 test_prefixed_local2() { |
1006 addTestSource('class A { foo() {int x; x.^ print("foo");}}'); | 1030 addTestSource('class A { foo() {int x; x.^ print("foo");}}'); |
1007 expect(computeFast(), isTrue); | 1031 expect(computeFast(), isTrue); |
1008 assertSuggestKeywords([]); | 1032 assertSuggestKeywords([]); |
1009 } | 1033 } |
1010 | 1034 |
| 1035 test_property_access() { |
| 1036 addTestSource('class A { get x => 7; foo() {new A().^}}'); |
| 1037 expect(computeFast(), isTrue); |
| 1038 assertSuggestKeywords([]); |
| 1039 } |
| 1040 |
1011 test_switch_expression() { | 1041 test_switch_expression() { |
1012 addTestSource('main() {switch(^) {}}'); | 1042 addTestSource('main() {switch(^) {}}'); |
1013 expect(computeFast(), isTrue); | 1043 expect(computeFast(), isTrue); |
1014 assertSuggestKeywords(EXPRESSION_START_NO_INSTANCE); | 1044 assertSuggestKeywords(EXPRESSION_START_NO_INSTANCE); |
1015 } | 1045 } |
1016 | 1046 |
1017 test_switch_expression2() { | 1047 test_switch_expression2() { |
1018 addTestSource('main() {switch(n^) {}}'); | 1048 addTestSource('main() {switch(n^) {}}'); |
1019 expect(computeFast(), isTrue); | 1049 expect(computeFast(), isTrue); |
1020 assertSuggestKeywords(EXPRESSION_START_NO_INSTANCE); | 1050 assertSuggestKeywords(EXPRESSION_START_NO_INSTANCE); |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1074 (c) => msg.writeln(' $c, ${other.contains(c) ? '' : '<<<<<<<<<<<'}')); | 1104 (c) => msg.writeln(' $c, ${other.contains(c) ? '' : '<<<<<<<<<<<'}')); |
1075 } | 1105 } |
1076 | 1106 |
1077 bool _equalSets(Iterable<String> iter1, Iterable<String> iter2) { | 1107 bool _equalSets(Iterable<String> iter1, Iterable<String> iter2) { |
1078 if (iter1.length != iter2.length) return false; | 1108 if (iter1.length != iter2.length) return false; |
1079 if (iter1.any((c) => !iter2.contains(c))) return false; | 1109 if (iter1.any((c) => !iter2.contains(c))) return false; |
1080 if (iter2.any((c) => !iter1.contains(c))) return false; | 1110 if (iter2.any((c) => !iter1.contains(c))) return false; |
1081 return true; | 1111 return true; |
1082 } | 1112 } |
1083 } | 1113 } |
OLD | NEW |