diff options
author | Kristian Aune <kkraune@users.noreply.github.com> | 2023-09-21 14:33:41 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-21 14:33:41 +0200 |
commit | b84164514a59aea8a4a38e17d9b50e6b69c31b01 (patch) | |
tree | cc7424dac578d323fdd97c800ce3a1ca929ecb49 /config-model | |
parent | 403bb556a37355a197f6a552a7e92d58e211d491 (diff) | |
parent | cdec9d3aafde6c98713ea6278c248c8854e5cf2c (diff) |
Merge pull request #28597 from vespa-engine/hmusum/better-error-message-when-file-missing-or-dir-empty-3
Add unit test for adding path which is an empty dir
Diffstat (limited to 'config-model')
-rw-r--r-- | config-model/src/test/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFilesTest.java | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFilesTest.java b/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFilesTest.java index cd5f76b422a..bb5ba840c2c 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFilesTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFilesTest.java @@ -15,8 +15,10 @@ import com.yahoo.vespa.config.ConfigPayloadBuilder; import com.yahoo.vespa.model.SimpleConfigProducer; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.io.TempDir; import java.nio.ByteBuffer; +import java.nio.file.Path; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -55,8 +57,14 @@ public class UserConfiguredFilesTest { @Override public List<Entry> export() { - return null; + return pathToRef.entrySet().stream() + .map(e -> new Entry(e.getKey(), e.getValue())) + .toList(); } + + @Override + public String toString() { return export().toString(); } + } private UserConfiguredFiles userConfiguredFiles() { @@ -273,5 +281,20 @@ public class UserConfiguredFilesTest { } } + @Test + void require_that_using_empty_dir_gives_sane_error_message(@TempDir Path tempDir) { + String relativeTempDir = tempDir.toString().substring(tempDir.toString().lastIndexOf("target")); + try { + def.addPathDef("pathVal"); + builder.setField("pathVal", relativeTempDir); + fileRegistry.pathToRef.put(relativeTempDir, new FileReference("bazshash")); + userConfiguredFiles().register(producer); + fail("Should have thrown exception"); + } catch (IllegalArgumentException e) { + assertEquals("Unable to register file specified in services.xml for config 'mynamespace.myname': Directory '" + + relativeTempDir + "' is empty", + e.getMessage()); + } + } } |