Merge pull request #10439 from MikeMcQuaid/fix_retry
spec_helper: fix and improve retry logic.
This commit is contained in:
commit
a83848d24f
@ -35,3 +35,7 @@ RSpec/NestedGroups:
|
|||||||
Max: 5
|
Max: 5
|
||||||
RSpec/MultipleMemoizedHelpers:
|
RSpec/MultipleMemoizedHelpers:
|
||||||
Max: 12
|
Max: 12
|
||||||
|
|
||||||
|
# Annoying to have these autoremoved.
|
||||||
|
RSpec/Focus:
|
||||||
|
AutoCorrect: false
|
||||||
|
@ -48,7 +48,6 @@ module Homebrew
|
|||||||
ENV.delete("HOMEBREW_NO_COLOR")
|
ENV.delete("HOMEBREW_NO_COLOR")
|
||||||
ENV.delete("HOMEBREW_VERBOSE")
|
ENV.delete("HOMEBREW_VERBOSE")
|
||||||
ENV.delete("HOMEBREW_DEBUG")
|
ENV.delete("HOMEBREW_DEBUG")
|
||||||
ENV.delete("VERBOSE")
|
|
||||||
ENV.delete("HOMEBREW_CASK_OPTS")
|
ENV.delete("HOMEBREW_CASK_OPTS")
|
||||||
ENV.delete("HOMEBREW_TEMP")
|
ENV.delete("HOMEBREW_TEMP")
|
||||||
ENV.delete("HOMEBREW_NO_GITHUB_API")
|
ENV.delete("HOMEBREW_NO_GITHUB_API")
|
||||||
@ -68,6 +67,9 @@ module Homebrew
|
|||||||
# to use GPG to sign by default
|
# to use GPG to sign by default
|
||||||
ENV["HOME"] = "#{HOMEBREW_LIBRARY_PATH}/test"
|
ENV["HOME"] = "#{HOMEBREW_LIBRARY_PATH}/test"
|
||||||
|
|
||||||
|
# Print verbose output when requesting debug or verbose output.
|
||||||
|
ENV["HOMEBREW_VERBOSE_TESTS"] = "1" if args.debug? || args.verbose?
|
||||||
|
|
||||||
if args.coverage?
|
if args.coverage?
|
||||||
ENV["HOMEBREW_TESTS_COVERAGE"] = "1"
|
ENV["HOMEBREW_TESTS_COVERAGE"] = "1"
|
||||||
FileUtils.rm_f "test/coverage/.resultset.json"
|
FileUtils.rm_f "test/coverage/.resultset.json"
|
||||||
|
@ -199,11 +199,8 @@ describe Homebrew::Cleanup do
|
|||||||
describe "::cleanup_logs" do
|
describe "::cleanup_logs" do
|
||||||
let(:path) { (HOMEBREW_LOGS/"delete_me") }
|
let(:path) { (HOMEBREW_LOGS/"delete_me") }
|
||||||
|
|
||||||
before do
|
|
||||||
path.mkpath
|
|
||||||
end
|
|
||||||
|
|
||||||
it "cleans all logs if prune is 0" do
|
it "cleans all logs if prune is 0" do
|
||||||
|
path.mkpath
|
||||||
described_class.new(days: 0).cleanup_logs
|
described_class.new(days: 0).cleanup_logs
|
||||||
expect(path).not_to exist
|
expect(path).not_to exist
|
||||||
end
|
end
|
||||||
@ -211,6 +208,7 @@ describe Homebrew::Cleanup do
|
|||||||
it "cleans up logs if older than 30 days" do
|
it "cleans up logs if older than 30 days" do
|
||||||
allow_any_instance_of(Pathname).to receive(:ctime).and_return(31.days.ago)
|
allow_any_instance_of(Pathname).to receive(:ctime).and_return(31.days.ago)
|
||||||
allow_any_instance_of(Pathname).to receive(:mtime).and_return(31.days.ago)
|
allow_any_instance_of(Pathname).to receive(:mtime).and_return(31.days.ago)
|
||||||
|
path.mkpath
|
||||||
subject.cleanup_logs
|
subject.cleanup_logs
|
||||||
expect(path).not_to exist
|
expect(path).not_to exist
|
||||||
end
|
end
|
||||||
@ -218,6 +216,7 @@ describe Homebrew::Cleanup do
|
|||||||
it "does not clean up logs less than 30 days old" do
|
it "does not clean up logs less than 30 days old" do
|
||||||
allow_any_instance_of(Pathname).to receive(:ctime).and_return(15.days.ago)
|
allow_any_instance_of(Pathname).to receive(:ctime).and_return(15.days.ago)
|
||||||
allow_any_instance_of(Pathname).to receive(:mtime).and_return(15.days.ago)
|
allow_any_instance_of(Pathname).to receive(:mtime).and_return(15.days.ago)
|
||||||
|
path.mkpath
|
||||||
subject.cleanup_logs
|
subject.cleanup_logs
|
||||||
expect(path).to exist
|
expect(path).to exist
|
||||||
end
|
end
|
||||||
|
@ -80,6 +80,8 @@ RSpec.configure do |config|
|
|||||||
if ENV["CI"]
|
if ENV["CI"]
|
||||||
config.verbose_retry = true
|
config.verbose_retry = true
|
||||||
config.display_try_failure_messages = true
|
config.display_try_failure_messages = true
|
||||||
|
config.default_retry_count = 2
|
||||||
|
config.default_sleep_interval = 1
|
||||||
|
|
||||||
config.around(:each, :integration_test) do |example|
|
config.around(:each, :integration_test) do |example|
|
||||||
example.metadata[:timeout] ||= 120
|
example.metadata[:timeout] ||= 120
|
||||||
@ -88,7 +90,10 @@ RSpec.configure do |config|
|
|||||||
|
|
||||||
config.around(:each, :needs_network) do |example|
|
config.around(:each, :needs_network) do |example|
|
||||||
example.metadata[:timeout] ||= 120
|
example.metadata[:timeout] ||= 120
|
||||||
example.run_with_retry retry: 5, retry_wait: 5
|
example.metadata[:retry] ||= 4
|
||||||
|
example.metadata[:retry_wait] ||= 2
|
||||||
|
example.metadata[:exponential_backoff] ||= true
|
||||||
|
example.run
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -196,7 +201,7 @@ RSpec.configure do |config|
|
|||||||
@__stderr = $stderr.clone
|
@__stderr = $stderr.clone
|
||||||
|
|
||||||
begin
|
begin
|
||||||
if (example.metadata.keys & [:focus, :byebug]).empty? && !ENV.key?("VERBOSE_TESTS")
|
if (example.metadata.keys & [:focus, :byebug]).empty? && !ENV.key?("HOMEBREW_VERBOSE_TESTS")
|
||||||
$stdout.reopen(File::NULL)
|
$stdout.reopen(File::NULL)
|
||||||
$stderr.reopen(File::NULL)
|
$stderr.reopen(File::NULL)
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user