From 1fe777ef778ee8de88094cef2ff85363648ade51 Mon Sep 17 00:00:00 2001 From: "yuuji.yaginuma" Date: Sat, 26 Aug 2017 13:40:18 +0900 Subject: Fix `can't modify frozen String` error in `display_image` Without this, `display_image` raises an error as follwing: ``` RuntimeError: can't modify frozen String rails/actionpack/lib/action_dispatch/system_testing/test_helpers/screenshot_helper.rb:72:in `display_image' rails/actionpack/test/dispatch/system_testing/screenshot_helper_test.rb:40:in `block (2 levels) in ' ``` --- .../dispatch/system_testing/screenshot_helper_test.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'actionpack/test/dispatch') diff --git a/actionpack/test/dispatch/system_testing/screenshot_helper_test.rb b/actionpack/test/dispatch/system_testing/screenshot_helper_test.rb index c8711f22d8..4b49a42317 100644 --- a/actionpack/test/dispatch/system_testing/screenshot_helper_test.rb +++ b/actionpack/test/dispatch/system_testing/screenshot_helper_test.rb @@ -28,6 +28,21 @@ class ScreenshotHelperTest < ActiveSupport::TestCase end end end + + test "display_image return artifact format when specify RAILS_SYSTEM_TESTING_SCREENSHOT environment" do + begin + original_output_type = ENV["RAILS_SYSTEM_TESTING_SCREENSHOT"] + ENV["RAILS_SYSTEM_TESTING_SCREENSHOT"] = "artifact" + + new_test = DrivenBySeleniumWithChrome.new("x") + + new_test.stub :passed?, false do + assert_match "\e]1338;url=artifact://tmp/screenshots/failures_x.png\a", new_test.send(:display_image) + end + ensure + ENV["RAILS_SYSTEM_TESTING_SCREENSHOT"] = original_output_type + end + end end class RackTestScreenshotsTest < DrivenByRackTest -- cgit v1.2.3