1 package mapper
2
3 import (
4 "fmt"
5 "testing"
6
7 "github.com/stretchr/testify/assert"
8 corev1 "k8s.io/api/core/v1"
9 "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
10 "k8s.io/apimachinery/pkg/runtime"
11 )
12
13
14 func TestToSecrets(t *testing.T) {
15 secret1 := getTestSecret(testOrganization, "ssh-key", "secret1")
16 secret2 := getTestSecret(testOrganization, "ssh-key", "secret2")
17
18 secrets := []corev1.Secret{*secret1, *secret2}
19 secretModels := ToSecrets(secrets)
20
21 for i, secretModel := range secretModels {
22 verifySecretEqualModel(&secrets[i], secretModel, t)
23 }
24 }
25
26
27 func TestToCreateSecretObject(t *testing.T) {
28 test, _ := ToCreateSecretObject("test-name", "test-namespace", testValsSuccess)
29 actual, _ := ToCreateSecretObject("test-name", "test-namespace", testValsSuccess)
30 verifySecretObjectEqualModel(test, actual, t)
31 }
32
33
34 func TestToConvertSecretToUnstructured(t *testing.T) {
35 resource, _ := ToCreateSecretObject("test-name", "test-namespace", testValsSuccess)
36 test, _ := ToTestConvertSecretToUnstructured(resource)
37 actual, _ := ToConvertSecretToUnstructured(resource)
38 assert.Equal(t, test, actual)
39 }
40
41
42 func TestToConvertUnstructuredToSecret(t *testing.T) {
43 test, _ := ToTestConvertUnstructuredToSecret(unstructarr)
44 actual, _ := ToConvertUnstructuredToSecret(unstructarr)
45 assert.Equal(t, test, actual)
46 }
47
48
49 func TestToBuildSecretRedactedTrue(t *testing.T) {
50 model := BuildSecret(getSecret("test-namespace", "test", kubeconfig), "https://localhost", true)
51 assert.Equal(t, model, fmt.Sprintf(sMock, "********"))
52 }
53
54
55 func TestToBuildSecretRedactedFalse(t *testing.T) {
56 model := BuildSecret(getSecret("test-namespace", "test", kubeconfig), "https://localhost", false)
57 assert.Equal(t, model, fmt.Sprintf(sMock, ""))
58 }
59
60 func ToTestConvertUnstructuredToSecret(resources *unstructured.UnstructuredList) ([]corev1.Secret, error) {
61 resp := make([]corev1.Secret, 0)
62 for _, item := range resources.Items {
63 converted := &corev1.Secret{}
64 err := runtime.DefaultUnstructuredConverter.
65 FromUnstructured(item.UnstructuredContent(), &converted)
66 if err != nil {
67 return nil, err
68 }
69 resp = append(resp, *converted)
70 }
71 return resp, nil
72 }
73
74 func ToTestConvertSecretToUnstructured(secret *corev1.Secret) (*unstructured.Unstructured, error) {
75 converted, err := runtime.DefaultUnstructuredConverter.ToUnstructured(secret)
76 if err != nil {
77 return nil, err
78 }
79
80 return &unstructured.Unstructured{Object: converted}, nil
81 }
82
View as plain text