Added tests for git_available?

This commit is contained in:
mansimarkaur 2017-07-28 02:02:40 +05:30
parent d91036e891
commit 657b6ef7fb
2 changed files with 21 additions and 1 deletions

View File

@ -45,3 +45,22 @@ describe Git do
end
end
end
describe Utils do
describe "::git_available?" do
it "returns true if git --version command succeeds" do
allow_any_instance_of(Process::Status).to receive(:success?).and_return(true)
expect(described_class.git_available?).to be_truthy
end
it "returns false if git --version command does not succeed" do
allow_any_instance_of(Process::Status).to receive(:success?).and_return(false)
expect(described_class.git_available?).to be_falsey
end
it "returns git version if already set" do
described_class.instance_variable_set(:@git, true)
expect(described_class.git_available?).to be_truthy
end
end
end

View File

@ -27,7 +27,8 @@ end
module Utils
def self.git_available?
@git ||= quiet_system HOMEBREW_SHIMS_PATH/"scm/git", "--version"
return @git if instance_variable_defined?(:@git)
@git = quiet_system HOMEBREW_SHIMS_PATH/"scm/git", "--version"
end
def self.git_path