kubeconform/pkg/resource/main_test.go
2020-06-01 12:20:15 +02:00

48 lines
997 B
Go

package resource_test
import (
"github.com/yannh/kubeconform/pkg/resource"
"testing"
)
func TestSignatureFromBytes(t *testing.T) {
testCases := []struct {
name string
have []byte
want resource.Signature
err error
}{
{
name: "valid deployment",
have: []byte(`
apiVersion: apps/v1
kind: Deployment
metadata:
name: myService
namespace: default
labels:
app: myService
spec:
`),
want: resource.Signature{
Kind: "Deployment",
Version: "apps/v1",
Namespace: "default",
},
err: nil,
},
}
for _, testCase := range testCases {
sig, err := resource.SignatureFromBytes(testCase.have)
if err != nil && err.Error() != testCase.err.Error() {
t.Errorf("test \"%s\" - received error: %s", testCase.name, err)
}
if sig.Version != testCase.want.Version ||
sig.Kind != testCase.want.Kind ||
sig.Namespace != testCase.want.Namespace {
t.Errorf("test \"%s\": received %+v, expected %+v", testCase.name, sig, testCase.want)
}
}
}