aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/ch/fhnw/thga/gradleplugins/SharedTaskLogicTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/ch/fhnw/thga/gradleplugins/SharedTaskLogicTest.java')
-rw-r--r--src/test/java/ch/fhnw/thga/gradleplugins/SharedTaskLogicTest.java42
1 files changed, 40 insertions, 2 deletions
diff --git a/src/test/java/ch/fhnw/thga/gradleplugins/SharedTaskLogicTest.java b/src/test/java/ch/fhnw/thga/gradleplugins/SharedTaskLogicTest.java
index 6f10d70..bb353a8 100644
--- a/src/test/java/ch/fhnw/thga/gradleplugins/SharedTaskLogicTest.java
+++ b/src/test/java/ch/fhnw/thga/gradleplugins/SharedTaskLogicTest.java
@@ -1,14 +1,52 @@
package ch.fhnw.thga.gradleplugins;
-import org.junit.jupiter.api.Test;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static ch.fhnw.thga.gradleplugins.SharedTaskLogic.extractClassNameFromFregeModuleName;
+
import org.junit.jupiter.api.TestInstance;
import org.junit.jupiter.api.TestInstance.Lifecycle;
+import net.jqwik.api.Example;
+import net.jqwik.api.ForAll;
+import net.jqwik.api.Property;
+
@TestInstance(Lifecycle.PER_CLASS)
public class SharedTaskLogicTest
{
- @Test
+ @Example
void given_valid_frege_module_name_then_can_extract_class_name()
{
+ assertEquals(
+ extractClassNameFromFregeModuleName("ch.fhnw.thga.Completion"),
+ "Completion"
+ );
+ }
+
+ @Example
+ void given_empty_frege_module_name_then_returns_empty_string()
+ {
+ assertEquals(
+ extractClassNameFromFregeModuleName(""),
+ ""
+ );
+ }
+
+ @Example
+ void module_name_without_a_package_equals_class_name()
+ {
+ assertEquals(
+ extractClassNameFromFregeModuleName("Completion"),
+ "Completion"
+ );
+ }
+
+ @Property
+ void class_name_is_the_suffix_of_the_full_module_name(
+ @ForAll String aString)
+ {
+ String expectedFregeClassName = "Completion";
+ assertEquals(
+ extractClassNameFromFregeModuleName(String.join(".", expectedFregeClassName)),
+ expectedFregeClassName);
}
} \ No newline at end of file