Newer
Older
"os"
"testing"
)
func TestMain(m *testing.M) {
testSetupIntegration()
os.Exit(m.Run())
}
func TestCapabilities(t *testing.T) {
if testing.Short() {
t.Skip("skipping integration test")
}
type args struct {
a string
u string
p string
}
tests := []struct {
name string
args args
wantErr bool
}{
{
name: "default",
args: args{
},
wantErr: false,
},
{
name: "destination unreachable",
args: args{
a: unreachable,
},
wantErr: true,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if err := cli.Capabilities(tt.args.a, tt.args.u, tt.args.p); (err != nil) != tt.wantErr {
t.Errorf("Capabilities() error = %v, wantErr %v", err, tt.wantErr)
}
})
}
}
func TestGet(t *testing.T) {
if testing.Short() {
t.Skip("skipping integration test")
}
type args struct {
a string
u string
p string
args []string
}
tests := []struct {
name string
args args
wantErr bool
}{
{
name: "default",
args: args{
args: defaultPath,
},
wantErr: false,
},
{
name: "destination unreachable",
args: args{
a: unreachable,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if _, err := cli.Get(tt.args.a, tt.args.u, tt.args.p, tt.args.args...); (err != nil) != tt.wantErr {
t.Errorf("Get() error = %v, wantErr %v", err, tt.wantErr)
}
})
}
}
func TestHttpGet(t *testing.T) {
if testing.Short() {
t.Skip("skipping integration test")
}
type args struct {
apiEndpoint string
f string
args []string
}
tests := []struct {
name string
args args
wantErr bool
}{
{
name: "default",
args: args{
f: "init",
args: nil,
},
wantErr: false,
},
{
name: "destination unreachable",
args: args{
apiEndpoint: "http://" + unreachable,
f: "init",
args: nil,
},
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if err := cli.HTTPGet(tt.args.apiEndpoint, tt.args.f, tt.args.args...); (err != nil) != tt.wantErr {
t.Errorf("HttpGet() error = %v, wantErr %v", err, tt.wantErr)
}
})
}
}
func TestSet(t *testing.T) {
if testing.Short() {
t.Skip("skipping integration test")
}
type args struct {
a string
u string
p string
typ string
args []string
}
tests := []struct {
name string
args args
wantErr bool
}{
{
name: "default",
args: args{
typ: "update",
args: []string{"/system/config/hostname", "ceos3000"},
},
wantErr: false,
},
{
name: "destination unreachable",
args: args{
a: unreachable,
typ: "update",
args: []string{"/system/config/hostname", "ceos3000"},
},
wantErr: true,
},
{
name: "invalid path",
args: args{
typ: "update",
args: []string{"invalid/path", "ceos3000"},
},
wantErr: true,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if err := cli.Set(tt.args.a, tt.args.u, tt.args.p, tt.args.typ, tt.args.args...); (err != nil) != tt.wantErr {
t.Errorf("Set() error = %v, wantErr %v", err, tt.wantErr)
}
})
}
}