update-test: handle missing master branch.

Ensure it's always created.

Also, re-order `update-test` in `test-bot` (and `readall`) so they are
run before the test suites.
This commit is contained in:
Mike McQuaid 2016-09-16 17:17:50 +01:00
parent 53713593d6
commit 1649545cf9
2 changed files with 12 additions and 11 deletions

View File

@ -711,6 +711,16 @@ module Homebrew
return if @skip_homebrew
if !@tap && (@formulae.empty? || @test_default_formula)
# TODO: try to fix this on Linux at some stage.
if OS.mac?
# test update from origin/master to current commit.
test "brew", "update-test"
# test no-op update from current commit (to current commit, a no-op).
test "brew", "update-test", "--commit=HEAD"
end
test "brew", "readall", "--syntax"
coverage_args = []
if ARGV.include?("--coverage")
if ENV["JENKINS_HOME"]
@ -725,19 +735,11 @@ module Homebrew
test "brew", "tests", "--no-compat"
test "brew", "tests", "--generic"
test "brew", "tests", "--official-cmd-taps", *coverage_args
test "brew", "readall", "--syntax"
if OS.mac?
run_as_not_developer { test "brew", "tap", "caskroom/cask" }
test "brew", "cask-tests", *coverage_args
end
# TODO: try to fix this on Linux at some stage.
if OS.mac?
# test update from origin/master to current commit.
test "brew", "update-test"
# test no-op update from current commit (to current commit, a no-op).
test "brew", "update-test", "--commit=HEAD"
end
elsif @tap
test "brew", "readall", "--aliases", @tap.name
end

View File

@ -40,8 +40,7 @@ module Homebrew
safe_system "git", "config", "remote.origin.url", "#{curdir}/remote.git"
# force push origin to end_sha1
safe_system "git", "checkout", "--force", "master"
safe_system "git", "reset", "--hard", end_sha1
safe_system "git", "checkout", "-B", "master", end_sha1
safe_system "git", "push", "--force", "origin", "master"
# set test copy to start_sha1