From 88acfbbbaaf53c811b3c2f411c71a38911873302 Mon Sep 17 00:00:00 2001 From: Yves Mettier Date: Sun, 12 Jul 2026 01:38:42 +0200 Subject: [PATCH] test: add tests for missing required backup fields --- config/config_test.go | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/config/config_test.go b/config/config_test.go index ef5b4c1..aa451ec 100644 --- a/config/config_test.go +++ b/config/config_test.go @@ -218,3 +218,25 @@ func TestLoggerConfigPartialOverrides(t *testing.T) { assert.True(t, opts.Compress) assert.False(t, opts.JSON) } + +func TestNew_MissingURL(t *testing.T) { + testutil.UseTempDir(t) + configContent := "backups:\n test:\n outputFile: out.txt\ninterval: 1h\nretryInterval: 1h\n" + err := os.WriteFile("missing_url.yaml", []byte(configContent), 0600) + require.NoError(t, err) + + _, err = New("missing_url.yaml", 8080) + assert.Error(t, err) + assert.Contains(t, err.Error(), "url is required") +} + +func TestNew_MissingOutputFile(t *testing.T) { + testutil.UseTempDir(t) + configContent := "backups:\n test:\n url: http://example.com\ninterval: 1h\nretryInterval: 1h\n" + err := os.WriteFile("missing_output.yaml", []byte(configContent), 0600) + require.NoError(t, err) + + _, err = New("missing_output.yaml", 8080) + assert.Error(t, err) + assert.Contains(t, err.Error(), "outputFile is required") +}