diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/main/java/org/zwobble/hobgoblin/compiler/util/Casing.java | 4 | ||||
| -rw-r--r-- | src/test/java/org/zwobble/hobgoblin/compiler/util/CasingTests.java | 15 |
2 files changed, 19 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/util/Casing.java b/src/main/java/org/zwobble/hobgoblin/compiler/util/Casing.java index e99aec6..3705f99 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/util/Casing.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/util/Casing.java @@ -9,6 +9,10 @@ public class Casing { return name.substring(0, 1).toUpperCase(Locale.ROOT) + name.substring(1); } + public static String upperCamelCaseToLowerCamelCase(String name) { + return name.substring(0, 1).toLowerCase(Locale.ROOT) + name.substring(1); + } + public static String lowerCamelCaseToUpperCase(String lowerCamelCase) { var upperCase = new StringBuilder(); diff --git a/src/test/java/org/zwobble/hobgoblin/compiler/util/CasingTests.java b/src/test/java/org/zwobble/hobgoblin/compiler/util/CasingTests.java index 561ec8a..5893335 100644 --- a/src/test/java/org/zwobble/hobgoblin/compiler/util/CasingTests.java +++ b/src/test/java/org/zwobble/hobgoblin/compiler/util/CasingTests.java @@ -1,5 +1,6 @@ package org.zwobble.hobgoblin.compiler.util; +import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; @@ -7,6 +8,20 @@ import static org.zwobble.precisely.AssertThat.assertThat; import static org.zwobble.precisely.Matchers.equalTo; public class CasingTests { + @Test + public void lowerCamelCaseToUpperCamelCase() { + var result = Casing.lowerCamelCaseToUpperCamelCase("abcDef"); + + assertThat(result, equalTo("AbcDef")); + } + + @Test + public void upperCamelCaseToLowerCamelCase() { + var result = Casing.upperCamelCaseToLowerCamelCase("AbcDef"); + + assertThat(result, equalTo("abcDef")); + } + @ParameterizedTest @CsvSource({ "a,A", |
