Sha256: 16a0bdcd9b05e19f8e2fa3a3a99856721aa0cc1e7d69b49ba1cb3268585a30f6
Contents?: true
Size: 1.68 KB
Versions: 1
Compression:
Stored size: 1.68 KB
Contents
module ActiveAdminIntegrationSpecHelper extend self def load_defaults! ActiveAdmin.unload! ActiveAdmin.load! ActiveAdmin.register(Category) ActiveAdmin.register(User) ActiveAdmin.register(Post){ belongs_to :user, optional: true } reload_menus! end def reload_menus! ActiveAdmin.application.namespaces.each{|n| n.reset_menu! } end # Sometimes we need to reload the routes within # the application to test them out def reload_routes! Rails.application.reload_routes! end # Helper method to load resources and ensure that Active Admin is # setup with the new configurations. # # Eg: # load_resources do # ActiveAdmin.register(Post) # end # def load_resources ActiveAdmin.unload! yield reload_menus! reload_routes! end def arbre(assigns = {}, helpers = mock_action_view, &block) Arbre::Context.new(assigns, helpers, &block) end def render_arbre_component(assigns = {}, helpers = mock_action_view, &block) arbre(assigns, helpers, &block).children.first end # Returns a fake action view instance to use with our renderers def mock_action_view(assigns = {}) controller = ActionView::TestCase::TestController.new MockActionView.new(ActionController::Base.view_paths, assigns, controller) end alias_method :action_view, :mock_action_view # A mock action view to test view helpers class MockActionView < ::ActionView::Base include ActionView::Helpers include ActiveAdmin::ViewHelpers include Rails.application.routes.url_helpers end def with_translation(translation) I18n.backend.store_translations :en, translation yield ensure I18n.backend.reload! end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
activeadmin-1.0.0.pre5 | spec/support/active_admin_integration_spec_helper.rb |