Files
sdk/pkg/analysis_server/test/verify_tests_test.dart
T
pq ea1473e6cd linter 1.32.0
See: https://github.com/dart-lang/linter/issues/3848

Change-Id: I73469ce43d52c1755875a39067b267f216ebd490
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/275044
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2022-12-15 22:51:28 +00:00

55 lines
2.0 KiB
Dart

// Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file
// 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/file_system/file_system.dart';
import 'package:analyzer/file_system/physical_file_system.dart';
import 'package:analyzer_utilities/package_root.dart' as package_root;
import 'package:analyzer_utilities/verify_tests.dart';
import 'package:path/path.dart' as package_path;
void main() {
var provider = PhysicalResourceProvider.INSTANCE;
var packageRoot = provider.pathContext.normalize(package_root.packageRoot);
var pathToAnalyze = provider.pathContext.join(packageRoot, 'analysis_server');
var testDirPath = provider.pathContext.join(pathToAnalyze, 'test');
_VerifyTests(testDirPath, excludedPaths: [
provider.pathContext.join(testDirPath, 'mock_packages')
]).build();
}
class _VerifyTests extends VerifyTests {
_VerifyTests(super.testDirPath, {super.excludedPaths});
@override
bool isExpensive(Resource resource) => resource.shortName == 'integration';
@override
bool isOkAsAdditionalTestAllImport(Folder folder, String uri) {
final pathContext = folder.provider.pathContext;
if (folder.path == pathContext.join(testDirPath, 'lsp') &&
uri == '../src/lsp/lsp_packet_transformer_test.dart') {
// `lsp/test_all.dart` also runs this one test in `lsp/src` for
// convenience.
return true;
}
if (folder.path == testDirPath &&
uri == '../tool/spec/check_all_test.dart') {
// The topmost `test_all.dart` also runs this one test in `tool` for
// convenience.
return true;
}
// Allow for updating textual expectations.
if (package_path.url.basename(uri) == 'text_expectations.dart') {
if (folder.path ==
pathContext.join(testDirPath, 'services', 'completion', 'dart')) {
return true;
}
}
return super.isOkAsAdditionalTestAllImport(folder, uri);
}
}