mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 03:27:43 +00:00
Revert "Stop using available suggestions for already imported libraries"
This reverts commit 3cc518b3cc
.
Initial CL: https://dart-review.googlesource.com/c/sdk/+/201021
Bug: https://github.com/flutter/flutter-intellij/issues/5761
Change-Id: I62e57deef819f78f1d08934ad924585eaa52223b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/214225
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Jacob Richman <jacobr@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
This commit is contained in:
parent
57e71e33c5
commit
6207d1da35
|
@ -99,7 +99,6 @@ class CiderCompletionComputer {
|
|||
return await manager.computeSuggestions(
|
||||
performance,
|
||||
completionRequest,
|
||||
enableImportedReferenceContributor: false,
|
||||
enableOverrideContributor: false,
|
||||
enableUriContributor: false,
|
||||
);
|
||||
|
|
|
@ -37,9 +37,8 @@ void computeIncludedSetList(
|
|||
) {
|
||||
int relevance;
|
||||
if (importedUriSet.contains(library.uri)) {
|
||||
return;
|
||||
}
|
||||
if (library.isDeprecated) {
|
||||
relevance = importedRelevance;
|
||||
} else if (library.isDeprecated) {
|
||||
relevance = deprecatedRelevance;
|
||||
} else {
|
||||
relevance = otherwiseRelevance;
|
||||
|
|
|
@ -92,7 +92,6 @@ class DartCompletionManager {
|
|||
Future<List<CompletionSuggestion>> computeSuggestions(
|
||||
OperationPerformanceImpl performance,
|
||||
CompletionRequest request, {
|
||||
bool enableImportedReferenceContributor = true,
|
||||
bool enableOverrideContributor = true,
|
||||
bool enableUriContributor = true,
|
||||
CompletionPreference? completionPreference,
|
||||
|
@ -131,7 +130,6 @@ class DartCompletionManager {
|
|||
CombinatorContributor(),
|
||||
ExtensionMemberContributor(),
|
||||
FieldFormalContributor(),
|
||||
if (enableImportedReferenceContributor) ImportedReferenceContributor(),
|
||||
KeywordContributor(),
|
||||
LabelContributor(),
|
||||
LibraryMemberContributor(),
|
||||
|
@ -150,6 +148,8 @@ class DartCompletionManager {
|
|||
if (includedElementKinds != null) {
|
||||
_addIncludedElementKinds(dartRequest);
|
||||
_addIncludedSuggestionRelevanceTags(dartRequest);
|
||||
} else {
|
||||
contributors.add(ImportedReferenceContributor());
|
||||
}
|
||||
|
||||
try {
|
||||
|
|
|
@ -71,7 +71,6 @@ abstract class AbstractCompletionDriverTest with ResourceProviderMixin {
|
|||
}
|
||||
|
||||
void assertSuggestion({
|
||||
bool allowMultiple = false,
|
||||
required String completion,
|
||||
ElementKind? element,
|
||||
CompletionSuggestionKind? kind,
|
||||
|
@ -79,7 +78,6 @@ abstract class AbstractCompletionDriverTest with ResourceProviderMixin {
|
|||
}) {
|
||||
expect(
|
||||
suggestionWith(
|
||||
allowMultiple: allowMultiple,
|
||||
completion: completion,
|
||||
element: element,
|
||||
kind: kind,
|
||||
|
@ -184,7 +182,6 @@ project:${toUri('$projectPath/lib')}
|
|||
completion: completion, element: element, kind: kind, file: file));
|
||||
|
||||
CompletionSuggestion suggestionWith({
|
||||
bool allowMultiple = false,
|
||||
required String completion,
|
||||
ElementKind? element,
|
||||
CompletionSuggestionKind? kind,
|
||||
|
@ -192,9 +189,7 @@ project:${toUri('$projectPath/lib')}
|
|||
}) {
|
||||
final matches = suggestionsWith(
|
||||
completion: completion, element: element, kind: kind, file: file);
|
||||
if (!allowMultiple) {
|
||||
expect(matches, hasLength(1));
|
||||
}
|
||||
return matches.first;
|
||||
}
|
||||
|
||||
|
@ -269,10 +264,7 @@ void f() {
|
|||
}
|
||||
''');
|
||||
|
||||
// TODO(brianwilkerson) There should be a single suggestion here after we
|
||||
// figure out how to stop the duplication.
|
||||
assertSuggestion(
|
||||
allowMultiple: true,
|
||||
completion: 'A',
|
||||
element: ElementKind.CONSTRUCTOR,
|
||||
kind: CompletionSuggestionKind.INVOCATION);
|
||||
|
@ -296,11 +288,7 @@ void f() {
|
|||
^
|
||||
}
|
||||
''');
|
||||
|
||||
// TODO(brianwilkerson) There should be a single suggestion here after we
|
||||
// figure out how to stop the duplication.
|
||||
assertSuggestion(
|
||||
allowMultiple: true,
|
||||
completion: 'E.e',
|
||||
element: ElementKind.ENUM_CONSTANT,
|
||||
kind: CompletionSuggestionKind.INVOCATION);
|
||||
|
@ -325,10 +313,7 @@ void f() {
|
|||
}
|
||||
''');
|
||||
|
||||
// TODO(brianwilkerson) There should be a single suggestion here after we
|
||||
// figure out how to stop the duplication.
|
||||
assertSuggestion(
|
||||
allowMultiple: true,
|
||||
completion: 'A.a',
|
||||
element: ElementKind.CONSTRUCTOR,
|
||||
kind: CompletionSuggestionKind.INVOCATION);
|
||||
|
@ -661,15 +646,13 @@ void f() {
|
|||
}
|
||||
''');
|
||||
|
||||
// TODO(brianwilkerson) There should be a single suggestion here after we
|
||||
// figure out how to stop the duplication.
|
||||
expect(
|
||||
suggestionsWith(
|
||||
completion: 'Future.value',
|
||||
file: '/sdk/lib/async/async.dart',
|
||||
element: ElementKind.CONSTRUCTOR,
|
||||
kind: CompletionSuggestionKind.INVOCATION),
|
||||
hasLength(2));
|
||||
hasLength(1));
|
||||
}
|
||||
|
||||
Future<void> test_sdk_lib_suggestions() async {
|
||||
|
|
|
@ -1560,7 +1560,7 @@ void f() {
|
|||
expect(completions, hasLength(1));
|
||||
final resolved = await resolveCompletion(completions.first);
|
||||
// It should not include auto-import text since it's already imported.
|
||||
expect(resolved.detail, isNot(contains('Auto import from')));
|
||||
expect(resolved.detail, isNull);
|
||||
}
|
||||
|
||||
Future<void> test_suggestionSets_filtersOutAlreadyImportedSymbols() async {
|
||||
|
|
|
@ -15,13 +15,7 @@ void main() {
|
|||
|
||||
@reflectiveTest
|
||||
class BoolAssignmentTest extends CompletionRelevanceTest {
|
||||
@failingTest
|
||||
Future<void> test_boolLiterals_imported() async {
|
||||
// TODO(brianwilkerson) This test is arguably invalid given that there's no
|
||||
// data to suggest that the boolean keywords should appear before a
|
||||
// constructor in the list, but it does seem likely to be valid in this
|
||||
// case, so we should investigate features that might cause this test to
|
||||
// start passing again.
|
||||
await addTestFile('''
|
||||
foo() {
|
||||
bool b;
|
||||
|
|
Loading…
Reference in a new issue