mirror of
https://github.com/fluxcd/flux2.git
synced 2025-10-27 20:55:09 +08:00
tests: only provide template values when used
As otherwise the `.golden` values can not be automatically updated using `-update` as documented in `CONTRIBUTING.md`. Also ensure we do not use `defer` but rather `t.Cleanup` in tests, as this will always be called even if e.g. `t.Fatal` absruptly stops the test. Signed-off-by: Hidde Beydals <hello@hidde.co>
This commit is contained in:
@ -22,51 +22,61 @@ package main
|
||||
import "testing"
|
||||
|
||||
func TestHelmReleaseFromGit(t *testing.T) {
|
||||
cases := []struct {
|
||||
args string
|
||||
goldenFile string
|
||||
}{
|
||||
{
|
||||
"create source git thrfg --url=https://github.com/stefanprodan/podinfo --branch=main --tag=6.0.0",
|
||||
"testdata/helmrelease/create_source_git.golden",
|
||||
},
|
||||
{
|
||||
"create helmrelease thrfg --source=GitRepository/thrfg --chart=./charts/podinfo",
|
||||
"testdata/helmrelease/create_helmrelease_from_git.golden",
|
||||
},
|
||||
{
|
||||
"get helmrelease thrfg",
|
||||
"testdata/helmrelease/get_helmrelease_from_git.golden",
|
||||
},
|
||||
{
|
||||
"reconcile helmrelease thrfg --with-source",
|
||||
"testdata/helmrelease/reconcile_helmrelease_from_git.golden",
|
||||
},
|
||||
{
|
||||
"suspend helmrelease thrfg",
|
||||
"testdata/helmrelease/suspend_helmrelease_from_git.golden",
|
||||
},
|
||||
{
|
||||
"resume helmrelease thrfg",
|
||||
"testdata/helmrelease/resume_helmrelease_from_git.golden",
|
||||
},
|
||||
{
|
||||
"delete helmrelease thrfg --silent",
|
||||
"testdata/helmrelease/delete_helmrelease_from_git.golden",
|
||||
},
|
||||
}
|
||||
|
||||
namespace := allocateNamespace("thrfg")
|
||||
del, err := setupTestNamespace(namespace)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer del()
|
||||
t.Cleanup(del)
|
||||
|
||||
tmpl := map[string]string{"ns": namespace}
|
||||
|
||||
cases := []struct {
|
||||
args string
|
||||
goldenFile string
|
||||
tmpl map[string]string
|
||||
}{
|
||||
{
|
||||
"create source git thrfg --url=https://github.com/stefanprodan/podinfo --branch=main --tag=6.0.0",
|
||||
"testdata/helmrelease/create_source_git.golden",
|
||||
nil,
|
||||
},
|
||||
{
|
||||
"create helmrelease thrfg --source=GitRepository/thrfg --chart=./charts/podinfo",
|
||||
"testdata/helmrelease/create_helmrelease_from_git.golden",
|
||||
nil,
|
||||
},
|
||||
{
|
||||
"get helmrelease thrfg",
|
||||
"testdata/helmrelease/get_helmrelease_from_git.golden",
|
||||
nil,
|
||||
},
|
||||
{
|
||||
"reconcile helmrelease thrfg --with-source",
|
||||
"testdata/helmrelease/reconcile_helmrelease_from_git.golden",
|
||||
tmpl,
|
||||
},
|
||||
{
|
||||
"suspend helmrelease thrfg",
|
||||
"testdata/helmrelease/suspend_helmrelease_from_git.golden",
|
||||
tmpl,
|
||||
},
|
||||
{
|
||||
"resume helmrelease thrfg",
|
||||
"testdata/helmrelease/resume_helmrelease_from_git.golden",
|
||||
tmpl,
|
||||
},
|
||||
{
|
||||
"delete helmrelease thrfg --silent",
|
||||
"testdata/helmrelease/delete_helmrelease_from_git.golden",
|
||||
tmpl,
|
||||
},
|
||||
}
|
||||
|
||||
for _, tc := range cases {
|
||||
cmd := cmdTestCase{
|
||||
args: tc.args + " -n=" + namespace,
|
||||
assert: assertGoldenTemplateFile(tc.goldenFile, map[string]string{"ns": namespace}),
|
||||
assert: assertGoldenTemplateFile(tc.goldenFile, tc.tmpl),
|
||||
}
|
||||
cmd.runTestCmd(t)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user