// nolint lines are duplicate of `pkg/edge/api/utils/helm_helper_test.go` package mapper /* TODO: TO BE DEPRECATED IN 0.25 @RS185722 */ import ( "testing" "github.com/stretchr/testify/assert" "edge-infra.dev/pkg/edge/api/graph/model" ) func TestToLogClassSelection(t *testing.T) { testcases := []struct { title string value string expected model.LogClassSelection assertionFunc func(t *testing.T, err error, expected, actual model.LogClassSelection) }{ { title: "Test Case 1 - Audit", value: "audit", expected: model.LogClassSelectionAudit, assertionFunc: func(t *testing.T, err error, expected, actual model.LogClassSelection) { assert.NoError(t, err) assert.Equal(t, expected, actual) }, }, { title: "Test Case 2 - Security", value: "security", expected: model.LogClassSelectionSecurity, assertionFunc: func(t *testing.T, err error, expected, actual model.LogClassSelection) { assert.NoError(t, err) assert.Equal(t, expected, actual) }, }, { title: "Test Case 3 - Invalid Edge Info Injectable Configmap Value", value: "invalid-audit", expected: model.LogClassSelectionAudit, assertionFunc: func(t *testing.T, err error, expected, actual model.LogClassSelection) { assert.Error(t, err) assert.NotEqual(t, expected, actual) }, }, { title: "Test Case 4 - Invalid Security Log Class Selection Value", value: "invalid-security", expected: model.LogClassSelectionSecurity, assertionFunc: func(t *testing.T, err error, expected, actual model.LogClassSelection) { assert.Error(t, err) assert.NotEqual(t, expected, actual) }, }, } for _, testcase := range testcases { t.Run(testcase.title, func(t *testing.T) { actual, err := ToLogClassSelection(testcase.value) testcase.assertionFunc(t, err, testcase.expected, actual) }) } }