github.com/redhat-appstudio/e2e-tests@v0.0.0-20240520140907-9709f6f59323/pkg/clients/common/test_status.go (about) 1 package common 2 3 import ( 4 "context" 5 6 appstudioApi "github.com/redhat-appstudio/application-api/api/v1alpha1" 7 "k8s.io/apimachinery/pkg/api/meta" 8 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" 9 "sigs.k8s.io/controller-runtime/pkg/client" 10 ) 11 12 func (s *SuiteController) HaveTestsSucceeded(snapshot *appstudioApi.Snapshot) bool { 13 return meta.IsStatusConditionTrue(snapshot.Status.Conditions, "HACBSTestSucceeded") || 14 meta.IsStatusConditionTrue(snapshot.Status.Conditions, "AppStudioTestSucceeded") 15 } 16 17 func (s *SuiteController) HaveTestsFinished(snapshot *appstudioApi.Snapshot) bool { 18 return meta.FindStatusCondition(snapshot.Status.Conditions, "HACBSTestSucceeded") != nil || 19 meta.FindStatusCondition(snapshot.Status.Conditions, "AppStudioTestSucceeded") != nil 20 } 21 22 func (s *SuiteController) MarkTestsSucceeded(snapshot *appstudioApi.Snapshot) (*appstudioApi.Snapshot, error) { 23 patch := client.MergeFrom(snapshot.DeepCopy()) 24 meta.SetStatusCondition(&snapshot.Status.Conditions, metav1.Condition{ 25 Type: "AppStudioTestSucceeded", 26 Status: metav1.ConditionTrue, 27 Reason: "Passed", 28 Message: "Snapshot Passed", 29 }) 30 err := s.KubeRest().Status().Patch(context.Background(), snapshot, patch) 31 if err != nil { 32 return nil, err 33 } 34 return snapshot, nil 35 }