mirror of
https://github.com/open-cluster-management-io/ocm.git
synced 2026-02-14 18:09:57 +00:00
* 🌱 Configure the golangci lint Signed-off-by: zhujian <jiazhu@redhat.com> * 🌱 Fix lint issues Signed-off-by: zhujian <jiazhu@redhat.com> --------- Signed-off-by: zhujian <jiazhu@redhat.com>
85 lines
2.0 KiB
Go
85 lines
2.0 KiB
Go
package util
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
|
|
"github.com/onsi/ginkgo/v2"
|
|
"github.com/openshift/library-go/pkg/operator/events"
|
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
)
|
|
|
|
func NewIntegrationTestEventRecorder(component string) events.Recorder {
|
|
return &IntegrationTestEventRecorder{component: component}
|
|
}
|
|
|
|
type IntegrationTestEventRecorder struct {
|
|
component string
|
|
ctx context.Context
|
|
}
|
|
|
|
func (r *IntegrationTestEventRecorder) ComponentName() string {
|
|
return r.component
|
|
}
|
|
|
|
func (r *IntegrationTestEventRecorder) ForComponent(c string) events.Recorder {
|
|
return &IntegrationTestEventRecorder{component: c}
|
|
}
|
|
|
|
func (r *IntegrationTestEventRecorder) WithComponentSuffix(suffix string) events.Recorder {
|
|
return r.ForComponent(fmt.Sprintf("%s-%s", r.ComponentName(), suffix))
|
|
}
|
|
|
|
func (r *IntegrationTestEventRecorder) WithContext(ctx context.Context) events.Recorder {
|
|
r.ctx = ctx
|
|
return r
|
|
}
|
|
|
|
func (r *IntegrationTestEventRecorder) Event(reason, message string) {
|
|
fmt.Fprintf(ginkgo.GinkgoWriter, "Event: [%s] %v: %v \n", r.component, reason, message)
|
|
}
|
|
|
|
func (r *IntegrationTestEventRecorder) Eventf(reason, messageFmt string, args ...interface{}) {
|
|
r.Event(reason, fmt.Sprintf(messageFmt, args...))
|
|
}
|
|
|
|
func (r *IntegrationTestEventRecorder) Warning(reason, message string) {
|
|
fmt.Fprintf(ginkgo.GinkgoWriter, "Warning: [%s] %v: %v \n", r.component, reason, message)
|
|
}
|
|
|
|
func (r *IntegrationTestEventRecorder) Warningf(reason, messageFmt string, args ...interface{}) {
|
|
r.Warning(reason, fmt.Sprintf(messageFmt, args...))
|
|
}
|
|
|
|
func (r *IntegrationTestEventRecorder) Shutdown() {}
|
|
|
|
func HasCondition(
|
|
conditions []metav1.Condition,
|
|
expectedType, expectedReason string,
|
|
expectedStatus metav1.ConditionStatus,
|
|
) bool {
|
|
|
|
for _, condition := range conditions {
|
|
if condition.Type != expectedType {
|
|
continue
|
|
}
|
|
|
|
if condition.Status != expectedStatus {
|
|
return false
|
|
}
|
|
|
|
// skip checking reason
|
|
if len(expectedReason) == 0 {
|
|
return true
|
|
}
|
|
|
|
if condition.Reason != expectedReason {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
return false
|
|
}
|