Skip to content

Commit d2419b7

Browse files
committed
Merge remote-tracking branch 'origin/main' into claude/fix-outdated-stub-index-X6jfP
2 parents 5592c10 + 9623f74 commit d2419b7

12 files changed

Lines changed: 246 additions & 124 deletions

File tree

.github/workflows/build.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252

5353
# Setup Gradle
5454
- name: Setup Gradle
55-
uses: gradle/actions/setup-gradle@v5
55+
uses: gradle/actions/setup-gradle@v6
5656

5757
# Build plugin
5858
- name: Build plugin
@@ -103,7 +103,7 @@ jobs:
103103

104104
# Setup Gradle
105105
- name: Setup Gradle
106-
uses: gradle/actions/setup-gradle@v5
106+
uses: gradle/actions/setup-gradle@v6
107107
with:
108108
cache-read-only: true
109109

@@ -191,7 +191,7 @@ jobs:
191191

192192
# Setup Gradle
193193
- name: Setup Gradle
194-
uses: gradle/actions/setup-gradle@v5
194+
uses: gradle/actions/setup-gradle@v6
195195
with:
196196
cache-read-only: true
197197

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040

4141
# Setup Gradle
4242
- name: Setup Gradle
43-
uses: gradle/actions/setup-gradle@v5
43+
uses: gradle/actions/setup-gradle@v6
4444
with:
4545
cache-read-only: true
4646

.github/workflows/run-ui-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ jobs:
4444

4545
# Setup Gradle
4646
- name: Setup Gradle
47-
uses: gradle/actions/setup-gradle@v5
47+
uses: gradle/actions/setup-gradle@v6
4848
with:
4949
cache-read-only: true
5050

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ pluginGroup = com.github.xepozz.testo
44
pluginName = Testo
55
pluginRepositoryUrl = https://github.com/j-plugins/testo-plugin
66
# SemVer format -> https://semver.org
7-
pluginVersion = 2026.1.6
7+
pluginVersion = 2026.2.0
88

99
# Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html
1010
pluginSinceBuild = 243

gradle/libs.versions.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ opentest4j = "1.3.0"
55

66
# plugins
77
changelog = "2.5.0"
8-
intelliJPlatform = "2.11.0"
9-
kotlin = "2.3.0"
8+
intelliJPlatform = "2.16.0"
9+
kotlin = "2.3.20"
1010
kover = "0.9.4"
11-
qodana = "2025.3.1"
11+
qodana = "2025.3.2"
1212

1313
[libraries]
1414
junit = { group = "junit", name = "junit", version.ref = "junit" }

gradle/wrapper/gradle-wrapper.jar

3.43 KB
Binary file not shown.

gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.0-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.0-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

gradlew

Lines changed: 1 addition & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gradlew.bat

Lines changed: 93 additions & 94 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/main/kotlin/com/github/xepozz/testo/mixin.kt

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,20 @@ fun PsiElement.isTestoFunction() = when(this) {
2424
else -> false
2525
}
2626

27-
fun PsiElement.isTestoMethod() = when(this) {
28-
is Method -> (modifier.isPublic && name.startsWith("test")) || hasAnyAttribute(*TestoClasses.TEST_ATTRIBUTES)
27+
fun PsiElement.isTestoMethod() = when (this) {
28+
is Method -> hasAnyAttribute(*TestoClasses.TEST_ATTRIBUTES)
29+
|| (modifier.isPublic && name.startsWith("test"))
30+
|| isPublicMethodOfTestoMarkedClass()
2931
else -> false
3032
}
3133

34+
private fun Method.isPublicMethodOfTestoMarkedClass() = when {
35+
!modifier.isPublic -> false
36+
modifier.isAbstract -> false
37+
name.startsWith("__") -> false
38+
else -> containingClass?.hasAnyAttribute(*TestoClasses.TEST_ATTRIBUTES) == true
39+
}
40+
3241
fun PsiElement.isTestoDataProviderLike() = when (this) {
3342
is Method -> modifier.isPublic && modifier.isStatic
3443
is Function -> true
@@ -39,7 +48,9 @@ fun PhpAttributesOwner.hasAttribute(fqn: String) = getAttributes(fqn).isNotEmpty
3948
fun PhpAttributesOwner.hasAnyAttribute(vararg fqn: String) = attributes.any { it.fqn in fqn }
4049

4150
fun PsiElement.isTestoClass() = when (this) {
42-
is PhpClass -> TestoTestDescriptor.isTestClassName(name) || ownMethods.any { it.isTestoMethod() || it.isTestoBench() }
51+
is PhpClass -> TestoTestDescriptor.isTestClassName(name)
52+
|| hasAnyAttribute(*TestoClasses.TEST_ATTRIBUTES)
53+
|| ownMethods.any { it.isTestoMethod() || it.isTestoBench() }
4354
else -> false
4455
}
4556

0 commit comments

Comments
 (0)