X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=cmd%2Fsafcm%2Fconfig%2Ftriggers_test.go;h=caf6041e92e96574c4508b4a853e328134cddf8f;hb=7181f7906e7fb6e73ebc0daa46975bfa9c71478f;hp=96e52d7e7410d2f89707bdb1267ff8436bd5a006;hpb=992eaae7fec45c2d58fff89d1bc0ae920a899296;p=safcm%2Fsafcm.git diff --git a/cmd/safcm/config/triggers_test.go b/cmd/safcm/config/triggers_test.go index 96e52d7..caf6041 100644 --- a/cmd/safcm/config/triggers_test.go +++ b/cmd/safcm/config/triggers_test.go @@ -1,4 +1,4 @@ -// Copyright (C) 2021 Simon Ruderich +// Copyright (C) 2021-2024 Simon Ruderich // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -19,12 +19,10 @@ import ( "fmt" "io/fs" "os" - "reflect" "testing" - "github.com/google/go-cmp/cmp" - "ruderich.org/simon/safcm" + "ruderich.org/simon/safcm/testutil" ) func TestLoadTriggers(t *testing.T) { @@ -32,7 +30,7 @@ func TestLoadTriggers(t *testing.T) { if err != nil { t.Fatal(err) } - defer os.Chdir(cwd) + defer os.Chdir(cwd) //nolint:errcheck err = os.Chdir("../testdata/project") if err != nil { @@ -92,6 +90,19 @@ This is GNU/Linux host {{if .InGroup "detected_freebsd"}} This is FreeBSD host {{end}} + +{{if .InGroup "all"}} +all +{{end}} +{{if .InGroup "host1.example.org"}} +host1.example.org +{{end}} +{{if .InGroup "host2"}} +host2 +{{end}} +{{if .InGroup "host3.example.net"}} +host3.example.net +{{end}} `), }, "/etc/rc.local": { @@ -134,23 +145,16 @@ This is FreeBSD host for _, tc := range tests { t.Run(tc.group, func(t *testing.T) { - // Use LoadFiles() so we work on real data and don't make any - // mistakes generating it - files, err := LoadFiles(tc.group) - if err != nil { - t.Fatalf("err = %#v, want nil", err) - } - err = LoadTriggers(tc.group, files) + // Use LoadFiles() so we work on real data and don't + // make any mistakes generating it + files, err := LoadFiles(tc.group) + if err != nil { + t.Fatalf("err = %#v, want nil", err) + } + err = LoadTriggers(tc.group, files) - if !reflect.DeepEqual(tc.exp, files) { - t.Errorf("res: %s", - cmp.Diff(tc.exp, files)) - } - // Ugly but the simplest way to compare errors (including nil) - if fmt.Sprintf("%s", err) != fmt.Sprintf("%s", tc.expErr) { - t.Errorf("err = %#v, want %#v", - err, tc.expErr) - } + testutil.AssertEqual(t, "res", files, tc.exp) + testutil.AssertErrorEqual(t, "err", err, tc.expErr) }) } }