47 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Go
		
	
	
	
| package args
 | |
| 
 | |
| import (
 | |
| 	"strings"
 | |
| 	"testing"
 | |
| 
 | |
| 	"github.com/roboll/helmfile/state"
 | |
| )
 | |
| 
 | |
| func TestGetArgs(t *testing.T) {
 | |
| 	args := "--timeout=3600 --set app1.bootstrap=true --set app2.bootstrap=false --tiller-namespace ns"
 | |
| 	defaultArgs := []string{"--recreate-pods", "--force"}
 | |
| 	Helmdefaults := state.HelmSpec{KubeContext: "test", TillerNamespace: "test-namespace", Args: defaultArgs}
 | |
| 	testState := &state.HelmState{HelmDefaults: Helmdefaults}
 | |
| 	receivedArgs := GetArgs(args, testState)
 | |
| 
 | |
| 	expectedOutput := "--timeout=3600 --set app1.bootstrap=true --set app2.bootstrap=false --tiller-namespace ns --recreate-pods --force --kube-context=test"
 | |
| 
 | |
| 	if compareArgs(expectedOutput, receivedArgs) == false {
 | |
| 		t.Errorf("expected %s, got %s", expectedOutput, strings.Join(receivedArgs, " "))
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func Test2(t *testing.T) {
 | |
| 	args := "--timeout=3600 --set app1.bootstrap=true --set app2.bootstrap=false,app3.bootstrap=true --tiller-namespace ns"
 | |
| 	defaultArgs := []string{"--recreate-pods", "--force"}
 | |
| 	Helmdefaults := state.HelmSpec{KubeContext: "test", TillerNamespace: "test-namespace", Args: defaultArgs}
 | |
| 	testState := &state.HelmState{HelmDefaults: Helmdefaults}
 | |
| 	receivedArgs := GetArgs(args, testState)
 | |
| 
 | |
| 	expectedOutput := "--timeout=3600 --set app1.bootstrap=true --set app2.bootstrap=false,app3.bootstrap=true --tiller-namespace ns --recreate-pods --force --kube-context=test"
 | |
| 
 | |
| 	if compareArgs(expectedOutput, receivedArgs) == false {
 | |
| 		t.Errorf("expected %s, got %s", expectedOutput, strings.Join(receivedArgs, " "))
 | |
| 	}
 | |
| 
 | |
| }
 | |
| 
 | |
| func compareArgs(expectedArgs string, args []string) bool {
 | |
| 
 | |
| 	if strings.Compare(strings.Join(args, " "), expectedArgs) != 0 {
 | |
| 		return false
 | |
| 	}
 | |
| 	return true
 | |
| 
 | |
| }
 |