From 70e8498ebc7989fab4f15f4f1b483527888ab40a Mon Sep 17 00:00:00 2001 From: Jean Boussier Date: Fri, 7 May 2021 10:22:31 +0200 Subject: [PATCH] Fix a test failure and minitest warnings --- lib/execjs/mini_racer_runtime.rb | 1 + test/test_execjs.rb | 28 +++++++++++++++++++--------- 2 files changed, 20 insertions(+), 9 deletions(-) diff --git a/lib/execjs/mini_racer_runtime.rb b/lib/execjs/mini_racer_runtime.rb index b8a3bca..9b66bbf 100644 --- a/lib/execjs/mini_racer_runtime.rb +++ b/lib/execjs/mini_racer_runtime.rb @@ -6,6 +6,7 @@ module ExecJS def initialize(runtime, source = "", options={}) source = encode(source) @context = ::MiniRacer::Context.new + @context.eval("delete this.console"); translate do @context.eval(source) end diff --git a/test/test_execjs.rb b/test/test_execjs.rb index 81804a1..1ff9319 100644 --- a/test/test_execjs.rb +++ b/test/test_execjs.rb @@ -104,21 +104,21 @@ class TestExecJS < Test '"\\\\"' => "\\" }.each_with_index do |(input, output), index| define_method("test_exec_string_#{index}") do - assert_equal output, ExecJS.exec("return #{input}") + assert_output output, ExecJS.exec("return #{input}") end define_method("test_eval_string_#{index}") do - assert_equal output, ExecJS.eval(input) + assert_output output, ExecJS.eval(input) end define_method("test_compile_return_string_#{index}") do context = ExecJS.compile("var a = #{input};") - assert_equal output, context.eval("a") + assert_output output, context.eval("a") end define_method("test_compile_call_string_#{index}") do context = ExecJS.compile("function a() { return #{input}; }") - assert_equal output, context.call("a") + assert_output output, context.call("a") end end @@ -145,25 +145,25 @@ class TestExecJS < Test json_value = JSON.generate(value, quirks_mode: true) define_method("test_json_value_#{index}") do - assert_equal value, JSON.parse(json_value, quirks_mode: true) + assert_output value, JSON.parse(json_value, quirks_mode: true) end define_method("test_exec_value_#{index}") do - assert_equal value, ExecJS.exec("return #{json_value}") + assert_output value, ExecJS.exec("return #{json_value}") end define_method("test_eval_value_#{index}") do - assert_equal value, ExecJS.eval("#{json_value}") + assert_output value, ExecJS.eval("#{json_value}") end define_method("test_strinigfy_value_#{index}") do context = ExecJS.compile("function json(obj) { return JSON.stringify(obj); }") - assert_equal json_value, context.call("json", value) + assert_output json_value, context.call("json", value) end define_method("test_call_value_#{index}") do context = ExecJS.compile("function id(obj) { return obj; }") - assert_equal value, context.call("id", value) + assert_output value, context.call("id", value) end end @@ -421,4 +421,14 @@ class TestExecJS < Test assert_equal "function foo(bar){return bar}", context.call("uglify", "function foo(bar) {\n return bar;\n}") end + + private + + def assert_output(expected, actual) + if expected.nil? + assert_nil actual + else + assert_equal expected, actual + end + end end