Completion: Issue 55014: Add named constructors to suggestions for enum values.

Fixes https://github.com/dart-lang/sdk/issues/55014

Change-Id: I6635c76fd84d0fe364febf6264cd38f0c17c2f19
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/356120
Commit-Queue: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
diff --git a/pkg/analysis_server/lib/src/services/completion/dart/declaration_helper.dart b/pkg/analysis_server/lib/src/services/completion/dart/declaration_helper.dart
index f4de511..e72802c 100644
--- a/pkg/analysis_server/lib/src/services/completion/dart/declaration_helper.dart
+++ b/pkg/analysis_server/lib/src/services/completion/dart/declaration_helper.dart
@@ -383,7 +383,7 @@
         var augmented = element.augmented;
         _addStaticMembers(
             accessors: augmented?.accessors ?? element.accessors,
-            constructors: const [],
+            constructors: augmented?.constructors ?? element.constructors,
             containingElement: element,
             fields: augmented?.fields ?? element.fields,
             methods: augmented?.methods ?? element.methods);
diff --git a/pkg/analysis_server/test/services/completion/dart/declaration/enum_test.dart b/pkg/analysis_server/test/services/completion/dart/declaration/enum_test.dart
index c7e7594..8417c7b 100644
--- a/pkg/analysis_server/test/services/completion/dart/declaration/enum_test.dart
+++ b/pkg/analysis_server/test/services/completion/dart/declaration/enum_test.dart
@@ -184,6 +184,29 @@
 ''');
   }
 
+  Future<void> test_afterPeriod_namedConstructor() async {
+    allowedIdentifiers = {'named'};
+    await computeSuggestions('''
+enum E0 {
+  o0, t0;
+
+   factory E0.named() =>  E0.o0;
+}
+void f() {
+  E0.^
+}
+''');
+    assertResponse(r'''
+suggestions
+  named
+    kind: constructorInvocation
+  o0
+    kind: enumConstant
+  t0
+    kind: enumConstant
+''');
+  }
+
   Future<void> test_afterPeriod_partial() async {
     await computeSuggestions('''
 enum E0 {