Files
troubleshoot/pkg/preflight/flags_test.go
Evans Mungai ebeed77287 chore: Upgrade gopsutil to v3 (#927)
* Add host collector tests related to gopsutil upgrade

* Upgrade gopsutil to v3
2022-12-24 13:42:13 +13:00

106 lines
2.5 KiB
Go

package preflight
import (
"testing"
flag "github.com/spf13/pflag"
"github.com/stretchr/testify/assert"
)
func TestAddFlagsString(t *testing.T) {
tests := []struct {
name string
flag string
want string
wantErr bool
}{{
name: "expect error when non-existent flag is set",
flag: "non-existent",
want: "",
wantErr: true,
}, {
name: "expect format=human, err=nil when format flag is set",
flag: "format",
want: "human",
wantErr: false,
}, {
name: "expect collector-image=empty, err=nil when collector-image flag is set",
flag: "collector-image",
want: "",
wantErr: false,
}, {
name: "expect collector-pullpolicy=empty, err=nil when collector-pullpolicy flag is set",
flag: "collector-pullpolicy",
want: "",
wantErr: false,
}, {
name: "expect selector=empty, err=nil when selector flag is set",
flag: "selector",
want: "",
wantErr: false,
}, {
name: "expect since-time=empty, err=nil when since-time flag is set",
flag: "since-time",
want: "",
wantErr: false,
}, {
name: "expect since=empty, err=nil when since flag is set",
flag: "since",
want: "",
wantErr: false,
}, {
name: "expect output=empty, err=nil when output flag is set",
flag: "output",
want: "",
wantErr: false,
}}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
f := flag.FlagSet{}
AddFlags(&f)
got, err := f.GetString(tt.flag)
assert.Equalf(t, tt.wantErr, err != nil, "AddFlags() error = %v, wantErr %v", err, tt.wantErr)
assert.Equalf(t, got, tt.want, "AddFlags() = %v, wantErr %v", got, tt.want)
})
}
}
func TestAddFlagsBool(t *testing.T) {
tests := []struct {
name string
flag string
want bool
wantErr bool
}{{
name: "expect interactive=true, err=nil when interactive flag is set",
flag: "interactive",
want: true,
wantErr: false,
}, {
name: "expect collect-without-permissions=true, err=nil when collect-without-permissions flag is set",
flag: "collect-without-permissions",
want: true,
wantErr: false,
}, {
name: "expect debug=true, err=nil when debug flag is set",
flag: "debug",
want: false,
wantErr: false,
}}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
f := flag.FlagSet{}
AddFlags(&f)
got, err := f.GetBool(tt.flag)
assert.Equalf(t, tt.wantErr, err != nil, "AddFlags() error = %v, wantErr %v", err, tt.wantErr)
assert.Equalf(t, got, tt.want, "AddFlags() = %v, wantErr %v", got, tt.want)
})
}
}