aboutsummaryrefslogtreecommitdiff
path: root/ktlint-ruleset-standard/src/test/kotlin/com/github/shyiko/ktlint/ruleset/standard/NoLineBreakBeforeAssignmentRuleTest.kt
diff options
context:
space:
mode:
Diffstat (limited to 'ktlint-ruleset-standard/src/test/kotlin/com/github/shyiko/ktlint/ruleset/standard/NoLineBreakBeforeAssignmentRuleTest.kt')
-rw-r--r--ktlint-ruleset-standard/src/test/kotlin/com/github/shyiko/ktlint/ruleset/standard/NoLineBreakBeforeAssignmentRuleTest.kt69
1 files changed, 69 insertions, 0 deletions
diff --git a/ktlint-ruleset-standard/src/test/kotlin/com/github/shyiko/ktlint/ruleset/standard/NoLineBreakBeforeAssignmentRuleTest.kt b/ktlint-ruleset-standard/src/test/kotlin/com/github/shyiko/ktlint/ruleset/standard/NoLineBreakBeforeAssignmentRuleTest.kt
new file mode 100644
index 00000000..55ac3e39
--- /dev/null
+++ b/ktlint-ruleset-standard/src/test/kotlin/com/github/shyiko/ktlint/ruleset/standard/NoLineBreakBeforeAssignmentRuleTest.kt
@@ -0,0 +1,69 @@
+package com.github.shyiko.ktlint.ruleset.standard
+
+import com.github.shyiko.ktlint.core.LintError
+import com.github.shyiko.ktlint.test.format
+import com.github.shyiko.ktlint.test.lint
+import org.assertj.core.api.Assertions.assertThat
+import org.testng.annotations.Test
+
+const val ruleId = "no-line-break-before-assignment"
+
+class NoLineBreakBeforeAssignmentRuleTest {
+ @Test
+ fun testAllPartsOnSameLineIsValid() {
+ assertThat(NoLineBreakBeforeAssignmentRule().lint(
+ """
+ val valA = ""
+ """.trimIndent()
+ )).isEmpty()
+ }
+
+ @Test
+ fun testLineBreakAfterAssignmentIsValid() {
+ assertThat(NoLineBreakBeforeAssignmentRule().lint(
+ """
+ val valA =
+ ""
+ """.trimIndent()
+ )).isEmpty()
+ }
+
+ @Test
+ fun testLineBreakBeforeAssignmentIsViolation() {
+ assertThat(NoLineBreakBeforeAssignmentRule().lint(
+ """
+ val valA
+ = ""
+ """.trimIndent()
+ )).isEqualTo(listOf(
+ LintError(2, 7, ruleId, "Line break before assignment is not allowed")
+ ))
+ }
+
+ @Test
+ fun testViolationInFunction() {
+ assertThat(NoLineBreakBeforeAssignmentRule().lint(
+ """
+ fun funA()
+ = ""
+ """.trimIndent()
+ )).isEqualTo(listOf(
+ LintError(2, 7, ruleId, "Line break before assignment is not allowed")
+ ))
+ }
+
+ @Test
+ fun testFixViolationByRemovingLineBreakFromLeftAndPutItOnRightSide() {
+ assertThat(NoLineBreakBeforeAssignmentRule().format(
+ """
+ fun funA()
+ = ""
+ """.trimIndent()
+ )).isEqualTo(
+ """
+ fun funA() =
+ ""
+ """.trimIndent()
+ )
+ }
+}