Add missing test dependences to Appraisals #527
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Since as of commit 2748b75, we no longer install dependencies inside of the Rails app that is generated and used to run all of the tests, we have to require all of the dependencies that the app would install inside of the appropriate Appraisals. This will unbreak the test suite (as currently it's broken, whoops ;))
This was mostly straightforward except for some workarounds with the turn gem:
Rails 3.1 appraisal which declare the different turn versions.
require: false
. This causes a problem while running our tests because turn actually requires minitest/autorun, which adds a hook so when Ruby exits, Minitest tests are run. Because we're already using RSpec, Minitest will try to re-run therspec
command we ran within a Minitest environment. This will fail since we are using RSpec-specific command line options to run the tests. Unfortunately there's no way to shut off minitest/autorun after it's been required, so we have to monkey-patch Minitest's #run method so it's a no-op.