Skip to content

Commit 2f0ea1d

Browse files
committed
Test that backtrace is included in errors
1 parent 74cd9f0 commit 2f0ea1d

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

test/react_renderer_test.rb

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,21 @@ class ReactRendererTest < ActiveSupport::TestCase
3535
assert (err.message.starts_with?(expected_message_one) || err.message.starts_with?(expected_message_two))
3636
end
3737

38+
test 'prerender errors include the error backtrace' do
39+
# Stub the backtrace returned by ExecJS
40+
ExecJS::ProgramError.class_eval {
41+
def backtrace
42+
["Line 1 exception", "Backtrace line 2"]
43+
end
44+
}
45+
46+
err = assert_raises React::Renderer::PrerenderError do
47+
React::Renderer.render("NonexistentComponent", {error: true, exists: false})
48+
end
49+
50+
assert (err.message.ends_with?("Line 1 exception\nBacktrace line 2"))
51+
end
52+
3853
test 'prerender errors are thrown when given a string' do
3954
json_string = Jbuilder.new do |json|
4055
json.error true

0 commit comments

Comments
 (0)