|
|
|
@ -476,6 +476,34 @@ func TestStateStore_EnsureCheck(t *testing.T) {
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func TestStateStore_EnsureCheck_defaultStatus(t *testing.T) { |
|
|
|
|
s := testStateStore(t) |
|
|
|
|
|
|
|
|
|
// Register a node
|
|
|
|
|
testRegisterNode(t, s, 1, "node1") |
|
|
|
|
|
|
|
|
|
// Create and register a check with no health status
|
|
|
|
|
check := &structs.HealthCheck{ |
|
|
|
|
Node: "node1", |
|
|
|
|
CheckID: "check1", |
|
|
|
|
Status: "", |
|
|
|
|
} |
|
|
|
|
if err := s.EnsureCheck(2, check); err != nil { |
|
|
|
|
t.Fatalf("err: %s", err) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Get the check again
|
|
|
|
|
_, result, err := s.NodeChecks("node1") |
|
|
|
|
if err != nil { |
|
|
|
|
t.Fatalf("err: %s", err) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Check that the status was set to the proper default
|
|
|
|
|
if len(result) != 1 || result[0].Status != structs.HealthCritical { |
|
|
|
|
t.Fatalf("bad: %#v", result) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func TestStateStore_ServiceChecks(t *testing.T) { |
|
|
|
|
s := testStateStore(t) |
|
|
|
|
|
|
|
|
@ -1182,14 +1210,20 @@ func TestStateStore_KVSDeleteTree(t *testing.T) {
|
|
|
|
|
func TestStateStore_SessionCreate(t *testing.T) { |
|
|
|
|
s := testStateStore(t) |
|
|
|
|
|
|
|
|
|
// GetSession returns nil if the session doesn't exist
|
|
|
|
|
sess, err := s.GetSession("session1") |
|
|
|
|
if sess != nil || err != nil { |
|
|
|
|
t.Fatalf("expected (nil, nil), got: (%#v, %#v)", sess, err) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Registering without a session ID is disallowed
|
|
|
|
|
err := s.SessionCreate(1, &structs.Session{}) |
|
|
|
|
err = s.SessionCreate(1, &structs.Session{}) |
|
|
|
|
if err != ErrMissingSessionID { |
|
|
|
|
t.Fatalf("expected %#v, got: %#v", ErrMissingSessionID, err) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Invalid session behavior throws error
|
|
|
|
|
sess := &structs.Session{ |
|
|
|
|
sess = &structs.Session{ |
|
|
|
|
ID: "foo", |
|
|
|
|
Behavior: "nope", |
|
|
|
|
} |
|
|
|
|