Skip to content

Commit a5520d0

Browse files
srawlinsCommit Queue
authored andcommitted
analyzer: Expand BlazeWorkspacePackage.isInTestDirectory to include 'testing'
This changed definition is required for google3, in order to support using `WorkspacePackage.isInTestDirectory` over the `inTestDir` extension getter. Then remove linter's export of the `inTestDir` extension method, and instead rely on WorkspacePackage in lint rules. Change-Id: I81fc6a27ca8f19f71a8b915edb3968d5d43262ac Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/431943 Commit-Queue: Samuel Rawlins <[email protected]> Reviewed-by: Konstantin Shcheglov <[email protected]>
1 parent ef7e045 commit a5520d0

File tree

7 files changed

+10
-12
lines changed

7 files changed

+10
-12
lines changed

pkg/analysis_server/lib/src/services/snippets/dart/test_definition.dart

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,7 @@ class TestDefinition extends DartSnippetProducer with TestSnippetMixin {
4343

4444
@override
4545
Future<bool> isValid() async {
46-
if (!await super.isValid()) {
47-
return false;
48-
}
49-
50-
return isInTestDirectory;
46+
return await super.isValid() && isInTestDirectory;
5147
}
5248
}
5349

pkg/analyzer/lib/src/workspace/blaze.dart

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -628,7 +628,11 @@ class BlazeWorkspacePackage extends WorkspacePackageImpl {
628628

629629
@override
630630
bool isInTestDirectory(File file) {
631-
return root.getChildAssumingFolder('test').contains(file.path);
631+
// If the package itself is a "testing" package, then [file] counts as being
632+
// "in a test directory."
633+
return root.shortName == 'testing' ||
634+
root.path.contains('/testing/') ||
635+
root.getChildAssumingFolder('test').contains(file.path);
632636
}
633637

634638
@override

pkg/linter/lib/src/analyzer.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ export 'package:analyzer/src/lint/linter.dart'
2020
MultiAnalysisRule,
2121
NodeLintRegistry;
2222
export 'package:analyzer/src/lint/pub.dart' show PSEntry, PubspecVisitor;
23-
export 'package:analyzer/src/utilities/extensions/ast.dart';
2423
export 'package:analyzer/src/workspace/pub.dart' show PubPackage;
2524

2625
export 'lint_codes.dart';

pkg/linter/lib/src/rules/use_build_context_synchronously.dart

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -937,8 +937,7 @@ class UseBuildContextSynchronously extends MultiAnalysisRule {
937937
NodeLintRegistry registry,
938938
LinterContext context,
939939
) {
940-
var unit = context.definingUnit.unit;
941-
if (!unit.inTestDir) {
940+
if (!context.isInTestDirectory) {
942941
var visitor = _Visitor(this);
943942
registry.addMethodInvocation(this, visitor);
944943
registry.addInstanceCreationExpression(this, visitor);

pkg/linter/lib/src/util/dart_type_utilities.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
import 'package:analyzer/dart/ast/ast.dart';
66
import 'package:analyzer/dart/element/element.dart';
77
import 'package:analyzer/dart/element/type.dart';
8+
import 'package:analyzer/dart/element/type_system.dart';
89
import 'package:analyzer/src/dart/element/type.dart'; // ignore: implementation_imports
910

10-
import '../analyzer.dart' hide AstNodeNullableExtension;
1111
import '../ast.dart';
1212
import '../extensions.dart';
1313

pkg/linter/tool/checks/rules/no_solo_tests.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ class NoSoloTests extends LintRule {
2929
NodeLintRegistry registry,
3030
LinterContext context,
3131
) {
32-
if (context.definingUnit.unit.inTestDir) {
32+
if (context.isInTestDirectory) {
3333
var visitor = _Visitor(this);
3434
registry.addMethodDeclaration(this, visitor);
3535
}

pkg/linter/tool/checks/rules/no_trailing_spaces.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ class NoTrailingSpaces extends LintRule {
2828
NodeLintRegistry registry,
2929
LinterContext context,
3030
) {
31-
if (context.definingUnit.unit.inTestDir) {
31+
if (context.isInTestDirectory) {
3232
var visitor = _Visitor(this);
3333
registry.addMethodInvocation(this, visitor);
3434
}

0 commit comments

Comments
 (0)