Mike McQuaid f6bf989378 Remove some integration tests
We have an awful lot of integration tests and they are (comparatively)
really slow. Let's kill those that test edge case conditions and focus
on those that test that our functionality works as expected. Edge cases
can be better tested with unit tests.
2018-05-23 14:41:31 +01:00

29 lines
1.1 KiB
Ruby

describe "brew pull", :integration_test do
it "fetches a patch from a GitHub commit or pull request and applies it", :needs_network, retry: 3 do
CoreTap.instance.path.cd do
system "git", "init"
system "git", "checkout", "-b", "new-branch"
end
expect { brew "pull", "https://jenkins.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", "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/brew/pull/1249" }
.to output(/Fetching patch/).to_stdout
.and output(/Patch failed to apply/).to_stderr
.and be_a_failure
end
end