diff --git a/pom.xml b/pom.xml index 1e7f3b7..be043fd 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 io.simplelocalize simplelocalize-cli - 2.11.0 + 2.11.1 jar simplelocalize-cli Official SimpleLocalize Command Line Interface diff --git a/reflect-config.json b/reflect-config.json index 70c1469..504cd08 100644 --- a/reflect-config.json +++ b/reflect-config.json @@ -76,6 +76,20 @@ "allDeclaredMethods" : true, "allPublicMethods" : true }, + { + "name" : "io.simplelocalize.cli.client.dto.proxy.Mappings", + "allDeclaredConstructors" : true, + "allPublicConstructors" : true, + "allDeclaredMethods" : true, + "allPublicMethods" : true + }, + { + "name" : "io.simplelocalize.cli.client.dto.proxy.LanguageTransform", + "allDeclaredConstructors" : true, + "allPublicConstructors" : true, + "allDeclaredMethods" : true, + "allPublicMethods" : true + }, { "name" : "io.simplelocalize.cli.client.dto.proxy.DownloadableFile", "allDeclaredConstructors" : true, diff --git a/simplelocalize-sample.yml b/simplelocalize-sample.yml index 9047411..728a94b 100644 --- a/simplelocalize-sample.yml +++ b/simplelocalize-sample.yml @@ -20,7 +20,7 @@ uploadFormat: multi-language-json # Upload options are options that are passed to the upload command. # Supported options: https://simplelocalize.io/docs/general/options/ uploadOptions: - - 'REPLACE_TRANSLATION_IF_FOUND' # overwrite translation for given a key and namespace if found + - 'UPDATE_TRANSLATIONS' ################################### diff --git a/src/main/java/io/simplelocalize/cli/SimplelocalizeCliCommand.java b/src/main/java/io/simplelocalize/cli/SimplelocalizeCliCommand.java index ea8dcd6..e310f3b 100644 --- a/src/main/java/io/simplelocalize/cli/SimplelocalizeCliCommand.java +++ b/src/main/java/io/simplelocalize/cli/SimplelocalizeCliCommand.java @@ -159,7 +159,7 @@ public void upload( if (Boolean.TRUE.equals(updateTranslations)) { - effectiveUploadOptions.add("REPLACE_TRANSLATION_IF_FOUND"); + effectiveUploadOptions.add("UPDATE_TRANSLATIONS"); } if (Boolean.TRUE.equals(delete)) diff --git a/src/main/java/io/simplelocalize/cli/Version.java b/src/main/java/io/simplelocalize/cli/Version.java index eef50f3..dcf3642 100644 --- a/src/main/java/io/simplelocalize/cli/Version.java +++ b/src/main/java/io/simplelocalize/cli/Version.java @@ -3,7 +3,7 @@ public class Version { - public static final String NUMBER = "2.11.0"; + public static final String NUMBER = "2.11.1"; private Version() { diff --git a/src/test/java/io/simplelocalize/cli/configuration/ConfigurationLoaderTest.java b/src/test/java/io/simplelocalize/cli/configuration/ConfigurationLoaderTest.java index c3eaa16..2a3140a 100644 --- a/src/test/java/io/simplelocalize/cli/configuration/ConfigurationLoaderTest.java +++ b/src/test/java/io/simplelocalize/cli/configuration/ConfigurationLoaderTest.java @@ -114,6 +114,42 @@ void shouldLoadConfiguration() throws Exception Assertions.assertThat(configuration.getIgnoreKeys()).containsExactlyInAnyOrder("key one", "key_two"); } + @Test + void shouldLoadLanguageMappingsFromConfiguration() throws Exception + { + //given + ClassLoader classLoader = getClass().getClassLoader(); + String pathToConfig = classLoader.getResource("simplelocalize.yml").toURI().toString().replace("file:", ""); + Path configurationFilePath = Path.of(pathToConfig); + + //when + Configuration configuration = loader.loadOrGetDefault(configurationFilePath); + + //then + Assertions.assertThat(configuration.getMappings()).isNotNull(); + Assertions.assertThat(configuration.getMappings().getLang()) + .extracting(LanguageTransform::getLanguageKey, LanguageTransform::getPlaceholder) + .containsExactlyInAnyOrder( + Tuple.tuple("en", "english"), + Tuple.tuple("pl_PL", "polish")); + } + + @Test + void shouldDefaultToEmptyMappingsWhenNotProvidedInConfiguration() throws Exception + { + //given + ClassLoader classLoader = getClass().getClassLoader(); + String pathToConfig = classLoader.getResource("simplelocalize-upload-download.yml").toURI().toString().replace("file:", ""); + Path configurationFilePath = Path.of(pathToConfig); + + //when + Configuration configuration = loader.loadOrGetDefault(configurationFilePath); + + //then + Assertions.assertThat(configuration.getMappings()).isNotNull(); + Assertions.assertThat(configuration.getMappings().getLang()).isEmpty(); + } + @Test void shouldThrowErrorWhenInvalidFile() throws Exception {