mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
7c9af60e5c
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. |
||
---|---|---|
.. | ||
http | ||
journey | ||
middleware | ||
request | ||
routing | ||
system_testing | ||
testing | ||
journey.rb | ||
railtie.rb | ||
routing.rb | ||
system_test_case.rb |