Skip to content

Commit 0a72518

Browse files
author
Per Goncalves da Silva
committed
add more unit testing
Signed-off-by: Per Goncalves da Silva <[email protected]>
1 parent e892f54 commit 0a72518

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

internal/operator-controller/rukpak/convert/generate_test.go

+32
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package convert_test
22

33
import (
44
"cmp"
5+
"fmt"
56
"slices"
67
"testing"
78

@@ -21,6 +22,37 @@ import (
2122
"github.com/operator-framework/operator-controller/internal/operator-controller/rukpak/convert"
2223
)
2324

25+
func Test_ChainedResourceGenerator(t *testing.T) {
26+
g := convert.ChainedResourceGenerator(
27+
func(rv1 *convert.RegistryV1, opts convert.Options) ([]client.Object, error) {
28+
return []client.Object{&corev1.Service{}}, nil
29+
},
30+
func(rv1 *convert.RegistryV1, opts convert.Options) ([]client.Object, error) {
31+
return []client.Object{&corev1.ConfigMap{}}, nil
32+
},
33+
)
34+
35+
objs, err := g.GenerateResources(&convert.RegistryV1{}, convert.Options{})
36+
require.NoError(t, err)
37+
require.Equal(t, []client.Object{&corev1.Service{}, &corev1.ConfigMap{}}, objs)
38+
}
39+
40+
func Test_ChainedResourceGenerator_Errors(t *testing.T) {
41+
g := convert.ChainedResourceGenerator(
42+
func(rv1 *convert.RegistryV1, opts convert.Options) ([]client.Object, error) {
43+
return []client.Object{&corev1.Service{}}, nil
44+
},
45+
func(rv1 *convert.RegistryV1, opts convert.Options) ([]client.Object, error) {
46+
return nil, fmt.Errorf("generator error")
47+
},
48+
)
49+
50+
objs, err := g.GenerateResources(&convert.RegistryV1{}, convert.Options{})
51+
require.Nil(t, objs)
52+
require.Error(t, err)
53+
require.Contains(t, err.Error(), "generator error")
54+
}
55+
2456
func Test_BundleDeploymentGenerator_Succeeds(t *testing.T) {
2557
for _, tc := range []struct {
2658
name string

0 commit comments

Comments
 (0)