Merge pull request #106452 from MadhavJivrajani/watch-test-coverage

Add unit test for Recorder
This commit is contained in:
Kubernetes Prow Robot 2021-12-07 17:27:18 -08:00 committed by GitHub
commit 0681761ccc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -82,3 +82,33 @@ func TestFilterStop(t *testing.T) {
t.Errorf("got %v, wanted %v", e, a)
}
}
func TestRecorder(t *testing.T) {
events := []Event{
{Type: Added, Object: testType("foo")},
{Type: Added, Object: testType("bar")},
{Type: Added, Object: testType("baz")},
{Type: Added, Object: testType("qux")},
{Type: Added, Object: testType("zoo")},
}
source := NewFake()
go func() {
for _, item := range events {
source.Action(item.Type, item.Object)
}
source.Stop()
}()
recorder := NewRecorder(source)
for {
_, ok := <-recorder.Interface.ResultChan()
if !ok {
break
}
}
recordedEvents := recorder.Events()
if !reflect.DeepEqual(recordedEvents, events) {
t.Errorf("got %v, expected %v", recordedEvents, events)
}
}