Browse Source

util/httpm: don't run test if .git doesn't exist

Updates #9635

Signed-off-by: Andrew Dunham <[email protected]>
Change-Id: I9089200f9327605036c88fc12834acece0c11694
Andrew Dunham 2 years ago
parent
commit
5aa7687b21
1 changed files with 10 additions and 2 deletions
  1. 10 2
      util/httpm/httpm_test.go

+ 10 - 2
util/httpm/httpm_test.go

@@ -12,12 +12,20 @@ import (
 )
 
 func TestUsedConsistently(t *testing.T) {
-	cmd := exec.Command("git", "grep", "-l", "-F", "http.Method")
 	dir, err := os.Getwd()
 	if err != nil {
 		t.Fatal(err)
 	}
-	cmd.Dir = filepath.Join(dir, "../..")
+	rootDir := filepath.Join(dir, "../..")
+
+	// If we don't have a .git directory, we're not in a git checkout (e.g.
+	// a downstream package); skip this test.
+	if _, err := os.Stat(filepath.Join(rootDir, ".git")); err != nil {
+		t.Skipf("skipping test since .git doesn't exist: %v", err)
+	}
+
+	cmd := exec.Command("git", "grep", "-l", "-F", "http.Method")
+	cmd.Dir = rootDir
 	matches, _ := cmd.Output()
 	for _, fn := range strings.Split(strings.TrimSpace(string(matches)), "\n") {
 		switch fn {