diff --git a/support/ray.go b/support/ray.go index cc72fed..366dfad 100644 --- a/support/ray.go +++ b/support/ray.go @@ -65,6 +65,25 @@ func GetRayCluster(t Test, namespace, name string) *rayv1.RayCluster { return RayCluster(t, namespace, name)(t) } +func RayClusters(t Test, namespace string) func(g gomega.Gomega) []*rayv1.RayCluster { + return func(g gomega.Gomega) []*rayv1.RayCluster { + rcs, err := t.Client().Ray().RayV1().RayClusters(namespace).List(t.Ctx(), metav1.ListOptions{}) + g.Expect(err).NotTo(gomega.HaveOccurred()) + + rcsp := []*rayv1.RayCluster{} + for _, v := range rcs.Items { + rcsp = append(rcsp, &v) + } + + return rcsp + } +} + +func GetRayClusters(t Test, namespace string) []*rayv1.RayCluster { + t.T().Helper() + return RayClusters(t, namespace)(t) +} + func RayClusterState(cluster *rayv1.RayCluster) rayv1.ClusterState { return cluster.Status.State } diff --git a/support/ray_test.go b/support/ray_test.go index 4d714eb..e500a25 100644 --- a/support/ray_test.go +++ b/support/ray_test.go @@ -44,3 +44,22 @@ func TestGetRayCluster(t *testing.T) { test.Expect(raycluster.Name).To(gomega.Equal("my-cluster-1")) test.Expect(raycluster.Namespace).To(gomega.Equal("my-namespace")) } + +func TestGetRayClusters(t *testing.T) { + + test := NewTest(t) + + RayCluster := &rayv1alpha1.RayCluster{ + ObjectMeta: metav1.ObjectMeta{ + Name: "my-cluster-1", + Namespace: "my-namespace", + }, + } + + test.client.Ray().RayV1().RayClusters("my-namespace").Create(test.ctx, RayCluster, metav1.CreateOptions{}) + rayclusters := GetRayClusters(test, "my-namespace") + + test.Expect(len(rayclusters)).To(gomega.Equal(1)) + test.Expect(rayclusters[0].Name).To(gomega.Equal("my-cluster-1")) + test.Expect(rayclusters[0].Namespace).To(gomega.Equal("my-namespace")) +}