Merge pull request #1630 from bf4/cleanup_test_app

Clean up test app
This commit is contained in:
Yohan Robert 2016-03-30 10:19:48 +02:00
commit 874b8cab30
4 changed files with 29 additions and 41 deletions

View File

@ -46,6 +46,8 @@ require 'active_support/testing/isolation'
module TestHelpers module TestHelpers
module Generation module Generation
module_function
# Make a very basic app, without creating the whole directory structure. # Make a very basic app, without creating the whole directory structure.
# Is faster and simpler than generating a Rails app in a temp directory # Is faster and simpler than generating a Rails app in a temp directory
def make_basic_app def make_basic_app

View File

@ -1,27 +1,34 @@
class ActiveModelSerializers::RailsApplication < Rails::Application require 'support/isolated_unit'
if Rails::VERSION::MAJOR >= 4 module ActiveModelSerializers
config.eager_load = false RailsApplication = TestHelpers::Generation.make_basic_app do |app|
app.configure do
config.secret_key_base = 'abc123'
config.active_support.test_order = :random
config.action_controller.perform_caching = true
ActionController::Base.cache_store = :memory_store
end
config.secret_key_base = 'abc123' app.routes.default_url_options = { host: 'example.com' }
config.active_support.test_order = :random
config.logger = Logger.new(nil)
config.action_controller.perform_caching = true
ActionController::Base.cache_store = :memory_store
Rails.application.routes.default_url_options = { host: 'example.com' }
end end
end end
ActiveModelSerializers::RailsApplication.initialize!
module TestHelper Routes = ActionDispatch::Routing::RouteSet.new
Routes = ActionDispatch::Routing::RouteSet.new Routes.draw do
Routes.draw do get ':controller(/:action(/:id))'
get ':controller(/:action(/:id))' get ':controller(/:action)'
get ':controller(/:action)' end
ActionController::Base.send :include, Routes.url_helpers
ActionController::TestCase.class_eval do
def setup
@routes = Routes
end end
ActionController::Base.send :include, Routes.url_helpers # For Rails5
# https://github.com/rails/rails/commit/ca83436d1b3b6cedd1eca2259f65661e69b01909#diff-b9bbf56e85d3fe1999f16317f2751e76L17
def assigns(key = nil)
warn "DEPRECATION: Calling 'assigns(#{key})' from #{caller[0]}"
assigns = {}.with_indifferent_access
@controller.view_assigns.each { |k, v| assigns.regular_writer(k, v) }
key.nil? ? assigns : assigns[key]
end
end end

View File

@ -1,19 +0,0 @@
ActionController::TestCase.class_eval do
def setup
@routes = TestHelper::Routes
end
# For Rails5
# https://github.com/rails/rails/commit/ca83436d1b3b6cedd1eca2259f65661e69b01909#diff-b9bbf56e85d3fe1999f16317f2751e76L17
def assigns(key = nil)
assigns = {}.with_indifferent_access
@controller.view_assigns.each { |k, v| assigns.regular_writer(k, v) }
key.nil? ? assigns : assigns[key]
end
# Rails5: Uncomment for debugging where the warnings come from
# def non_kwarg_request_warning
# super
# STDOUT.puts caller[2..3]
# end
end

View File

@ -39,8 +39,6 @@ end
require 'support/rails_app' require 'support/rails_app'
require 'support/test_case'
require 'support/serialization_testing' require 'support/serialization_testing'
require 'support/rails5_shims' require 'support/rails5_shims'