DEV: Raise exceptions when jobs fail in test mode
Previously jobs would fail silently in test mode. Now they will raise the exception and cause the relevant test to fail. This identified a few broken tests, which I will fix in a followup commit
This commit is contained in:
parent
5e68c5f851
commit
20cda5d689
|
@ -54,6 +54,8 @@ module Discourse
|
|||
current_db: cm.current_db,
|
||||
current_hostname: cm.current_hostname
|
||||
}.merge(context))
|
||||
|
||||
raise ex if Rails.env.test?
|
||||
end
|
||||
|
||||
# Expected less matches than what we got in a find
|
||||
|
|
|
@ -274,7 +274,10 @@ describe Discourse do
|
|||
it "should not fail when called" do
|
||||
exception = StandardError.new
|
||||
|
||||
Discourse.handle_job_exception(exception, nil, nil)
|
||||
expect do
|
||||
Discourse.handle_job_exception(exception, nil, nil)
|
||||
end.to raise_error(StandardError) # Raises in test mode, catch it
|
||||
|
||||
expect(logger.exception).to eq(exception)
|
||||
expect(logger.context.keys).to eq([:current_db, :current_hostname])
|
||||
end
|
||||
|
@ -282,7 +285,10 @@ describe Discourse do
|
|||
it "correctly passes extra context" do
|
||||
exception = StandardError.new
|
||||
|
||||
Discourse.handle_job_exception(exception, { message: "Doing a test", post_id: 31 }, nil)
|
||||
expect do
|
||||
Discourse.handle_job_exception(exception, { message: "Doing a test", post_id: 31 }, nil)
|
||||
end.to raise_error(StandardError) # Raises in test mode, catch it
|
||||
|
||||
expect(logger.exception).to eq(exception)
|
||||
expect(logger.context.keys.sort).to eq([:current_db, :current_hostname, :message, :post_id].sort)
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue