mirror of
https://github.com/cryptomator/cryptomator.git
synced 2026-05-14 08:41:28 +00:00
add test
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package org.cryptomator.common;
|
||||
|
||||
import org.jetbrains.annotations.VisibleForTesting;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@@ -27,7 +28,8 @@ public class PropertiesPreprocessor {
|
||||
LOG.info("Preprocessed cryptomator properties.");
|
||||
}
|
||||
|
||||
private static String process(String value) {
|
||||
@VisibleForTesting
|
||||
static String process(String value) {
|
||||
return TEMPLATE.matcher(value).replaceAll(match -> //
|
||||
switch (match.group(1)) {
|
||||
case "appdir" -> ENV.get("APPDIR");
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
package org.cryptomator.common;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.BeforeAll;
|
||||
import org.junit.jupiter.params.ParameterizedTest;
|
||||
import org.junit.jupiter.params.provider.CsvSource;
|
||||
import org.mockito.Mockito;
|
||||
|
||||
public class PropertiesPreprocessorTest {
|
||||
|
||||
@ParameterizedTest
|
||||
@CsvSource(value = """
|
||||
org.example.@{mytest1}.test, org.example.@{mytest1}.test
|
||||
@{only*word*digits*under_score\\},@{only*words*digits*under_score\\}
|
||||
C:\\Users\\@{appdir}\\dir, C:\\Users\\\\dir
|
||||
@{@{appdir}},@{}
|
||||
Longer @{appdir} text with @{appdir}., Longer text with .
|
||||
""")
|
||||
public void test(String propertyValue, String expected) {
|
||||
var result = PropertiesPreprocessor.process(propertyValue);
|
||||
Assertions.assertEquals(result, expected);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user