github.com/operator-framework/operator-lifecycle-manager@v0.30.0/pkg/lib/operatorstatus/monitor_test.go (about) 1 package operatorstatus 2 3 import ( 4 "fmt" 5 "testing" 6 "time" 7 8 configv1 "github.com/openshift/api/config/v1" 9 "github.com/stretchr/testify/assert" 10 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" 11 utilclock "k8s.io/utils/clock/testing" 12 ) 13 14 func TestMonitorWaiting(t *testing.T) { 15 fakeClock := utilclock.NewFakeClock(time.Now()) 16 name := "foo" 17 18 statusWant := &configv1.ClusterOperatorStatus{ 19 Conditions: []configv1.ClusterOperatorStatusCondition{ 20 { 21 Type: configv1.OperatorDegraded, 22 Status: configv1.ConditionFalse, 23 LastTransitionTime: metav1.NewTime(fakeClock.Now()), 24 }, 25 { 26 Type: configv1.OperatorAvailable, 27 Status: configv1.ConditionFalse, 28 LastTransitionTime: metav1.NewTime(fakeClock.Now()), 29 }, 30 { 31 Type: configv1.OperatorProgressing, 32 Status: configv1.ConditionTrue, 33 Message: fmt.Sprintf("waiting for events - source=%s", name), 34 LastTransitionTime: metav1.NewTime(fakeClock.Now()), 35 }, 36 }, 37 Versions: []configv1.OperandVersion{}, 38 RelatedObjects: []configv1.ObjectReference{}, 39 } 40 41 statusGot := Waiting(fakeClock, name) 42 43 assert.Equal(t, statusWant, statusGot) 44 }