Skip to content

Commit c30da1a

Browse files
committed
test: add MultiClusterService event coverage
Signed-off-by: Denyme24 <namanraj24@outlook.com>
1 parent 3424bc7 commit c30da1a

1 file changed

Lines changed: 38 additions & 0 deletions

File tree

test/e2e/suites/base/mcs_test.go

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ import (
3838

3939
networkingv1alpha1 "github.com/karmada-io/karmada/pkg/apis/networking/v1alpha1"
4040
policyv1alpha1 "github.com/karmada-io/karmada/pkg/apis/policy/v1alpha1"
41+
"github.com/karmada-io/karmada/pkg/events"
4142
"github.com/karmada-io/karmada/pkg/util"
4243
"github.com/karmada-io/karmada/pkg/util/names"
4344
"github.com/karmada-io/karmada/test/e2e/framework"
@@ -343,6 +344,12 @@ var _ = ginkgo.Describe("Multi-Cluster Service testing", func() {
343344
gomega.Expect(err).ShouldNot(gomega.HaveOccurred())
344345
})
345346

347+
ginkgo.By(fmt.Sprintf("Check ServiceImport(%s/%s) SyncDerivedServiceSucceed event", serviceImport.Namespace, serviceImport.Name), func() {
348+
framework.WaitEventFitWith(kubeClient, serviceImport.Namespace, serviceImport.Name, func(event corev1.Event) bool {
349+
return event.Reason == events.EventReasonSyncDerivedServiceSucceed && event.Type == corev1.EventTypeNormal
350+
})
351+
})
352+
346353
ginkgo.By(fmt.Sprintf("Wait EndpointSlices have been imported to %s cluster", serviceImportClusterName), func() {
347354
gomega.Eventually(func(g gomega.Gomega) (int, error) {
348355
endpointSlices, err := importClusterClient.DiscoveryV1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
@@ -439,6 +446,12 @@ var _ = ginkgo.Describe("Multi-Cluster Service testing", func() {
439446
}, pollTimeout, pollInterval).Should(gomega.Equal(1))
440447
})
441448

449+
ginkgo.By(fmt.Sprintf("Check ServiceImport(%s/%s) SyncDerivedServiceSucceed event", serviceImport.Namespace, serviceImport.Name), func() {
450+
framework.WaitEventFitWith(kubeClient, serviceImport.Namespace, serviceImport.Name, func(event corev1.Event) bool {
451+
return event.Reason == events.EventReasonSyncDerivedServiceSucceed && event.Type == corev1.EventTypeNormal
452+
})
453+
})
454+
442455
klog.Infof("Update Deployment's replicas in %s cluster", serviceExportClusterName)
443456
framework.UpdateDeploymentReplicas(exportClusterClient, &demoDeployment, 2)
444457

@@ -555,6 +568,18 @@ var _ = ginkgo.Describe("CrossCluster MultiClusterService testing", func() {
555568
return meta.IsStatusConditionTrue(mcs.Status.Conditions, networkingv1alpha1.EndpointSliceDispatched)
556569
})
557570

571+
ginkgo.By(fmt.Sprintf("Check MultiClusterService(%s/%s) SyncServiceSucceed event", testNamespace, mcsName), func() {
572+
framework.WaitEventFitWith(kubeClient, testNamespace, mcsName, func(event corev1.Event) bool {
573+
return event.Reason == events.EventReasonSyncServiceSucceed && event.Type == corev1.EventTypeNormal
574+
})
575+
})
576+
577+
ginkgo.By(fmt.Sprintf("Check MultiClusterService(%s/%s) DispatchEndpointSliceSucceed event", testNamespace, mcsName), func() {
578+
framework.WaitEventFitWith(kubeClient, testNamespace, mcsName, func(event corev1.Event) bool {
579+
return event.Reason == events.EventReasonDispatchEndpointSliceSucceed && event.Type == corev1.EventTypeNormal
580+
})
581+
})
582+
558583
gomega.Eventually(func() bool {
559584
return checkEndpointSliceWithMultiClusterService(testNamespace, mcsName, mcs.Spec.ProviderClusters, mcs.Spec.ConsumerClusters)
560585
}, pollTimeout, pollInterval).Should(gomega.BeTrue())
@@ -638,6 +663,18 @@ var _ = ginkgo.Describe("CrossCluster MultiClusterService testing", func() {
638663
framework.WaitMultiClusterServicePresentOnClustersFitWith(karmadaClient, testNamespace, mcsName, func(mcs *networkingv1alpha1.MultiClusterService) bool {
639664
return meta.IsStatusConditionTrue(mcs.Status.Conditions, networkingv1alpha1.EndpointSliceDispatched)
640665
})
666+
667+
mcs.Spec.ProviderClusters = []networkingv1alpha1.ClusterSelector{
668+
{Name: member2Name},
669+
{Name: "member-not-found"},
670+
}
671+
framework.UpdateMultiClusterService(karmadaClient, mcs)
672+
673+
ginkgo.By(fmt.Sprintf("Check MultiClusterService(%s/%s) ClusterNotFound event", testNamespace, mcsName), func() {
674+
framework.WaitEventFitWith(kubeClient, testNamespace, mcsName, func(event corev1.Event) bool {
675+
return event.Reason == events.EventReasonClusterNotFound && event.Type == corev1.EventTypeWarning
676+
})
677+
})
641678
})
642679
})
643680

@@ -739,6 +776,7 @@ var _ = ginkgo.Describe("CrossCluster MultiClusterService testing", func() {
739776
}, pollTimeout, pollInterval).Should(gomega.BeTrue())
740777
})
741778
})
779+
742780
})
743781

744782
func checkEndpointSliceWithMultiClusterService(mcsNamespace, mcsName string, providerClusters, consumerClusters []networkingv1alpha1.ClusterSelector) bool {

0 commit comments

Comments
 (0)