@@ -102,7 +102,6 @@ def test_context_call_missing_function
102102 "true" => true ,
103103 "false" => false ,
104104 "[1, 2]" => [ 1 , 2 ] ,
105- "[1, function() {}]" => [ 1 , nil ] ,
106105 "'hello'" => "hello" ,
107106 "'red yellow blue'.split(' ')" => [ "red" , "yellow" , "blue" ] ,
108107 "{a:1,b:2}" => { "a" => 1 , "b" => 2 } ,
@@ -335,64 +334,56 @@ def test_large_return_value
335334 assert_equal 600_000 , string . size
336335 end
337336
337+ EVAL_MARKER = Regexp . union ( "(execjs):" , "<eval>" )
338+
338339 def test_exec_syntax_error
339340 begin
340341 ExecJS . exec ( ")" )
341342 flunk
342343 rescue ExecJS ::RuntimeError => e
343344 assert e
344- assert e . backtrace . join ( "\n " ) . include? ( "(execjs): ")
345+ assert_match EVAL_MARKER , e . backtrace . join ( "\n " )
345346 end
346347 end
347348
348349 def test_eval_syntax_error
349- begin
350+ e = assert_raises ( ExecJS :: RuntimeError ) do
350351 ExecJS . eval ( ")" )
351- flunk
352- rescue ExecJS ::RuntimeError => e
353- assert e
354- assert e . backtrace . join ( "\n " ) . include? ( "(execjs):" )
355352 end
353+
354+ assert_match EVAL_MARKER , e . backtrace . join ( "\n " )
356355 end
357356
358357 def test_compile_syntax_error
359- begin
358+ e = assert_raises ( ExecJS :: RuntimeError ) do
360359 ExecJS . compile ( ")" )
361- flunk
362- rescue ExecJS ::RuntimeError => e
363- assert e
364- assert e . backtrace [ 0 ] . include? ( "(execjs):" ) , e . backtrace . join ( "\n " )
365360 end
361+
362+ assert_match EVAL_MARKER , e . backtrace . join ( "\n " )
366363 end
367364
368365 def test_exec_thrown_error
369- begin
366+ e = assert_raises ( ExecJS :: ProgramError ) do
370367 ExecJS . exec ( "throw new Error('hello')" )
371- flunk
372- rescue ExecJS ::ProgramError => e
373- assert e
374- assert e . backtrace . join ( "\n " ) . include? ( "(execjs):" )
375368 end
369+
370+ assert_match EVAL_MARKER , e . backtrace . join ( "\n " )
376371 end
377372
378373 def test_eval_thrown_error
379- begin
374+ e = assert_raises ( ExecJS :: ProgramError ) do
380375 ExecJS . eval ( "(function(){ throw new Error('hello') })()" )
381- flunk
382- rescue ExecJS ::ProgramError => e
383- assert e
384- assert e . backtrace . join ( "\n " ) . include? ( "(execjs):" )
385376 end
377+
378+ assert_match EVAL_MARKER , e . backtrace . join ( "\n " )
386379 end
387380
388381 def test_compile_thrown_error
389- begin
382+ e = assert_raises ( ExecJS :: ProgramError ) do
390383 ExecJS . compile ( "throw new Error('hello')" )
391- flunk
392- rescue ExecJS ::ProgramError => e
393- assert e
394- assert e . backtrace . join ( "\n " ) . include? ( "(execjs):" )
395384 end
385+
386+ assert_match EVAL_MARKER , e . backtrace . join ( "\n " )
396387 end
397388
398389 def test_exec_thrown_string
0 commit comments