Skip to content

Commit

Permalink
Tests improvements
Browse files Browse the repository at this point in the history
  • Loading branch information
wmedvede committed Feb 16, 2024
1 parent 989078d commit a55de30
Showing 1 changed file with 28 additions and 15 deletions.
43 changes: 28 additions & 15 deletions workflowproj/workflowproj_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ import (
"strings"
"testing"

"k8s.io/apimachinery/pkg/runtime/schema"

"github.com/apache/incubator-kie-kogito-serverless-operator/api/metadata"
"github.com/stretchr/testify/assert"
"k8s.io/client-go/kubernetes/scheme"
Expand Down Expand Up @@ -140,25 +142,36 @@ func Test_Handler_WorklflowServiceAndPropsAndSpec_SaveAs(t *testing.T) {
assert.NoError(t, err)
assert.Len(t, files, 4)

sort.Slice(files, func(i, j int) bool {
return files[i].Name() < files[j].Name()
})
expectedFiles := []string{
"01-configmap_service-props.yaml",
"02-configmap_01-service-resources.yaml",
"03-configmap_02-service-resources.yaml",
"04-sonataflow_service.yaml",
}
expectedKinds := []schema.GroupVersionKind{
{Group: "", Version: "v1", Kind: "ConfigMap"},
{Group: "", Version: "v1", Kind: "ConfigMap"},
{Group: "", Version: "v1", Kind: "ConfigMap"},
{Group: "sonataflow.org", Version: "v1alpha08", Kind: "SonataFlow"},
}

for fileCount, f := range files {
if strings.HasSuffix(f.Name(), yamlFileExt) {
prefix := fmt.Sprintf("%02d-", fileCount+1)
assert.True(t, strings.HasPrefix(f.Name(), prefix))
contents, err := os.ReadFile(path.Join(tmpPath, f.Name()))
assert.NoError(t, err)
decode := scheme.Codecs.UniversalDeserializer().Decode
k8sObj, _, err := decode(contents, nil, nil)
assert.NoError(t, err)
assert.NotNil(t, k8sObj)
assert.NotEmpty(t, k8sObj.GetObjectKind().GroupVersionKind().String())
}
for i := 0; i < len(files); i++ {
assert.Equal(t, files[i].Name(), expectedFiles[i])
assertIsK8sObject(t, tmpPath, files[i].Name(), expectedKinds[i])
}
}

func assertIsK8sObject(t *testing.T, basePath string, fileName string, gvk schema.GroupVersionKind) {
contents, err := os.ReadFile(path.Join(basePath, fileName))
assert.NoError(t, err)
decode := scheme.Codecs.UniversalDeserializer().Decode
k8sObj, _, err := decode(contents, nil, nil)
assert.NoError(t, err)
assert.NotNil(t, k8sObj)
assert.NotEmpty(t, k8sObj.GetObjectKind().GroupVersionKind().String())
assert.Equal(t, gvk, k8sObj.GetObjectKind().GroupVersionKind())
}

func Test_Handler_WorkflowService_SaveAs(t *testing.T) {
testRun := func(t *testing.T, handler WorkflowProjectHandler) {
proj, err := handler.AsObjects()
Expand Down

0 comments on commit a55de30

Please sign in to comment.