// Copyright 2021 the Pinniped contributors. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 package kubeclient import ( "fmt" "testing" "github.com/stretchr/testify/require" ) func Test_verb(t *testing.T) { tests := []struct { name string f func() string want string }{ { name: "error: string format", f: func() string { return fmt.Errorf("%s", VerbGet).Error() }, want: "get", }, { name: "error: value format", f: func() string { return fmt.Errorf("%v", VerbUpdate).Error() }, want: "update", }, { name: "error: go value format", f: func() string { return fmt.Errorf("%#v", VerbDelete).Error() }, want: `"delete"`, }, { name: "error: go value format in middelware request", f: func() string { return fmt.Errorf("%#v", request{verb: VerbPatch}).Error() }, want: `kubeclient.request{verb:"patch", namespace:"", resource:schema.GroupVersionResource{Group:"", Version:"", Resource:""}, reqFuncs:[]func(kubeclient.Object) error(nil), respFuncs:[]func(kubeclient.Object) error(nil), subresource:""}`, }, } for _, tt := range tests { tt := tt t.Run(tt.name, func(t *testing.T) { require.Equal(t, tt.want, tt.f()) }) } }