Skip to content

Commit 026c907

Browse files
committed
self review
1 parent ad703b6 commit 026c907

File tree

4 files changed

+46
-46
lines changed

4 files changed

+46
-46
lines changed

ktlint/minor-version-rules/src/main/kotlin/software/aws/ktlint/rules/MinorVersionRuleSetProvider.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,6 @@ internal const val RULE_SET = "minor-version-strategy-rules"
1212

1313
class MinorVersionRuleSetProvider : RuleSetProviderV3(RuleSetId(RULE_SET)) {
1414
override fun getRuleProviders() = setOf(
15-
RuleProvider { DeprecatedApiRule() },
15+
RuleProvider { PlannedRemovalRule() },
1616
)
1717
}
Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,17 @@ import java.io.File
1313
import java.util.Properties
1414

1515
/**
16-
* Matches @DeprecatedUntilVersion with either named args (major=x, minor=y) or positional args (x, y)
16+
* Matches @PlannedRemoval with either named args (major=x, minor=y) or positional args (x, y)
1717
*/
18-
internal fun deprecatedUntilVersionRegex(major: Int, minor: Int): Regex =
18+
internal fun plannedRemovalRegex(major: Int, minor: Int): Regex =
1919
Regex(
20-
"""@DeprecatedUntilVersion\s*\(\s*(?:major\s*=\s*$major\s*,\s*minor\s*=\s*$minor\s*|\s*$major\s*,\s*$minor\s*)\s*\)""",
20+
"""@PlannedRemoval\s*\(\s*(?:major\s*=\s*$major\s*,\s*minor\s*=\s*$minor\s*|\s*$major\s*,\s*$minor\s*)\s*\)""",
2121
)
2222

2323
/**
24-
* Creates a ktlint rule that detects APIs annotated with @DeprecatedUntilVersion for the upcoming minor version.
24+
* Creates a ktlint rule that detects APIs annotated with @PlannedRemoval for the upcoming minor version.
2525
*/
26-
class DeprecatedApiRule : Rule(RuleId("$RULE_SET:deprecated-apis"), About()) {
26+
class PlannedRemovalRule : Rule(RuleId("$RULE_SET:planned-removal"), About()) {
2727
override fun beforeVisitChildNodes(
2828
node: ASTNode,
2929
autoCorrect: Boolean,
@@ -38,11 +38,11 @@ class DeprecatedApiRule : Rule(RuleId("$RULE_SET:deprecated-apis"), About()) {
3838
val majorVersion = sdkVersion[0].toInt()
3939
val minorVersion = sdkVersion[1].toInt()
4040

41-
val regex = deprecatedUntilVersionRegex(majorVersion, minorVersion + 1)
41+
val regex = plannedRemovalRegex(majorVersion, minorVersion + 1)
4242
if (regex.containsMatchIn(node.text)) {
4343
emit(
4444
node.startOffset,
45-
"The deprecated API is scheduled for removal, please remove it before releasing the next minor version.",
45+
"API is scheduled for removal, remove it before releasing the next minor version.",
4646
false,
4747
)
4848
}

ktlint/minor-version-rules/src/test/kotlin/software/aws/ktlint/rules/DeprecatedApiRuleTest.kt

Lines changed: 0 additions & 38 deletions
This file was deleted.
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
/*
2+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
package software.aws.ktlint.rules
7+
8+
import kotlin.test.Test
9+
import kotlin.test.assertFalse
10+
import kotlin.test.assertTrue
11+
12+
class PlannedRemovalRuleTest {
13+
fun runRegexTestCases(minor: Int, major: Int) {
14+
val regex = plannedRemovalRegex(major, minor)
15+
16+
assertTrue(regex.containsMatchIn("@PlannedRemoval($major,$minor)"))
17+
assertTrue(regex.containsMatchIn("@PlannedRemoval($major,$minor )"))
18+
assertTrue(regex.containsMatchIn("@PlannedRemoval($major, $minor)"))
19+
assertTrue(regex.containsMatchIn("@PlannedRemoval($major ,$minor)"))
20+
assertTrue(regex.containsMatchIn("@PlannedRemoval( $major,$minor)"))
21+
assertTrue(regex.containsMatchIn("@PlannedRemoval( $major , $minor )"))
22+
assertTrue(regex.containsMatchIn("@PlannedRemoval(major=$major,minor=$minor)"))
23+
assertTrue(regex.containsMatchIn("@PlannedRemoval( major= $major , minor= $minor )"))
24+
25+
assertFalse(regex.containsMatchIn("@PlannedRemoval"))
26+
assertFalse(regex.containsMatchIn("@PlannedRemoval()"))
27+
assertFalse(regex.containsMatchIn("@PlannedRemoval($minor,$minor)"))
28+
assertFalse(regex.containsMatchIn("@PlannedRemoval($major,$major)"))
29+
assertFalse(regex.containsMatchIn("@PlannedRemoval($minor,$major)"))
30+
}
31+
32+
@Test
33+
fun testRegex() {
34+
runRegexTestCases(0, 1)
35+
runRegexTestCases(1, 70)
36+
runRegexTestCases(100, 1_000_000)
37+
}
38+
}

0 commit comments

Comments
 (0)