File tree Expand file tree Collapse file tree 2 files changed +16
-0
lines changed
spec/rspec/rails/matchers Expand file tree Collapse file tree 2 files changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -33,6 +33,10 @@ def with(expected_attributes)
3333 end
3434
3535 def matches? ( block )
36+ if block . nil?
37+ raise ArgumentError , "block is required for have_reported_error matcher"
38+ end
39+
3640 @error_subscriber = ErrorSubscriber . new
3741 ::Rails . error . subscribe ( @error_subscriber )
3842
@@ -181,6 +185,8 @@ def unmatched_attributes(actual)
181185 def have_reported_error ( expected_error = nil )
182186 HaveReportedError . new ( expected_error )
183187 end
188+
189+ alias_method :reports_error , :have_reported_error
184190 end
185191 end
186192end
Original file line number Diff line number Diff line change 44 class TestError < StandardError ; end
55 class AnotherTestError < StandardError ; end
66
7+ it "has an reports_error alias" do
8+ expect { Rails . error . report ( StandardError . new ( "test error" ) ) } . to reports_error
9+ end
10+
11+ it "warns that passing value expectation doesn't work" do
12+ expect {
13+ expect ( Rails . error . report ( StandardError . new ( "test error" ) ) ) . to have_reported_error
14+ } . to raise_error ( ArgumentError , "block is required for have_reported_error matcher" )
15+ end
16+
717 describe "basic functionality" do
818 it "passes when an error is reported" do
919 expect { Rails . error . report ( StandardError . new ( "test error" ) ) } . to have_reported_error
You can’t perform that action at this time.
0 commit comments