Convert brew pull
test to spec.
This commit is contained in:
parent
c7121f6be5
commit
17dca9b4d5
60
Library/Homebrew/test/dev-cmd/pull_spec.rb
Normal file
60
Library/Homebrew/test/dev-cmd/pull_spec.rb
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
describe "brew pull", :integration_test do
|
||||||
|
it "fails when no argument is given" do
|
||||||
|
expect { brew "pull" }
|
||||||
|
.to output(/This command requires at least one argument/).to_stderr
|
||||||
|
.and not_to_output.to_stdout
|
||||||
|
.and be_a_failure
|
||||||
|
end
|
||||||
|
|
||||||
|
it "fetches a patch from a GitHub commit or pull request and applies it" do
|
||||||
|
skip "Requires network connection." if ENV["HOMEBREW_NO_GITHUB_API"]
|
||||||
|
|
||||||
|
CoreTap.instance.path.cd do
|
||||||
|
shutup do
|
||||||
|
system "git", "init"
|
||||||
|
system "git", "checkout", "-b", "new-branch"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
expect { brew "pull", "https://bot.brew.sh/job/Homebrew\%20Testing/1028/" }
|
||||||
|
.to output(/Testing URLs require `\-\-bottle`!/).to_stderr
|
||||||
|
.and not_to_output.to_stdout
|
||||||
|
.and be_a_failure
|
||||||
|
|
||||||
|
expect { brew "pull", "1" }
|
||||||
|
.to output(/Fetching patch/).to_stdout
|
||||||
|
.and output(/Current branch is new\-branch/).to_stderr
|
||||||
|
.and be_a_failure
|
||||||
|
|
||||||
|
expect { brew "pull", "--bump", "8" }
|
||||||
|
.to output(/Fetching patch/).to_stdout
|
||||||
|
.and output(/No changed formulae found to bump/).to_stderr
|
||||||
|
.and be_a_failure
|
||||||
|
|
||||||
|
expect { brew "pull", "--bump", "https://api.github.com/repos/Homebrew/homebrew-core/pulls/122" }
|
||||||
|
.to output(/Fetching patch/).to_stdout
|
||||||
|
.and output(/Can only bump one changed formula/).to_stderr
|
||||||
|
.and be_a_failure
|
||||||
|
|
||||||
|
expect { brew "pull", "https://github.com/Homebrew/homebrew-core/pull/1" }
|
||||||
|
.to output(/Fetching patch/).to_stdout
|
||||||
|
.and output(/Patch failed to apply/).to_stderr
|
||||||
|
.and be_a_failure
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "--rebase" do
|
||||||
|
it "fails" do
|
||||||
|
expect { brew "pull", "--rebase" }
|
||||||
|
.to output(/You meant `git pull --rebase`./).to_stderr
|
||||||
|
.and not_to_output.to_stdout
|
||||||
|
.and be_a_failure
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
it "fails when given 0" do
|
||||||
|
expect { brew "pull", "0" }
|
||||||
|
.to output(/Not a GitHub pull request or commit/).to_stderr
|
||||||
|
.and not_to_output.to_stdout
|
||||||
|
.and be_a_failure
|
||||||
|
end
|
||||||
|
end
|
@ -1,10 +0,0 @@
|
|||||||
require "testing_env"
|
|
||||||
|
|
||||||
class IntegrationCommandTestPullOffline < IntegrationCommandTestCase
|
|
||||||
def test_pull_offline
|
|
||||||
assert_match "You meant `git pull --rebase`.", cmd_fail("pull", "--rebase")
|
|
||||||
assert_match "This command requires at least one argument", cmd_fail("pull")
|
|
||||||
assert_match "Not a GitHub pull request or commit",
|
|
||||||
cmd_fail("pull", "0")
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,27 +0,0 @@
|
|||||||
require "testing_env"
|
|
||||||
|
|
||||||
class IntegrationCommandTestPull < IntegrationCommandTestCase
|
|
||||||
def test_pull
|
|
||||||
skip "Requires network connection" if ENV["HOMEBREW_NO_GITHUB_API"]
|
|
||||||
|
|
||||||
core_tap = CoreTap.new
|
|
||||||
core_tap.path.cd do
|
|
||||||
shutup do
|
|
||||||
system "git", "init"
|
|
||||||
system "git", "checkout", "-b", "new-branch"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
assert_match "Testing URLs require `--bottle`!",
|
|
||||||
cmd_fail("pull", "https://bot.brew.sh/job/Homebrew\%20Testing/1028/")
|
|
||||||
assert_match "Current branch is new-branch",
|
|
||||||
cmd_fail("pull", "1")
|
|
||||||
assert_match "No changed formulae found to bump",
|
|
||||||
cmd_fail("pull", "--bump", "8")
|
|
||||||
assert_match "Can only bump one changed formula",
|
|
||||||
cmd_fail("pull", "--bump",
|
|
||||||
"https://api.github.com/repos/Homebrew/homebrew-core/pulls/122")
|
|
||||||
assert_match "Patch failed to apply",
|
|
||||||
cmd_fail("pull", "https://github.com/Homebrew/homebrew-core/pull/1")
|
|
||||||
end
|
|
||||||
end
|
|
Loading…
x
Reference in New Issue
Block a user