Skip to content

Commit 5748d67

Browse files
sutaakaropenshift-merge-bot[bot]
authored andcommitted
Add functions to retrieve ServiceAccounts
1 parent 222395d commit 5748d67

File tree

2 files changed

+67
-0
lines changed

2 files changed

+67
-0
lines changed

Diff for: support/core.go

+32
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,38 @@ func CreateServiceAccount(t Test, namespace string) *corev1.ServiceAccount {
191191
return serviceAccount
192192
}
193193

194+
func ServiceAccount(t Test, namespace, name string) func(g gomega.Gomega) *corev1.ServiceAccount {
195+
return func(g gomega.Gomega) *corev1.ServiceAccount {
196+
sa, err := t.Client().Core().CoreV1().ServiceAccounts(namespace).Get(t.Ctx(), name, metav1.GetOptions{})
197+
g.Expect(err).NotTo(gomega.HaveOccurred())
198+
return sa
199+
}
200+
}
201+
202+
func GetServiceAccount(t Test, namespace, name string) *corev1.ServiceAccount {
203+
t.T().Helper()
204+
return ServiceAccount(t, namespace, name)(t)
205+
}
206+
207+
func ServiceAccounts(t Test, namespace string) func(g gomega.Gomega) []*corev1.ServiceAccount {
208+
return func(g gomega.Gomega) []*corev1.ServiceAccount {
209+
sas, err := t.Client().Core().CoreV1().ServiceAccounts(namespace).List(t.Ctx(), metav1.ListOptions{})
210+
g.Expect(err).NotTo(gomega.HaveOccurred())
211+
212+
sasp := []*corev1.ServiceAccount{}
213+
for _, v := range sas.Items {
214+
sasp = append(sasp, &v)
215+
}
216+
217+
return sasp
218+
}
219+
}
220+
221+
func GetServiceAccounts(t Test, namespace string) []*corev1.ServiceAccount {
222+
t.T().Helper()
223+
return ServiceAccounts(t, namespace)(t)
224+
}
225+
194226
func CreatePersistentVolumeClaim(t Test, namespace string, storageSize string, accessMode ...corev1.PersistentVolumeAccessMode) *corev1.PersistentVolumeClaim {
195227
t.T().Helper()
196228

Diff for: support/core_test.go

+35
Original file line numberDiff line numberDiff line change
@@ -56,3 +56,38 @@ func TestResourceName(t *testing.T) {
5656
test.Expect(err).To(gomega.BeNil(), "Expected no error, but got '%v'", err)
5757
test.Expect(resourceName).To(gomega.Equal("test-resource"), "Expected resource name 'test-resource', but got '%s'", resourceName)
5858
}
59+
60+
func TestGetServiceAccount(t *testing.T) {
61+
test := NewTest(t)
62+
63+
createdSa := &corev1.ServiceAccount{
64+
ObjectMeta: metav1.ObjectMeta{
65+
Name: "my-sa",
66+
Namespace: "my-namespace",
67+
},
68+
}
69+
70+
test.client.Core().CoreV1().ServiceAccounts("my-namespace").Create(test.ctx, createdSa, metav1.CreateOptions{})
71+
sa := GetServiceAccount(test, "my-namespace", "my-sa")
72+
73+
test.Expect(sa.Name).To(gomega.Equal("my-sa"))
74+
test.Expect(sa.Namespace).To(gomega.Equal("my-namespace"))
75+
}
76+
77+
func TestGetServiceAccounts(t *testing.T) {
78+
test := NewTest(t)
79+
80+
createdSa := &corev1.ServiceAccount{
81+
ObjectMeta: metav1.ObjectMeta{
82+
Name: "my-sa-1",
83+
Namespace: "my-namespace",
84+
},
85+
}
86+
87+
test.client.Core().CoreV1().ServiceAccounts("my-namespace").Create(test.ctx, createdSa, metav1.CreateOptions{})
88+
sas := GetServiceAccounts(test, "my-namespace")
89+
90+
test.Expect(len(sas)).To(gomega.Equal(1))
91+
test.Expect(sas[0].Name).To(gomega.Equal("my-sa-1"))
92+
test.Expect(sas[0].Namespace).To(gomega.Equal("my-namespace"))
93+
}

0 commit comments

Comments
 (0)