4ef2725654
We intend to publish and maintain this as a set of testing-related utilities for the analyzer packages and for analyzer plugins. Work towards https://github.com/dart-lang/sdk/issues/55660 See the doc: https://docs.google.com/document/d/1jRtd8B1ijPAP6Pz89HRnyIZXw2VMjaZx0vRZTpoNO84/edit?tab=t.0#heading=h.2sz41a544qhi Change-Id: I2764b1357a932fa955060b26d78038997eaa9536 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/425080 Reviewed-by: Slava Egorov <vegorov@google.com> Commit-Queue: Samuel Rawlins <srawlins@google.com> Reviewed-by: Paul Berry <paulberry@google.com>
59 lines
2.0 KiB
Dart
59 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_testing/package_root.dart' as package_root;
|
|
import 'package:analyzer_utilities/verify_tests.dart';
|
|
import 'package:path/path.dart' as 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) {
|
|
return resource.shortName == 'integration' ||
|
|
resource.shortName == 'benchmarks_test.dart';
|
|
}
|
|
|
|
@override
|
|
bool isOkAsAdditionalTestAllImport(Folder folder, String uri) {
|
|
var 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 (path.url.basename(uri) == 'text_expectations.dart') {
|
|
if (folder.path ==
|
|
pathContext.join(testDirPath, 'services', 'completion', 'dart')) {
|
|
return true;
|
|
}
|
|
}
|
|
|
|
return super.isOkAsAdditionalTestAllImport(folder, uri);
|
|
}
|
|
}
|