mirror of
https://github.com/komodorio/helm-dashboard.git
synced 2026-03-24 11:48:04 +00:00
* Include devel Flag for Toggling Dev Chart Versions The flag `--devel` for enabling/disabling dev versions of charts in following endpoints: 1. /api/helm/repositories/kafka-operator 2. /api/helm/repositories/versions 3. /api/helm/repositories/latestver Signed-off-by: Bhargav Ravuri <bhargav.ravuri@infracloud.io> * Run Tests on Devel Flag Related Changes Signed-off-by: Bhargav Ravuri <bhargav.ravuri@infracloud.io> --------- Signed-off-by: Bhargav Ravuri <bhargav.ravuri@infracloud.io>
62 lines
1.8 KiB
Go
62 lines
1.8 KiB
Go
package objects
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
|
|
"helm.sh/helm/v3/pkg/action"
|
|
"helm.sh/helm/v3/pkg/cli"
|
|
)
|
|
|
|
func TestNewDataLayer(t *testing.T) {
|
|
testCases := []struct {
|
|
name string
|
|
namespaces []string
|
|
version string
|
|
helmConfig HelmConfigGetter
|
|
devel bool
|
|
errorExpected bool
|
|
}{
|
|
{
|
|
name: "should return error when helm config is nil",
|
|
namespaces: []string{"namespace1", "namespace2"},
|
|
version: "1.0.0",
|
|
helmConfig: nil,
|
|
devel: false,
|
|
errorExpected: true,
|
|
},
|
|
{
|
|
name: "should return data layer when all parameters are correct",
|
|
namespaces: []string{
|
|
"namespace1",
|
|
"namespace2",
|
|
},
|
|
version: "1.0.0",
|
|
helmConfig: func(sett *cli.EnvSettings, ns string) (*action.Configuration, error) {
|
|
return &action.Configuration{}, nil
|
|
},
|
|
devel: false,
|
|
errorExpected: false,
|
|
},
|
|
}
|
|
for _, tt := range testCases {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
dl, err := NewDataLayer(tt.namespaces, tt.version, tt.helmConfig, tt.devel)
|
|
if tt.errorExpected {
|
|
assert.Error(t, err, "Expected error but got nil")
|
|
} else {
|
|
assert.Nil(t, err, "NewDataLayer returned an error: %v", err)
|
|
assert.NotNil(t, dl, "NewDataLayer returned nil")
|
|
assert.Equal(t, tt.namespaces, dl.Namespaces, "NewDataLayer returned incorrect namespaces: %v", dl.Namespaces)
|
|
assert.NotNil(t, dl.Cache, "NewDataLayer returned nil cache")
|
|
assert.Equal(t, tt.version, dl.StatusInfo.CurVer, "NewDataLayer returned incorrect version: %v", dl.StatusInfo.CurVer)
|
|
assert.False(t, dl.StatusInfo.Analytics, "NewDataLayer returned incorrect version: %v", dl.StatusInfo.CurVer)
|
|
assert.NotNil(t, dl.appPerContext, "NewDataLayer returned nil appPerContext")
|
|
assert.NotNil(t, dl.ConfGen, "NewDataLayer returned nil ConfGen")
|
|
|
|
}
|
|
})
|
|
}
|
|
}
|