diff --git a/cmd/gogitlabber/prerequisites_test.go b/cmd/gogitlabber/prerequisites_test.go deleted file mode 100644 index e87817f..0000000 --- a/cmd/gogitlabber/prerequisites_test.go +++ /dev/null @@ -1,37 +0,0 @@ -package main - -import ( - "errors" - "testing" -) - -// new type for the lookup function -type lookPathFunc func(file string) (string, error) - -// modified function to accept a lookup function -func verifyGitAvailableWithLookup(lookPath lookPathFunc) error { - _, err := lookPath("git") - if err != nil { - return errors.New("could not find git in path") - } - return nil -} - -func TestVerifyGitAvailable(t *testing.T) { - - // test case 1: git is available - err := verifyGitAvailableWithLookup(func(file string) (string, error) { - return "/usr/bin/git", nil - }) - if err != nil { - t.Errorf("expected no error when git is available, got: %v", err) - } - - // test case 2: git is not available - err = verifyGitAvailableWithLookup(func(file string) (string, error) { - return "", errors.New("git not found") - }) - if err == nil { - t.Error("expected error when git is not available, got nil") - } -} diff --git a/cmd/gogitlabber/prerequisites.go b/cmd/gogitlabber/requirements.go similarity index 56% rename from cmd/gogitlabber/prerequisites.go rename to cmd/gogitlabber/requirements.go index 374631d..25a3951 100644 --- a/cmd/gogitlabber/prerequisites.go +++ b/cmd/gogitlabber/requirements.go @@ -1,13 +1,15 @@ package main import ( + "fmt" "os/exec" ) +// verify if git is available func verifyGitAvailable() error { _, err := exec.LookPath("git") if err != nil { - return err + return fmt.Errorf("git is not installed or not in PATH: %w", err) } return nil }