Skip to content

Commit

Permalink
chore: Ephemeral volume configuraion validation tests.
Browse files Browse the repository at this point in the history
Signed-off-by: Josh Fyne <josh.fyne@gmail.com>
  • Loading branch information
jfyne committed Jan 17, 2024
1 parent 4cbc80d commit 42724f9
Showing 1 changed file with 56 additions and 0 deletions.
56 changes: 56 additions & 0 deletions api/v1/cluster_webhook_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -2842,6 +2842,62 @@ var _ = Describe("Storage configuration validation", func() {
})
})

var _ = Describe("Ephemeral volume configuration validation", func() {
It("succeeds if no ephemeral configuration is present", func() {
cluster := Cluster{
Spec: ClusterSpec{},
}
Expect(cluster.validateEphemeralVolumeSource()).To(BeEmpty())
})

It("succeeds if ephemeralVolumeSource is set", func() {
cluster := Cluster{
Spec: ClusterSpec{
EphemeralVolumeSource: &corev1.EphemeralVolumeSource{},
},
}
Expect(cluster.validateEphemeralVolumeSource()).To(BeEmpty())
})

It("succeeds if ephemeralVolumesSizeLimit.temporaryData is set", func() {
onegi := resource.MustParse("1Gi")
cluster := Cluster{
Spec: ClusterSpec{
EphemeralVolumesSizeLimit: &EphemeralVolumesSizeLimitConfiguration{
TemporaryData: &onegi,
},
},
}
Expect(cluster.validateEphemeralVolumeSource()).To(BeEmpty())
})

It("succeeds if ephemeralVolumeSource and ephemeralVolumesSizeLimit.shm are set", func() {
onegi := resource.MustParse("1Gi")
cluster := Cluster{
Spec: ClusterSpec{
EphemeralVolumeSource: &corev1.EphemeralVolumeSource{},
EphemeralVolumesSizeLimit: &EphemeralVolumesSizeLimitConfiguration{
Shm: &onegi,
},
},
}
Expect(cluster.validateEphemeralVolumeSource()).To(BeEmpty())
})

It("produces one error if conflicting ephemeral storage options are set", func() {
onegi := resource.MustParse("1Gi")
cluster := Cluster{
Spec: ClusterSpec{
EphemeralVolumeSource: &corev1.EphemeralVolumeSource{},
EphemeralVolumesSizeLimit: &EphemeralVolumesSizeLimitConfiguration{
TemporaryData: &onegi,
},
},
}
Expect(cluster.validateEphemeralVolumeSource()).To(HaveLen(1))
})
})

var _ = Describe("Role management validation", func() {
It("should succeed if there is no management stanza", func() {
cluster := Cluster{
Expand Down

0 comments on commit 42724f9

Please sign in to comment.