From 124584b819b1ba575a255583d5162d860d0250b4 Mon Sep 17 00:00:00 2001 From: Virgil Calvez Date: Mon, 2 Feb 2026 11:23:28 +0100 Subject: [PATCH 1/4] Add keyValue_isNull test --- .../gkit/test/build/image/arg/NativeBuildArgTest.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/test/java/fr/ariouz/gkit/test/build/image/arg/NativeBuildArgTest.java b/src/test/java/fr/ariouz/gkit/test/build/image/arg/NativeBuildArgTest.java index 8811ba7..13521fb 100644 --- a/src/test/java/fr/ariouz/gkit/test/build/image/arg/NativeBuildArgTest.java +++ b/src/test/java/fr/ariouz/gkit/test/build/image/arg/NativeBuildArgTest.java @@ -131,6 +131,17 @@ void listKeyValue_isEmpty() { assertThat(args).isEmpty(); } + @Test + void keyValue_isNull() { + NativeConfig nativeConfig = new NativeConfig(); + nativeConfig.setBuildArgs(List.of( + Map.of(NativeBuildArg.LIBC.getConfigKey(), null) + )); + + List args = new NativeBuildArgParser().parseBuildArgs(nativeConfig); + assertThat(args).isEmpty(); + } + @Test void keyValue_isValid() { NativeConfig nativeConfig = new NativeConfig(); From cf73d135d8c0052965effc266bb2121d4de838a0 Mon Sep 17 00:00:00 2001 From: Virgil Calvez Date: Mon, 2 Feb 2026 11:25:44 +0100 Subject: [PATCH 2/4] Revert, test codecov report --- .../gkit/test/build/image/arg/NativeBuildArgTest.java | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/src/test/java/fr/ariouz/gkit/test/build/image/arg/NativeBuildArgTest.java b/src/test/java/fr/ariouz/gkit/test/build/image/arg/NativeBuildArgTest.java index 13521fb..8811ba7 100644 --- a/src/test/java/fr/ariouz/gkit/test/build/image/arg/NativeBuildArgTest.java +++ b/src/test/java/fr/ariouz/gkit/test/build/image/arg/NativeBuildArgTest.java @@ -131,17 +131,6 @@ void listKeyValue_isEmpty() { assertThat(args).isEmpty(); } - @Test - void keyValue_isNull() { - NativeConfig nativeConfig = new NativeConfig(); - nativeConfig.setBuildArgs(List.of( - Map.of(NativeBuildArg.LIBC.getConfigKey(), null) - )); - - List args = new NativeBuildArgParser().parseBuildArgs(nativeConfig); - assertThat(args).isEmpty(); - } - @Test void keyValue_isValid() { NativeConfig nativeConfig = new NativeConfig(); From 11468fe5bd2cfacebc76036d17b7b00973bcb2f1 Mon Sep 17 00:00:00 2001 From: Virgil Calvez Date: Mon, 2 Feb 2026 11:29:10 +0100 Subject: [PATCH 3/4] Add parseBuildArgs_isValid test --- .../build/image/NativeBuildArgParserTest.java | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 src/test/java/fr/ariouz/gkit/test/build/image/NativeBuildArgParserTest.java diff --git a/src/test/java/fr/ariouz/gkit/test/build/image/NativeBuildArgParserTest.java b/src/test/java/fr/ariouz/gkit/test/build/image/NativeBuildArgParserTest.java new file mode 100644 index 0000000..ded452d --- /dev/null +++ b/src/test/java/fr/ariouz/gkit/test/build/image/NativeBuildArgParserTest.java @@ -0,0 +1,32 @@ +package fr.ariouz.gkit.test.build.image; + +import fr.ariouz.gkit.build.image.arg.NativeBuildArg; +import fr.ariouz.gkit.build.image.arg.NativeBuildArgParser; +import fr.ariouz.gkit.config.models.NativeConfig; +import org.junit.jupiter.api.Test; + +import java.util.List; +import java.util.Map; + +import static org.assertj.core.api.Assertions.assertThat; + +public class NativeBuildArgParserTest { + + + @Test + void parseBuildArgs_isValid() { + NativeConfig nativeConfig = new NativeConfig(); + nativeConfig.setBuildArgs(List.of( + Map.of(NativeBuildArg.FALLBACK_IMAGE.getConfigKey(), false), + Map.of(NativeBuildArg.OPTIMIZATION_LEVEL.getConfigKey(), 2) + )); + + List args = new NativeBuildArgParser() + .parseBuildArgs(nativeConfig); + + assertThat(args).containsExactly( + "--no-fallback", + "-O2" + ); + } +} From 67483edacea4051e685f19c9fc836bfd8038e48e Mon Sep 17 00:00:00 2001 From: Virgil Calvez Date: Mon, 2 Feb 2026 11:33:01 +0100 Subject: [PATCH 4/4] Add uncovered code --- .../fr/ariouz/gkit/build/image/arg/NativeBuildArgParser.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/fr/ariouz/gkit/build/image/arg/NativeBuildArgParser.java b/src/main/java/fr/ariouz/gkit/build/image/arg/NativeBuildArgParser.java index 27bfc2e..4e149c4 100644 --- a/src/main/java/fr/ariouz/gkit/build/image/arg/NativeBuildArgParser.java +++ b/src/main/java/fr/ariouz/gkit/build/image/arg/NativeBuildArgParser.java @@ -1,5 +1,6 @@ package fr.ariouz.gkit.build.image.arg; +import fr.ariouz.gkit.config.ConfigException; import fr.ariouz.gkit.config.models.NativeConfig; import java.util.ArrayList; @@ -12,6 +13,7 @@ public class NativeBuildArgParser { public NativeBuildArgParser() {} public List parseBuildArgs(NativeConfig config) { + if (config == null) throw new ConfigException("Native config is null"); List normalizedArgs = normalize(config.getBuildArgs()); normalizedArgs.sort(Comparator.comparing(NormalizedArg::arg)); return renderArgs(normalizedArgs);