Skip to content

Commit

Permalink
Fix screenshot helper to provide correct file name
Browse files Browse the repository at this point in the history
We only want the file name to include the word `failures` if it failed,
not any time the user wants to take a screenshot during a test run.
  • Loading branch information
eileencodes committed Feb 20, 2017
1 parent dbb60ff commit 983275e
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 3 deletions.
Expand Up @@ -17,7 +17,7 @@ def take_screenshot
# Takes a screenshot of the current page in the browser if the test
# failed.
#
# +take_screenshot+ is included in <tt>system_test_helper.rb</tt> that is
# +take_failed_screenshot+ is included in <tt>system_test_helper.rb</tt> that is
# generated with the application. To take screenshots when a test fails
# add +take_failed_screenshot+ to the teardown block before clearing
# sessions.
Expand All @@ -26,8 +26,12 @@ def take_failed_screenshot
end

private
def image_name
passed? ? method_name : "failures_#{method_name}"
end

def image_path
"tmp/screenshots/failures_#{method_name}.png"
"tmp/screenshots/#{image_name}.png"
end

def save_image
Expand Down
Expand Up @@ -5,6 +5,14 @@ class ScreenshotHelperTest < ActiveSupport::TestCase
test "image path is saved in tmp directory" do
new_test = ActionDispatch::SystemTestCase.new("x")

assert_equal "tmp/screenshots/failures_x.png", new_test.send(:image_path)
assert_equal "tmp/screenshots/x.png", new_test.send(:image_path)
end

test "image path includes failures text if test did not pass" do
new_test = ActionDispatch::SystemTestCase.new("x")

new_test.stub :passed?, false do
assert_equal "tmp/screenshots/failures_x.png", new_test.send(:image_path)
end
end
end

0 comments on commit 983275e

Please sign in to comment.