mirror of https://github.com/k3s-io/k3s
add new watch event type
parent
8b6de5af83
commit
05eff2e910
|
@ -41,14 +41,18 @@ const (
|
||||||
Added EventType = "ADDED"
|
Added EventType = "ADDED"
|
||||||
Modified EventType = "MODIFIED"
|
Modified EventType = "MODIFIED"
|
||||||
Deleted EventType = "DELETED"
|
Deleted EventType = "DELETED"
|
||||||
|
Error EventType = "ERROR"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Event represents a single event to a watched resource.
|
// Event represents a single event to a watched resource.
|
||||||
type Event struct {
|
type Event struct {
|
||||||
Type EventType
|
Type EventType
|
||||||
|
|
||||||
// If Type == Deleted, then this is the state of the object
|
// Object is:
|
||||||
// immediately before deletion.
|
// * If Type is Added or Modified: the new state of the object.
|
||||||
|
// * If Type is Deleted: the state of the object immediately before deletion.
|
||||||
|
// * If Type is Error: *api.Status is recommended; other types may make sense
|
||||||
|
// depending on context.
|
||||||
Object runtime.Object
|
Object runtime.Object
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -94,6 +98,11 @@ func (f *FakeWatcher) Delete(lastValue runtime.Object) {
|
||||||
f.result <- Event{Deleted, lastValue}
|
f.result <- Event{Deleted, lastValue}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Error sends an Error event.
|
||||||
|
func (f *FakeWatcher) Error(errValue runtime.Object) {
|
||||||
|
f.result <- Event{Error, errValue}
|
||||||
|
}
|
||||||
|
|
||||||
// Action sends an event of the requested type, for table-based testing.
|
// Action sends an event of the requested type, for table-based testing.
|
||||||
func (f *FakeWatcher) Action(action EventType, obj runtime.Object) {
|
func (f *FakeWatcher) Action(action EventType, obj runtime.Object) {
|
||||||
f.result <- Event{action, obj}
|
f.result <- Event{action, obj}
|
||||||
|
|
|
@ -35,6 +35,7 @@ func TestFake(t *testing.T) {
|
||||||
{Modified, testType("qux")},
|
{Modified, testType("qux")},
|
||||||
{Modified, testType("bar")},
|
{Modified, testType("bar")},
|
||||||
{Deleted, testType("bar")},
|
{Deleted, testType("bar")},
|
||||||
|
{Error, testType("error: blah")},
|
||||||
}
|
}
|
||||||
|
|
||||||
// Prove that f implements Interface by phrasing this as a function.
|
// Prove that f implements Interface by phrasing this as a function.
|
||||||
|
@ -62,6 +63,7 @@ func TestFake(t *testing.T) {
|
||||||
f.Action(Modified, testType("qux"))
|
f.Action(Modified, testType("qux"))
|
||||||
f.Modify(testType("bar"))
|
f.Modify(testType("bar"))
|
||||||
f.Delete(testType("bar"))
|
f.Delete(testType("bar"))
|
||||||
|
f.Error(testType("error: blah"))
|
||||||
f.Stop()
|
f.Stop()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue