@@ -21,6 +21,7 @@ import (
2121 "context"
2222 "fmt"
2323 "os"
24+ "path/filepath"
2425 "reflect"
2526 "strings"
2627 "testing"
@@ -712,45 +713,41 @@ preferences: {}
712713users:
713714- name: minikube
714715`
715- var tests = []struct {
716- description string
717- kubeconfigPath string
718- config string
719- err bool
716+ tests := []struct {
717+ description string
718+ config string
719+ err bool
720720 }{
721721 {
722- description : "ok" ,
723- kubeconfigPath : "/tmp/kube_config" ,
724- config : mockK8sConfig ,
725- err : false ,
722+ description : "ok" ,
723+ config : mockK8sConfig ,
724+ err : false ,
726725 },
727726 {
728- description : "empty config" ,
729- kubeconfigPath : "/tmp/kube_config" ,
730- config : "" ,
731- err : true ,
727+ description : "empty config" ,
728+ config : "" ,
729+ err : true ,
732730 },
733731 {
734- description : "broken config" ,
735- kubeconfigPath : "/tmp/kube_config" ,
736- config : "this**is&¬: yaml::valid: file" ,
737- err : true ,
732+ description : "broken config" ,
733+ config : "this**is&¬: yaml::valid: file" ,
734+ err : true ,
738735 },
739736 }
740737
741738 for _ , test := range tests {
742739 t .Run (test .description , func (t * testing.T ) {
743- mockK8sConfigByte := []byte (test .config )
744- mockK8sConfigPath := test .kubeconfigPath
745- err := os .WriteFile (mockK8sConfigPath , mockK8sConfigByte , 0644 )
746- defer os .Remove (mockK8sConfigPath )
747- if err != nil {
748- t .Fatalf ("Unexpected error when writing to file %v. Error: %v" , test .kubeconfigPath , err )
740+ tmpDir := t .TempDir ()
741+ mockK8sConfigPath := filepath .Join (tmpDir , "kube_config" )
742+
743+ if err := os .WriteFile (mockK8sConfigPath , []byte (test .config ), 0600 ); err != nil {
744+ t .Fatalf ("failed to write kubeconfig: %v" , err )
749745 }
750746 t .Setenv ("KUBECONFIG" , mockK8sConfigPath )
751747
752748 k8s := K8sClientGetter {}
753- _ , err = k8s .GetCoreClient ("minikube" )
749+ _ , err := k8s .GetCoreClient ("minikube" )
750+
754751 if err != nil && ! test .err {
755752 t .Fatalf ("GetCoreClient returned unexpected error: %v" , err )
756753 }
0 commit comments