58 lines
1.6 KiB
Go
58 lines
1.6 KiB
Go
package config
|
|
|
|
import (
|
|
"strings"
|
|
"testing"
|
|
)
|
|
|
|
// Is the absence of hosts and groups detected?
|
|
func TestNoHosts(t *testing.T) {
|
|
_, err := ReadConfig("testdata/no_hosts.yaml", 0)
|
|
if err != ERR_NO_GROUPHOST {
|
|
t.Errorf("missing hosts/groups not detected: %s", err.Error())
|
|
}
|
|
}
|
|
|
|
// Are duplicate host names detected?
|
|
func TestDupHosts(t *testing.T) {
|
|
_, err := ReadConfig("testdata/dup_hosts.yaml", 0)
|
|
if err == nil || !strings.HasPrefix(err.Error(), "duplicate host") {
|
|
t.Errorf("duplicate hosts not detected: %s", err.Error())
|
|
}
|
|
}
|
|
|
|
// Are duplicate host names inside groups detected?
|
|
func TestDupGroupHosts(t *testing.T) {
|
|
_, err := ReadConfig("testdata/dup_group_hosts.yaml", 0)
|
|
if err == nil || !strings.HasPrefix(err.Error(), "duplicate host") {
|
|
t.Errorf("duplicate hosts not detected: %s", err.Error())
|
|
}
|
|
}
|
|
|
|
// Test if api_key and api_key_file are both defined
|
|
func TestDupAPI(t *testing.T) {
|
|
_, err := ReadConfig("testdata/dup_api_key.yaml", 0)
|
|
if err != ERR_DUP_API {
|
|
t.Errorf("missing api key/api key file not detected: %s", err.Error())
|
|
}
|
|
}
|
|
|
|
// Are undefined api key / key files detected?
|
|
func TestUndefinedAPI(t *testing.T) {
|
|
_, err := ReadConfig("testdata/no_api_key.yaml", 0)
|
|
if err != ERR_NO_API {
|
|
t.Errorf("undefined api key/api key file not detected: %s", err.Error())
|
|
}
|
|
}
|
|
|
|
// Are missing api key files detected?
|
|
func TestMissingAPIKey(t *testing.T) {
|
|
_, err := ReadConfig("testdata/missing_api_keyfile.yaml", 0)
|
|
if err != ERR_MISSING_KEYFILE {
|
|
t.Errorf("missing api key file not detected: %s", err.Error())
|
|
}
|
|
}
|
|
|
|
// Test if referenced alarm exists (and is a valid type)
|
|
// Test if referenced check exists (and is a valid type)
|