1. 24 4月, 2018 1 次提交
  2. 27 2月, 2018 1 次提交
    • Z
      Uses the absolute path for system test screenshots · fc778164
      Zamith 提交于
      Why:
      
      * When getting an error that generates a screenshot it would be helpful
        to be able to ctrl+click it to quickly open it in the browser, which
        does not work with relative paths
      
      This change addresses the need by:
      
      * Changing `image_path` to disregard the relative path and use the
        absolute one instead
      fc778164
  3. 29 11月, 2017 1 次提交
    • E
      Make screenshots default to "simple" format · 9d6e288e
      eileencodes 提交于
      Not everyone uses iTerm2 and whereas Terminal.app on a mac just ignores
      that and outputs the path, other terminals like those on Ubuntu do not.
      A friendlier default is one that works by default.
      
      Closes #31159
      Closes #30957
      9d6e288e
  4. 27 8月, 2017 1 次提交
    • Y
      Retrive screenshot in relative path of current directory · 52422f2a
      yuuji.yaginuma 提交于
      In Rails engine `Rails.root `returns the path of the dummy application.
      Therefore, there is no `tmp` directly where the test is running, so can
      not get the screenshot.
      For this reason, instead of directly specifying tmp, retrive screenshot by
      relative path from the current directory.
      
      Fixes #30405
      52422f2a
  5. 26 8月, 2017 1 次提交
    • Y
      Fix `can't modify frozen String` error in `display_image` · 1fe777ef
      yuuji.yaginuma 提交于
      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 <class:ScreenshotHelperTest>'
      ```
      1fe777ef
  6. 22 8月, 2017 1 次提交
  7. 19 8月, 2017 1 次提交
  8. 29 7月, 2017 1 次提交
  9. 02 7月, 2017 1 次提交
  10. 01 7月, 2017 1 次提交
  11. 14 3月, 2017 1 次提交
  12. 12 3月, 2017 1 次提交
    • R
      Dont always display inline screenshots in system testing (#28133) · 79435c0e
      Renaud Chaput 提交于
      3 output types are supported:
      - simple: only display the screenshot path
      - artifact: display the screenshot in the terminal, using the artifact protocol (supported by some CI)
      - inline (default): display the screenshot in the terminal, inline (supported by some terminals)
      
      You can force the output type by setting the `RAILS_SYSTEM_TESTING_SCREENSHOT` environment variable
      79435c0e
  13. 09 3月, 2017 1 次提交
    • E
      Call system test driver per-instance rather than globally · 7c9af60e
      eileencodes 提交于
      Previously the system test subclasses would call `driven_by` when the
      app booted and not again when the test was initialized which resulted in
      the driver from whichever class was called last to be used in tests.
      
      In rails/rails#28144 the `driven_by` method was changed to run `use` on
      setup and `reset` on teardown. While this was a viable fix this really
      pointed to the problem that system test `driven_by` was a global
      setting, rather than a per-class setting.
      
      To alieviate this problem calling the driver should be done on an
      instance level, rather than on the global level. I added an `initialize`
      method to `SystemTestCase` which will call `use` on the superclass
      driver. Running the server has been moved to `start_application` so that
      it only needs to be called once on boot and no options from `driven_by`
      were being passed to it.
      
      This required a largish rewrite of the tests. Each test needs to utilize
      the subclass so that it can properly test the drivers.
      `ActionDispatch::SystemTestCase` shouldn't be called directly anymore.
      7c9af60e
  14. 04 3月, 2017 1 次提交
    • Y
      Do not take screenshot if driver does not support screenshot · 2ee4058c
      yuuji.yaginuma 提交于
      `Capybara::RackTest::Driver` does not support taking screenshots. If call
      `#save_screenshot` on `Capybara::RackTest::Driver` will raise the error.
      
      ```ruby
      Error:
      UsersTest#test_visiting_the_index:
      Capybara::NotSupportedByDriverError: Capybara::Driver::Base#save_screenshot
      ```
      
      To prevent errors, if driver does not support screenshot, do not call it.
      2ee4058c
  15. 23 2月, 2017 1 次提交
  16. 21 2月, 2017 3 次提交
    • E
      Rename system_test_helper -> application_system_test_case · 2d61c5d8
      eileencodes 提交于
      This renames the system test helper file to be application system test
      case to match what the rest of Rails does. In the future we should
      consider changing the test_helper to match.
      2d61c5d8
    • E
      Fix screenshot helper to provide correct file name · 983275eb
      eileencodes 提交于
      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.
      983275eb
    • E
      Move and rename system tests · 1a0ca84a
      eileencodes 提交于
      * Move system tests back into Action Pack
      * Rename `ActionSystemTest` to `ActionDispatch::SystemTestCase`
      * Remove private base module and only make file for public
      `SystemTestCase` class, name private module `SystemTesting`
      * Rename `ActionSystemTestCase` to `ApplicationSystemTestCase`
      * Update corresponding documentation and guides
      * Delete old `ActionSystemTest` files
      1a0ca84a