Skip to content

Commit

Permalink
add override getters and defaults
Browse files Browse the repository at this point in the history
Signed-off-by: Michael Valdron <mvaldron@redhat.com>
  • Loading branch information
michael-valdron committed Mar 15, 2024
1 parent 97ec461 commit 13f81db
Show file tree
Hide file tree
Showing 2 changed files with 128 additions and 0 deletions.
35 changes: 35 additions & 0 deletions pkg/registry/defaults.go
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,11 @@ const (

// Default kubernetes-only fields
DefaultK8sIngressClass = "nginx"

// Override defaults (should be empty)
DefaultHostnameOverride = ""
DefaultNameOverride = ""
DefaultFullnameOverride = ""
)

// GetRegistryViewerImage returns the container image for the registry viewer to be deployed on the Devfile Registry.
Expand Down Expand Up @@ -171,6 +176,36 @@ func GetK8sIngressClass(cr *registryv1alpha1.DevfileRegistry) string {
return DefaultK8sIngressClass
}

// GetHostnameOverride returns hostname override used to override the hostname and domain of a devfile registry
// Default: ""
func GetHostnameOverride(cr *registryv1alpha1.DevfileRegistry) string {
if cr.Spec.HostnameOverride != "" {
return cr.Spec.HostnameOverride
}

return DefaultHostnameOverride
}

// GetNameOverride returns name override used to override the app name of a devfile registry
// Default: ""
func GetNameOverride(cr *registryv1alpha1.DevfileRegistry) string {
if cr.Spec.NameOverride != "" {
return cr.Spec.NameOverride
}

return DefaultNameOverride
}

// GetFullnameOverride returns full name override used to override the fully qualified app name of a devfile registry
// Default: ""
func GetFullnameOverride(cr *registryv1alpha1.DevfileRegistry) string {
if cr.Spec.FullnameOverride != "" {
return cr.Spec.FullnameOverride
}

return DefaultFullnameOverride
}

// IsStorageEnabled returns true if storage.enabled is set in the DevfileRegistry CR
// If it's not set, it returns false by default.
func IsStorageEnabled(cr *registryv1alpha1.DevfileRegistry) bool {
Expand Down
93 changes: 93 additions & 0 deletions pkg/registry/defaults_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -466,3 +466,96 @@ func TestGetK8sIngressClass(t *testing.T) {
})
}
}

func TestGetHostnameOverride(t *testing.T) {
tests := []struct {
name string
cr registryv1alpha1.DevfileRegistry
want string
}{
{
name: "Case 1: Hostname override is set",
cr: registryv1alpha1.DevfileRegistry{
Spec: registryv1alpha1.DevfileRegistrySpec{
HostnameOverride: "192.168.1.123.nip.io",
},
},
want: "192.168.1.123.nip.io",
},
{
name: "Case 2: Hostname override is unset",
cr: registryv1alpha1.DevfileRegistry{},
want: DefaultHostnameOverride,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
result := GetHostnameOverride(&tt.cr)
if result != tt.want {
t.Errorf("func TestGetHostnameOverride(t *testing.T) {\n error: enablement value mismatch, expected: %v got: %v", tt.want, result)
}
})
}
}

func TestGetNameOverride(t *testing.T) {
tests := []struct {
name string
cr registryv1alpha1.DevfileRegistry
want string
}{
{
name: "Case 1: App name override is set",
cr: registryv1alpha1.DevfileRegistry{
Spec: registryv1alpha1.DevfileRegistrySpec{
NameOverride: "devfile-registry-test",
},
},
want: "devfile-registry-test",
},
{
name: "Case 2: App name override is unset",
cr: registryv1alpha1.DevfileRegistry{},
want: DefaultNameOverride,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
result := GetNameOverride(&tt.cr)
if result != tt.want {
t.Errorf("func TestGetNameOverride(t *testing.T) {\n error: enablement value mismatch, expected: %v got: %v", tt.want, result)
}
})
}
}

func TestGetFullnameOverride(t *testing.T) {
tests := []struct {
name string
cr registryv1alpha1.DevfileRegistry
want string
}{
{
name: "Case 1: Full app name override is set",
cr: registryv1alpha1.DevfileRegistry{
Spec: registryv1alpha1.DevfileRegistrySpec{
FullnameOverride: "devfile-registry-test",
},
},
want: "devfile-registry-test",
},
{
name: "Case 2: Full app name override is unset",
cr: registryv1alpha1.DevfileRegistry{},
want: DefaultFullnameOverride,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
result := GetFullnameOverride(&tt.cr)
if result != tt.want {
t.Errorf("func TestGetFullnameOverride(t *testing.T) {\n error: enablement value mismatch, expected: %v got: %v", tt.want, result)
}
})
}
}

0 comments on commit 13f81db

Please sign in to comment.