mirror of https://github.com/helm/helm.git
				
				
				
			
		
			
	
	
		
			58 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Go
		
	
	
	
		
		
			
		
	
	
			58 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Go
		
	
	
	
|  | package lint | ||
|  | 
 | ||
|  | import ( | ||
|  | 	"strings" | ||
|  | 
 | ||
|  | 	"testing" | ||
|  | ) | ||
|  | 
 | ||
|  | const badChartDir = "testdata/badchartversion" | ||
|  | const badYamlFileDir = "testdata/albatross" | ||
|  | const goodChartDir = "testdata/goodone" | ||
|  | 
 | ||
|  | func TestBadChart(t *testing.T) { | ||
|  | 	m := All(badChartDir) | ||
|  | 	if len(m) != 3 { | ||
|  | 		t.Errorf("All didn't fail with expected errors, got %#v", m) | ||
|  | 	} | ||
|  | 	// There should be INFO, WARNING and ERROR messages, check for them
 | ||
|  | 	var i, w, e = false, false, false | ||
|  | 	for _, msg := range m { | ||
|  | 		if msg.Severity == InfoSev { | ||
|  | 			if strings.Contains(msg.Text, "values.toml") { | ||
|  | 				i = true | ||
|  | 			} | ||
|  | 		} | ||
|  | 		if msg.Severity == WarningSev { | ||
|  | 			if strings.Contains(msg.Text, "No templates") { | ||
|  | 				w = true | ||
|  | 			} | ||
|  | 		} | ||
|  | 		if msg.Severity == ErrorSev { | ||
|  | 			if strings.Contains(msg.Text, "Chart.yaml does not exist") { | ||
|  | 				e = true | ||
|  | 			} | ||
|  | 		} | ||
|  | 	} | ||
|  | 	if !i || !w || !e { | ||
|  | 		t.Errorf("Didn't find all the expected errors, got %#v", m) | ||
|  | 	} | ||
|  | } | ||
|  | 
 | ||
|  | func TestInvalidYaml(t *testing.T) { | ||
|  | 	m := All(badYamlFileDir) | ||
|  | 	if len(m) != 1 { | ||
|  | 		t.Errorf("All didn't fail with expected errors") | ||
|  | 	} | ||
|  | 	if !strings.Contains(m[0].Text, "deliberateSyntaxError") { | ||
|  | 		t.Errorf("All didn't have the error for deliberateSyntaxError") | ||
|  | 	} | ||
|  | } | ||
|  | 
 | ||
|  | func TestGoodChart(t *testing.T) { | ||
|  | 	m := All(goodChartDir) | ||
|  | 	if len(m) != 0 { | ||
|  | 		t.Errorf("All failed but shouldn't have: %#v", m) | ||
|  | 	} | ||
|  | } |