mirror of
https://github.com/ditkrg/active_model_serializers.git
synced 2026-01-22 22:06:50 +00:00
commit
874b8cab30
@ -46,6 +46,8 @@ require 'active_support/testing/isolation'
|
||||
|
||||
module TestHelpers
|
||||
module Generation
|
||||
module_function
|
||||
|
||||
# Make a very basic app, without creating the whole directory structure.
|
||||
# Is faster and simpler than generating a Rails app in a temp directory
|
||||
def make_basic_app
|
||||
|
||||
@ -1,27 +1,34 @@
|
||||
class ActiveModelSerializers::RailsApplication < Rails::Application
|
||||
if Rails::VERSION::MAJOR >= 4
|
||||
config.eager_load = false
|
||||
|
||||
require 'support/isolated_unit'
|
||||
module ActiveModelSerializers
|
||||
RailsApplication = TestHelpers::Generation.make_basic_app do |app|
|
||||
app.configure do
|
||||
config.secret_key_base = 'abc123'
|
||||
|
||||
config.active_support.test_order = :random
|
||||
|
||||
config.logger = Logger.new(nil)
|
||||
|
||||
config.action_controller.perform_caching = true
|
||||
ActionController::Base.cache_store = :memory_store
|
||||
end
|
||||
|
||||
Rails.application.routes.default_url_options = { host: 'example.com' }
|
||||
app.routes.default_url_options = { host: 'example.com' }
|
||||
end
|
||||
end
|
||||
ActiveModelSerializers::RailsApplication.initialize!
|
||||
|
||||
module TestHelper
|
||||
Routes = ActionDispatch::Routing::RouteSet.new
|
||||
Routes.draw do
|
||||
get ':controller(/:action(/:id))'
|
||||
get ':controller(/:action)'
|
||||
end
|
||||
|
||||
ActionController::Base.send :include, Routes.url_helpers
|
||||
ActionController::TestCase.class_eval do
|
||||
def setup
|
||||
@routes = Routes
|
||||
end
|
||||
|
||||
# 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
|
||||
|
||||
@ -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
|
||||
@ -39,8 +39,6 @@ end
|
||||
|
||||
require 'support/rails_app'
|
||||
|
||||
require 'support/test_case'
|
||||
|
||||
require 'support/serialization_testing'
|
||||
|
||||
require 'support/rails5_shims'
|
||||
|
||||
Loading…
Reference in New Issue
Block a user