Remove file name constants from AnalysisEngine.

Change-Id: I3457973212e704a0fedee20db17956c017ec91ac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/187260
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
diff --git a/pkg/analysis_server/lib/src/domain_completion.dart b/pkg/analysis_server/lib/src/domain_completion.dart
index 6c26a54..c77e04a 100644
--- a/pkg/analysis_server/lib/src/domain_completion.dart
+++ b/pkg/analysis_server/lib/src/domain_completion.dart
@@ -153,17 +153,16 @@
   /// given [offset].
   YamlCompletionResults computeYamlSuggestions(String file, int offset) {
     var provider = server.resourceProvider;
-    if (file_paths.isAnalysisOptionsYaml(provider.pathContext, file)) {
+    var pathContext = provider.pathContext;
+    if (file_paths.isAnalysisOptionsYaml(pathContext, file)) {
       var generator = AnalysisOptionsGenerator(provider);
       return generator.getSuggestions(file, offset);
-    }
-    var fileName = provider.pathContext.basename(file);
-    if (fileName == AnalysisEngine.PUBSPEC_YAML_FILE) {
-      var generator = PubspecGenerator(provider);
-      return generator.getSuggestions(file, offset);
-    } else if (fileName == AnalysisEngine.FIX_DATA_FILE) {
+    } else if (file_paths.isFixDataYaml(pathContext, file)) {
       var generator = FixDataGenerator(provider);
       return generator.getSuggestions(file, offset);
+    } else if (file_paths.isPubspecYaml(pathContext, file)) {
+      var generator = PubspecGenerator(provider);
+      return generator.getSuggestions(file, offset);
     }
     return const YamlCompletionResults.empty();
   }
diff --git a/pkg/analysis_server/lib/src/lsp/handlers/handler_completion.dart b/pkg/analysis_server/lib/src/lsp/handlers/handler_completion.dart
index b84ae47..ea6f4c2 100644
--- a/pkg/analysis_server/lib/src/lsp/handlers/handler_completion.dart
+++ b/pkg/analysis_server/lib/src/lsp/handlers/handler_completion.dart
@@ -23,8 +23,8 @@
 import 'package:analysis_server/src/services/completion/yaml/yaml_completion_generator.dart';
 import 'package:analyzer/dart/analysis/results.dart';
 import 'package:analyzer/source/line_info.dart';
-import 'package:analyzer/src/generated/engine.dart';
 import 'package:analyzer/src/services/available_declarations.dart';
+import 'package:analyzer/src/util/file_paths.dart' as file_paths;
 import 'package:analyzer_plugin/protocol/protocol_common.dart';
 import 'package:analyzer_plugin/protocol/protocol_generated.dart' as plugin;
 
@@ -97,7 +97,6 @@
     return offset.mapResult((offset) async {
       Future<ErrorOr<List<CompletionItem>>> serverResultsFuture;
       final pathContext = server.resourceProvider.pathContext;
-      final filename = pathContext.basename(path.result);
       final fileExtension = pathContext.extension(path.result);
 
       if (fileExtension == '.dart' && !unit.isError) {
@@ -111,16 +110,12 @@
         );
       } else if (fileExtension == '.yaml') {
         YamlCompletionGenerator generator;
-        switch (filename) {
-          case AnalysisEngine.PUBSPEC_YAML_FILE:
-            generator = PubspecGenerator(server.resourceProvider);
-            break;
-          case AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE:
-            generator = AnalysisOptionsGenerator(server.resourceProvider);
-            break;
-          case AnalysisEngine.FIX_DATA_FILE:
-            generator = FixDataGenerator(server.resourceProvider);
-            break;
+        if (file_paths.isAnalysisOptionsYaml(pathContext, path.result)) {
+          generator = AnalysisOptionsGenerator(server.resourceProvider);
+        } else if (file_paths.isFixDataYaml(pathContext, path.result)) {
+          generator = FixDataGenerator(server.resourceProvider);
+        } else if (file_paths.isPubspecYaml(pathContext, path.result)) {
+          generator = PubspecGenerator(server.resourceProvider);
         }
         if (generator != null) {
           serverResultsFuture = _getServerYamlItems(
diff --git a/pkg/analysis_server/test/edit/bulk_fixes_test.dart b/pkg/analysis_server/test/edit/bulk_fixes_test.dart
index f22d513..6709373 100644
--- a/pkg/analysis_server/test/edit/bulk_fixes_test.dart
+++ b/pkg/analysis_server/test/edit/bulk_fixes_test.dart
@@ -7,7 +7,6 @@
 import 'package:analysis_server/protocol/protocol_generated.dart';
 import 'package:analysis_server/src/edit/edit_domain.dart';
 import 'package:analysis_server/src/services/linter/lint_names.dart';
-import 'package:analyzer/src/generated/engine.dart';
 import 'package:analyzer_plugin/protocol/protocol_common.dart';
 import 'package:linter/src/rules.dart';
 import 'package:meta/meta.dart';
@@ -93,14 +92,13 @@
 
     // Sub-project.
     var subprojectRoot = '$projectPath/test/data/subproject';
-    newFile('$subprojectRoot/${AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE}',
-        content: '''
+    newOptionsFile(subprojectRoot, content: '''
 linter:
   rules:
     - annotate_overrides
 ''');
 
-    newFile('$subprojectRoot/${AnalysisEngine.PUBSPEC_YAML_FILE}', content: '''
+    newPubspecYamlFile(subprojectRoot, '''
 name: subproject
 ''');
 
@@ -118,14 +116,13 @@
 
   Future<void> test_annotateOverrides_subProject() async {
     var subprojectRoot = '$projectPath/test/data/subproject';
-    newFile('$subprojectRoot/${AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE}',
-        content: '''
+    newOptionsFile(subprojectRoot, content: '''
 linter:
   rules:
     - annotate_overrides
 ''');
 
-    newFile('$subprojectRoot/${AnalysisEngine.PUBSPEC_YAML_FILE}', content: '''
+    newPubspecYamlFile(subprojectRoot, '''
 name: subproject
 ''');
 
diff --git a/pkg/analysis_server/test/integration/analysis/analysis_options_test.dart b/pkg/analysis_server/test/integration/analysis/analysis_options_test.dart
index fc5ae08..0324041 100644
--- a/pkg/analysis_server/test/integration/analysis/analysis_options_test.dart
+++ b/pkg/analysis_server/test/integration/analysis/analysis_options_test.dart
@@ -2,7 +2,7 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:analyzer/src/generated/engine.dart';
+import 'package:analyzer/src/util/file_paths.dart' as file_paths;
 import 'package:analyzer_plugin/protocol/protocol_common.dart';
 import 'package:test/test.dart';
 import 'package:test_reflective_loader/test_reflective_loader.dart';
@@ -24,7 +24,7 @@
   }
 
   Future<void> test_option_warning_optionFile() async {
-    var options = sourcePath(AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
+    var options = sourcePath(file_paths.analysisOptionsYaml);
     writeFile(options, '''
 linter:
   rules:
diff --git a/pkg/analysis_server/test/integration/analysis/lint_test.dart b/pkg/analysis_server/test/integration/analysis/lint_test.dart
index a7d5164..ffc3d8b 100644
--- a/pkg/analysis_server/test/integration/analysis/lint_test.dart
+++ b/pkg/analysis_server/test/integration/analysis/lint_test.dart
@@ -2,7 +2,7 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:analyzer/src/generated/engine.dart';
+import 'package:analyzer/src/util/file_paths.dart' as file_paths;
 import 'package:analyzer_plugin/protocol/protocol_common.dart';
 import 'package:test/test.dart';
 import 'package:test_reflective_loader/test_reflective_loader.dart';
@@ -32,7 +32,7 @@
   }
 
   Future<void> test_simple_lint_optionsFile() async {
-    writeFile(sourcePath(AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE), '''
+    writeFile(sourcePath(file_paths.analysisOptionsYaml), '''
 linter:
   rules:
     - camel_case_types
diff --git a/pkg/analysis_server/test/integration/edit/bulk_fixes_test.dart b/pkg/analysis_server/test/integration/edit/bulk_fixes_test.dart
index 9b42331..4c4d82d 100644
--- a/pkg/analysis_server/test/integration/edit/bulk_fixes_test.dart
+++ b/pkg/analysis_server/test/integration/edit/bulk_fixes_test.dart
@@ -2,7 +2,7 @@
 // for details. All rights reserved. Use of this source code is governed by a
 // BSD-style license that can be found in the LICENSE file.
 
-import 'package:analyzer/src/generated/engine.dart';
+import 'package:analyzer/src/util/file_paths.dart' as file_paths;
 import 'package:test/test.dart';
 import 'package:test_reflective_loader/test_reflective_loader.dart';
 
@@ -29,7 +29,7 @@
   }
 
   Future<void> test_bulk_fix_override() async {
-    writeFile(sourcePath(AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE), '''
+    writeFile(sourcePath(file_paths.analysisOptionsYaml), '''
 linter:
   rules:
     - annotate_overrides
diff --git a/pkg/analyzer/lib/src/analysis_options/analysis_options_provider.dart b/pkg/analyzer/lib/src/analysis_options/analysis_options_provider.dart
index 9e9cb06..6193114 100644
--- a/pkg/analyzer/lib/src/analysis_options/analysis_options_provider.dart
+++ b/pkg/analyzer/lib/src/analysis_options/analysis_options_provider.dart
@@ -5,10 +5,10 @@
 import 'dart:core';
 
 import 'package:analyzer/file_system/file_system.dart';
-import 'package:analyzer/src/generated/engine.dart';
 import 'package:analyzer/src/generated/source.dart';
 import 'package:analyzer/src/source/source_resource.dart';
 import 'package:analyzer/src/task/options.dart';
+import 'package:analyzer/src/util/file_paths.dart' as file_paths;
 import 'package:analyzer/src/util/yaml.dart';
 import 'package:source_span/source_span.dart';
 import 'package:yaml/yaml.dart';
@@ -22,7 +22,7 @@
   AnalysisOptionsProvider([this.sourceFactory]);
 
   /// Provide the options found in
-  /// [root]/[AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE].
+  /// [root]/[file_paths.analysisOptionsYaml].
   /// Recursively merge options referenced by an include directive
   /// and remove the include directive from the resulting options map.
   /// Return an empty options map if the file does not exist.
@@ -41,8 +41,7 @@
   /// then enclosing directories will be searched.
   File? getOptionsFile(Folder root) {
     for (var current in root.withAncestors) {
-      var name = AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE;
-      var file = current.getChildAssumingFile(name);
+      var file = current.getChildAssumingFile(file_paths.analysisOptionsYaml);
       if (file.exists) {
         return file;
       }
diff --git a/pkg/analyzer/lib/src/context/builder.dart b/pkg/analyzer/lib/src/context/builder.dart
index b5e8a0a..0c6052a 100644
--- a/pkg/analyzer/lib/src/context/builder.dart
+++ b/pkg/analyzer/lib/src/context/builder.dart
@@ -28,6 +28,7 @@
 import 'package:analyzer/src/summary/package_bundle_reader.dart';
 import 'package:analyzer/src/summary/summary_sdk.dart';
 import 'package:analyzer/src/task/options.dart';
+import 'package:analyzer/src/util/file_paths.dart' as file_paths;
 import 'package:analyzer/src/workspace/basic.dart';
 import 'package:analyzer/src/workspace/bazel.dart';
 import 'package:analyzer/src/workspace/gn.dart';
@@ -356,8 +357,7 @@
 
     var folder = resourceProvider.getFolder(path);
     for (var current in folder.withAncestors) {
-      var name = AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE;
-      var file = current.getChildAssumingFile(name);
+      var file = current.getChildAssumingFile(file_paths.analysisOptionsYaml);
       if (file.exists) {
         return file;
       }
diff --git a/pkg/analyzer/lib/src/dart/micro/resolve_file.dart b/pkg/analyzer/lib/src/dart/micro/resolve_file.dart
index 9e68e5b..79a9088 100644
--- a/pkg/analyzer/lib/src/dart/micro/resolve_file.dart
+++ b/pkg/analyzer/lib/src/dart/micro/resolve_file.dart
@@ -22,8 +22,7 @@
 import 'package:analyzer/src/dart/micro/library_analyzer.dart';
 import 'package:analyzer/src/dart/micro/library_graph.dart';
 import 'package:analyzer/src/exception/exception.dart';
-import 'package:analyzer/src/generated/engine.dart'
-    show AnalysisEngine, AnalysisOptionsImpl;
+import 'package:analyzer/src/generated/engine.dart' show AnalysisOptionsImpl;
 import 'package:analyzer/src/generated/source.dart';
 import 'package:analyzer/src/summary/api_signature.dart';
 import 'package:analyzer/src/summary/format.dart';
@@ -33,6 +32,7 @@
 import 'package:analyzer/src/summary2/linked_element_factory.dart';
 import 'package:analyzer/src/summary2/reference.dart';
 import 'package:analyzer/src/task/options.dart';
+import 'package:analyzer/src/util/file_paths.dart' as file_paths;
 import 'package:analyzer/src/util/performance/operation_performance.dart';
 import 'package:analyzer/src/workspace/workspace.dart';
 import 'package:yaml/yaml.dart';
@@ -487,8 +487,7 @@
 
   File? _findOptionsFile(Folder folder) {
     for (var current in folder.withAncestors) {
-      var name = AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE;
-      var file = _getFile(current, name);
+      var file = _getFile(current, file_paths.analysisOptionsYaml);
       if (file != null) {
         return file;
       }
diff --git a/pkg/analyzer/lib/src/generated/engine.dart b/pkg/analyzer/lib/src/generated/engine.dart
index 3848bf9..9a4d376 100644
--- a/pkg/analyzer/lib/src/generated/engine.dart
+++ b/pkg/analyzer/lib/src/generated/engine.dart
@@ -87,19 +87,6 @@
 /// The entry point for the functionality provided by the analysis engine. There
 /// is a single instance of this class.
 class AnalysisEngine {
-  /// The file name used for analysis options files.
-  static const String ANALYSIS_OPTIONS_YAML_FILE = 'analysis_options.yaml';
-
-  /// The file name used for the files containing the data for the data-driven
-  /// fixes.
-  static const String FIX_DATA_FILE = 'fix_data.yaml';
-
-  /// The file name used for pubspec files.
-  static const String PUBSPEC_YAML_FILE = 'pubspec.yaml';
-
-  /// The file name used for Android manifest files.
-  static const String ANDROID_MANIFEST_FILE = 'AndroidManifest.xml';
-
   /// The unique instance of this class.
   static final AnalysisEngine instance = AnalysisEngine._();
 
diff --git a/pkg/analyzer/lib/src/pubspec/pubspec_validator.dart b/pkg/analyzer/lib/src/pubspec/pubspec_validator.dart
index ecdfffd..36d2133 100644
--- a/pkg/analyzer/lib/src/pubspec/pubspec_validator.dart
+++ b/pkg/analyzer/lib/src/pubspec/pubspec_validator.dart
@@ -8,6 +8,7 @@
 import 'package:analyzer/src/generated/engine.dart';
 import 'package:analyzer/src/generated/source.dart';
 import 'package:analyzer/src/pubspec/pubspec_warning_code.dart';
+import 'package:analyzer/src/util/file_paths.dart' as file_paths;
 import 'package:analyzer/src/util/yaml.dart';
 import 'package:path/path.dart' as path;
 import 'package:source_span/src/span.dart';
@@ -266,9 +267,7 @@
           _reportErrorForNode(reporter, pathValue(),
               PubspecWarningCode.PATH_DOES_NOT_EXIST, [pathEntry]);
         } else {
-          if (!packageFolder
-              .getChild(AnalysisEngine.PUBSPEC_YAML_FILE)
-              .exists) {
+          if (!packageFolder.getChild(file_paths.pubspecYaml).exists) {
             _reportErrorForNode(reporter, pathValue(),
                 PubspecWarningCode.PATH_PUBSPEC_DOES_NOT_EXIST, [pathEntry]);
           }
diff --git a/pkg/analyzer/test/source/analysis_options_provider_test.dart b/pkg/analyzer/test/source/analysis_options_provider_test.dart
index f139239..ac4ea13 100644
--- a/pkg/analyzer/test/source/analysis_options_provider_test.dart
+++ b/pkg/analyzer/test/source/analysis_options_provider_test.dart
@@ -7,8 +7,8 @@
 import 'package:analyzer/file_system/file_system.dart';
 import 'package:analyzer/file_system/memory_file_system.dart';
 import 'package:analyzer/src/analysis_options/analysis_options_provider.dart';
-import 'package:analyzer/src/generated/engine.dart';
 import 'package:analyzer/src/generated/source.dart';
+import 'package:analyzer/src/util/file_paths.dart' as file_paths;
 import 'package:analyzer/src/util/yaml.dart';
 import 'package:test/test.dart';
 import 'package:test_reflective_loader/test_reflective_loader.dart';
@@ -105,7 +105,7 @@
 
   late final AnalysisOptionsProvider provider;
 
-  String get optionsFileName => AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE;
+  String get analysisOptionsYaml => file_paths.analysisOptionsYaml;
 
   void setUp() {
     var rawProvider = MemoryResourceProvider();
@@ -118,12 +118,12 @@
 
   void test_getOptions_crawlUp_hasInFolder() {
     pathTranslator.newFolder('/foo/bar');
-    pathTranslator.newFile('/foo/$optionsFileName', r'''
+    pathTranslator.newFile('/foo/$analysisOptionsYaml', r'''
 analyzer:
   ignore:
     - foo
 ''');
-    pathTranslator.newFile('/foo/bar/$optionsFileName', r'''
+    pathTranslator.newFile('/foo/bar/$analysisOptionsYaml', r'''
 analyzer:
   ignore:
     - bar
@@ -139,12 +139,12 @@
 
   void test_getOptions_crawlUp_hasInParent() {
     pathTranslator.newFolder('/foo/bar/baz');
-    pathTranslator.newFile('/foo/$optionsFileName', r'''
+    pathTranslator.newFile('/foo/$analysisOptionsYaml', r'''
 analyzer:
   ignore:
     - foo
 ''');
-    pathTranslator.newFile('/foo/bar/$optionsFileName', r'''
+    pathTranslator.newFile('/foo/bar/$analysisOptionsYaml', r'''
 analyzer:
   ignore:
     - bar
@@ -165,7 +165,7 @@
   }
 
   void test_getOptions_empty() {
-    pathTranslator.newFile('/$optionsFileName', r'''#empty''');
+    pathTranslator.newFile('/$analysisOptionsYaml', r'''#empty''');
     YamlMap options = _getOptions('/');
     expect(options, isNotNull);
     expect(options, isEmpty);
@@ -178,7 +178,7 @@
     - ignoreme.dart
     - 'sdk_ext/**'
 ''');
-    pathTranslator.newFile('/$optionsFileName', r'''
+    pathTranslator.newFile('/$analysisOptionsYaml', r'''
 include: foo.include
 ''');
     YamlMap options = _getOptions('/');
@@ -196,7 +196,7 @@
   }
 
   void test_getOptions_include_missing() {
-    pathTranslator.newFile('/$optionsFileName', r'''
+    pathTranslator.newFile('/$analysisOptionsYaml', r'''
 include: /foo.include
 ''');
     YamlMap options = _getOptions('/');
@@ -204,13 +204,13 @@
   }
 
   void test_getOptions_invalid() {
-    pathTranslator.newFile('/$optionsFileName', r''':''');
+    pathTranslator.newFile('/$analysisOptionsYaml', r''':''');
     YamlMap options = _getOptions('/');
     expect(options, hasLength(1));
   }
 
   void test_getOptions_simple() {
-    pathTranslator.newFile('/$optionsFileName', r'''
+    pathTranslator.newFile('/$analysisOptionsYaml', r'''
 analyzer:
   ignore:
     - ignoreme.dart
diff --git a/pkg/analyzer/test/src/context/builder_test.dart b/pkg/analyzer/test/src/context/builder_test.dart
index 7b4e4fa..d650f9c 100644
--- a/pkg/analyzer/test/src/context/builder_test.dart
+++ b/pkg/analyzer/test/src/context/builder_test.dart
@@ -103,8 +103,7 @@
     ];
 
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: '''
+    newOptionsFile(path, content: '''
 linter:
   rules:
     - mock_lint_rule
@@ -128,8 +127,7 @@
     ];
 
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: '''
+    newOptionsFile(path, content: '''
 linter:
   rules:
     - mock_lint_rule
@@ -153,8 +151,7 @@
     ];
 
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: '''
+    newOptionsFile(path, content: '''
 linter:
   rules:
     - mock_lint_rule
@@ -176,8 +173,7 @@
     expected.lintRules = <LintRule>[];
 
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: '''
+    newOptionsFile(path, content: '''
 ''');
 
     var options = _getAnalysisOptions(builder, path);
@@ -536,8 +532,7 @@
     builderOptions.defaultOptions = defaultOptions;
     AnalysisOptionsImpl expected = AnalysisOptionsImpl();
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: '''
+    newOptionsFile(path, content: '''
 linter:
   rules:
     - non_existent_lint_rule
@@ -554,8 +549,7 @@
     AnalysisOptionsImpl expected = AnalysisOptionsImpl();
     expected.implicitDynamic = false;
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: '''
+    newOptionsFile(path, content: '''
 analyzer:
   strong-mode:
     implicit-dynamic: false
@@ -609,8 +603,7 @@
   rules:
     - mock_lint_rule2
 ''');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: '''
+    newOptionsFile(path, content: '''
 include: bar.yaml
 linter:
   rules:
@@ -623,8 +616,7 @@
 
   void test_getAnalysisOptions_invalid() {
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: ';');
+    newOptionsFile(path, content: ';');
 
     AnalysisOptions options = _getAnalysisOptions(builder, path);
     expect(options, isNotNull);
@@ -632,8 +624,7 @@
 
   void test_getAnalysisOptions_noDefault_noOverrides() {
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: '''
+    newOptionsFile(path, content: '''
 linter:
   rules:
     - non_existent_lint_rule
@@ -647,8 +638,7 @@
     AnalysisOptionsImpl expected = AnalysisOptionsImpl();
     expected.implicitDynamic = false;
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: '''
+    newOptionsFile(path, content: '''
 analyzer:
   strong-mode:
     implicit-dynamic: false
@@ -660,22 +650,21 @@
 
   void test_getAnalysisOptions_optionsPath() {
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath, content: '''
+    String filePath = newOptionsFile(path, content: '''
 linter:
   rules:
     - empty_constructor_bodies
-''');
+''').path;
 
     ContextRoot root =
         ContextRoot(path, [], pathContext: resourceProvider.pathContext);
     _getAnalysisOptions(builder, path, contextRoot: root);
-    expect(root.optionsFilePath, equals(filePath));
+    expect(root.optionsFilePath, filePath);
   }
 
   void test_getAnalysisOptions_sdkVersionConstraint() {
     var projectPath = convertPath('/test');
-    newFile(join(projectPath, AnalysisEngine.PUBSPEC_YAML_FILE), content: '''
+    newPubspecYamlFile(projectPath, '''
 environment:
   sdk: ^2.1.0
 ''');
@@ -704,9 +693,7 @@
   void test_getOptionsFile_inParentOfRoot_new() {
     String parentPath = convertPath('/some/directory');
     String path = join(parentPath, 'path');
-    String filePath =
-        join(parentPath, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath);
+    String filePath = newOptionsFile(path).path;
 
     var result = builder.getOptionsFile(path)!;
     expect(result, isNotNull);
@@ -715,8 +702,7 @@
 
   void test_getOptionsFile_inRoot_new() {
     String path = convertPath('/some/directory/path');
-    String filePath = join(path, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
-    newFile(filePath);
+    String filePath = newOptionsFile(path).path;
 
     var result = builder.getOptionsFile(path)!;
     expect(result, isNotNull);
diff --git a/pkg/analyzer_cli/lib/src/driver.dart b/pkg/analyzer_cli/lib/src/driver.dart
index 7452a90..1e65979 100644
--- a/pkg/analyzer_cli/lib/src/driver.dart
+++ b/pkg/analyzer_cli/lib/src/driver.dart
@@ -267,9 +267,9 @@
       }
 
       // Analyze the libraries.
+      var pathContext = resourceProvider.pathContext;
       for (var path in filesToAnalyze) {
-        var shortName = resourceProvider.pathContext.basename(path);
-        if (shortName == AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE) {
+        if (file_paths.isAnalysisOptionsYaml(pathContext, path)) {
           var file = resourceProvider.getFile(path);
           var content = file.readAsStringSync();
           var lineInfo = LineInfo.fromContent(content);
@@ -286,7 +286,7 @@
               allResult = allResult.max(severity);
             }
           }
-        } else if (shortName == AnalysisEngine.PUBSPEC_YAML_FILE) {
+        } else if (file_paths.isPubspecYaml(pathContext, path)) {
           var errors = <AnalysisError>[];
           try {
             var file = resourceProvider.getFile(path);
@@ -309,7 +309,7 @@
                 }
               }
               if (visitors.isNotEmpty) {
-                var sourceUri = resourceProvider.pathContext.toUri(path);
+                var sourceUri = pathContext.toUri(path);
                 var pubspecAst = Pubspec.parse(content,
                     sourceUrl: sourceUri, resourceProvider: resourceProvider);
                 var listener = RecordingErrorListener();
@@ -339,7 +339,7 @@
           } catch (exception) {
             // If the file cannot be analyzed, ignore it.
           }
-        } else if (shortName == AnalysisEngine.ANDROID_MANIFEST_FILE) {
+        } else if (file_paths.isAndroidManifestXml(pathContext, path)) {
           try {
             var file = resourceProvider.getFile(path);
             var content = file.readAsStringSync();
diff --git a/pkg/analyzer_cli/test/driver_test.dart b/pkg/analyzer_cli/test/driver_test.dart
index 61ea617..249b959 100644
--- a/pkg/analyzer_cli/test/driver_test.dart
+++ b/pkg/analyzer_cli/test/driver_test.dart
@@ -11,6 +11,7 @@
 import 'package:analyzer/src/generated/engine.dart';
 import 'package:analyzer/src/generated/source.dart';
 import 'package:analyzer/src/summary2/package_bundle_format.dart';
+import 'package:analyzer/src/util/file_paths.dart' as file_paths;
 import 'package:analyzer/src/util/sdk.dart';
 import 'package:analyzer_cli/src/ansi.dart' as ansi;
 import 'package:analyzer_cli/src/driver.dart';
@@ -59,9 +60,9 @@
   }) async {
     filePath = _posixToPlatformPath(filePath);
 
-    var optionsFileName = AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE;
-    var options =
-        _posixToPlatformPath('data/options_tests_project/' + optionsFileName);
+    var options = _posixToPlatformPath(
+      'data/options_tests_project/' + file_paths.analysisOptionsYaml,
+    );
 
     var args = <String>[];
     args.add('--build-mode');
@@ -804,7 +805,7 @@
 
 @reflectiveTest
 class LinterTest extends BaseTest {
-  String get optionsFileName => AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE;
+  String get analysisOptionsYaml => file_paths.analysisOptionsYaml;
 
   Future<void> test_containsLintRuleEntry() async {
     var options = _parseOptions('''
@@ -882,7 +883,7 @@
 
   Future<void> test_pubspec_lintsInOptions_generatedLints() async {
     await drive('data/linter_project/pubspec.yaml',
-        options: 'data/linter_project/$optionsFileName');
+        options: 'data/linter_project/$analysisOptionsYaml');
     expect(bulletToDash(outSink), contains('lint - Sort pub dependencies'));
   }
 
@@ -891,17 +892,17 @@
 
   Future<void> _runLinter_defaultLints() async {
     await drive('data/linter_project/test_file.dart',
-        options: 'data/linter_project/$optionsFileName', args: ['--lints']);
+        options: 'data/linter_project/$analysisOptionsYaml', args: ['--lints']);
   }
 
   Future<void> _runLinter_lintsInOptions() async {
     await drive('data/linter_project/test_file.dart',
-        options: 'data/linter_project/$optionsFileName', args: ['--lints']);
+        options: 'data/linter_project/$analysisOptionsYaml', args: ['--lints']);
   }
 
   Future<void> _runLinter_noLintsFlag() async {
     await drive('data/no_lints_project/test_file.dart',
-        options: 'data/no_lints_project/$optionsFileName');
+        options: 'data/no_lints_project/$analysisOptionsYaml');
   }
 }
 
@@ -909,8 +910,7 @@
 class NonDartFilesTest extends BaseTest {
   Future<void> test_analysisOptionsYaml() async {
     await withTempDirAsync((tempDir) async {
-      var filePath =
-          path.join(tempDir, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
+      var filePath = path.join(tempDir, file_paths.analysisOptionsYaml);
       File(filePath).writeAsStringSync('''
 analyzer:
   string-mode: true
@@ -926,15 +926,13 @@
 
   Future<void> test_manifestFileChecks() async {
     await withTempDirAsync((tempDir) async {
-      var filePath =
-          path.join(tempDir, AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE);
+      var filePath = path.join(tempDir, file_paths.analysisOptionsYaml);
       File(filePath).writeAsStringSync('''
 analyzer:
   optional-checks:
     chrome-os-manifest-checks: true
 ''');
-      var manifestPath =
-          path.join(tempDir, AnalysisEngine.ANDROID_MANIFEST_FILE);
+      var manifestPath = path.join(tempDir, file_paths.androidManifestXml);
       File(manifestPath).writeAsStringSync('''
 <manifest
     xmlns:android="http://schemas.android.com/apk/res/android">
@@ -953,7 +951,7 @@
 
   Future<void> test_pubspecYaml() async {
     await withTempDirAsync((tempDir) async {
-      var filePath = path.join(tempDir, AnalysisEngine.PUBSPEC_YAML_FILE);
+      var filePath = path.join(tempDir, file_paths.pubspecYaml);
       File(filePath).writeAsStringSync('''
 name: foo
 flutter:
@@ -972,7 +970,7 @@
 
 @reflectiveTest
 class OptionsTest extends BaseTest {
-  String get optionsFileName => AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE;
+  String get analysisOptionsYaml => file_paths.analysisOptionsYaml;
 
   List<ErrorProcessor> get processors => analysisOptions.errorProcessors;
 
@@ -981,7 +979,7 @@
 
   Future<void> test_analysisOptions_excludes() async {
     await drive('data/exclude_test_project',
-        options: 'data/exclude_test_project/$optionsFileName');
+        options: 'data/exclude_test_project/$analysisOptionsYaml');
     _expectUndefinedClassErrorsWithoutExclusions();
   }
 
@@ -990,7 +988,7 @@
     // The exclude is relative to the project, not/ the analyzed path, and it
     // has to then understand that.
     await drive('data/exclude_test_project',
-        options: 'data/exclude_test_project/$optionsFileName');
+        options: 'data/exclude_test_project/$analysisOptionsYaml');
     _expectUndefinedClassErrorsWithoutExclusions();
   }
 
@@ -1066,7 +1064,7 @@
   Future<void> test_withFlags_overrideFatalWarning() async {
     await drive('data/options_tests_project/test_file.dart',
         args: ['--fatal-warnings'],
-        options: 'data/options_tests_project/$optionsFileName');
+        options: 'data/options_tests_project/$analysisOptionsYaml');
 
     // missing_return: error
     var undefined_function = AnalysisError(
@@ -1082,7 +1080,7 @@
 
   Future<void> _driveBasic() async {
     await drive('data/options_tests_project/test_file.dart',
-        options: 'data/options_tests_project/$optionsFileName');
+        options: 'data/options_tests_project/$analysisOptionsYaml');
   }
 
   void _expectUndefinedClassErrorsWithoutExclusions() {