activeadmin 1.3.1 → 1.4.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of activeadmin might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.circleci/config.yml +467 -0
- data/.gitignore +2 -5
- data/.rspec +1 -0
- data/.rspec_parallel +2 -0
- data/.rubocop.yml +25 -7
- data/.simplecov +4 -6
- data/CHANGELOG.md +175 -83
- data/CODE_OF_CONDUCT.md +64 -12
- data/CONTRIBUTING.md +77 -40
- data/Gemfile +7 -55
- data/Gemfile.common +53 -0
- data/Gemfile.lock +431 -0
- data/README.md +39 -18
- data/Rakefile +1 -32
- data/app/assets/stylesheets/active_admin/_forms.scss +1 -1
- data/app/assets/stylesheets/active_admin/components/_scopes.scss +3 -0
- data/app/views/active_admin/devise/confirmations/new.html.erb +1 -1
- data/app/views/active_admin/devise/passwords/edit.html.erb +1 -1
- data/app/views/active_admin/devise/passwords/new.html.erb +1 -1
- data/app/views/active_admin/devise/registrations/new.html.erb +1 -1
- data/app/views/active_admin/devise/sessions/new.html.erb +1 -1
- data/app/views/active_admin/devise/unlocks/new.html.erb +1 -1
- data/app/views/layouts/active_admin_logged_out.html.erb +1 -1
- data/bin/install_chromedriver.sh +17 -0
- data/config/locales/de.yml +10 -0
- data/config/locales/en.yml +19 -1
- data/config/locales/es.yml +20 -1
- data/config/locales/fi.yml +1 -1
- data/config/locales/it.yml +4 -0
- data/config/locales/nb.yml +15 -5
- data/config/locales/nl.yml +11 -0
- data/config/locales/pl.yml +71 -3
- data/config/locales/ru.yml +2 -0
- data/config/locales/tr.yml +9 -0
- data/config/locales/zh-CN.yml +33 -5
- data/config/mdl_style.rb +2 -0
- data/cucumber.yml +7 -3
- data/docs/.gitignore +1 -0
- data/docs/1-general-configuration.md +16 -1
- data/docs/10-custom-pages.md +14 -0
- data/docs/12-arbre-components.md +28 -1
- data/docs/13-authorization-adapter.md +36 -17
- data/docs/2-resource-customization.md +8 -3
- data/docs/3-index-pages.md +17 -0
- data/docs/3-index-pages/custom-index.md +1 -1
- data/docs/3-index-pages/index-as-blog.md +1 -1
- data/docs/3-index-pages/index-as-table.md +5 -5
- data/docs/5-forms.md +16 -2
- data/docs/8-custom-actions.md +11 -0
- data/docs/Gemfile +2 -0
- data/docs/Gemfile.lock +249 -0
- data/docs/_config.yml +1 -1
- data/docs/_includes/toc.html +1 -1
- data/docs/_includes/top-menu.html +9 -1
- data/docs/documentation.md +1 -1
- data/docs/images/tidelift.svg +14 -0
- data/docs/stylesheets/main.css +26 -2
- data/gemfiles/rails_42.gemfile +2 -2
- data/gemfiles/rails_42.gemfile.lock +410 -0
- data/gemfiles/rails_50.gemfile +2 -2
- data/gemfiles/rails_50.gemfile.lock +424 -0
- data/gemfiles/rails_51.gemfile +2 -2
- data/gemfiles/rails_51.gemfile.lock +423 -0
- data/lib/active_admin/abstract_view_factory.rb +13 -51
- data/lib/active_admin/application.rb +42 -142
- data/lib/active_admin/application_settings.rb +39 -0
- data/lib/active_admin/base_controller/authorization.rb +1 -2
- data/lib/active_admin/batch_actions/controller.rb +1 -1
- data/lib/active_admin/dependency.rb +8 -0
- data/lib/active_admin/deprecation.rb +0 -25
- data/lib/active_admin/dynamic_setting.rb +38 -0
- data/lib/active_admin/dynamic_settings_node.rb +28 -0
- data/lib/active_admin/engine.rb +5 -0
- data/lib/active_admin/filters/active_filter.rb +1 -1
- data/lib/active_admin/filters/resource_extension.rb +1 -1
- data/lib/active_admin/form_builder.rb +95 -60
- data/lib/active_admin/inputs/datepicker_input.rb +7 -0
- data/lib/active_admin/menu.rb +2 -8
- data/lib/active_admin/menu_item.rb +3 -31
- data/lib/active_admin/namespace.rb +18 -6
- data/lib/active_admin/namespace_settings.rb +107 -0
- data/lib/active_admin/orm/active_record/comments.rb +11 -0
- data/lib/active_admin/orm/active_record/comments/comment.rb +1 -1
- data/lib/active_admin/resource/action_items.rb +6 -1
- data/lib/active_admin/resource_controller/decorators.rb +3 -3
- data/lib/active_admin/resource_controller/scoping.rb +1 -1
- data/lib/active_admin/router.rb +89 -84
- data/lib/active_admin/scope.rb +5 -1
- data/lib/active_admin/settings_node.rb +19 -0
- data/lib/active_admin/version.rb +1 -1
- data/lib/active_admin/views/components/active_admin_form.rb +2 -3
- data/lib/active_admin/views/components/menu.rb +32 -0
- data/lib/active_admin/views/components/menu_item.rb +58 -0
- data/lib/active_admin/views/components/scopes.rb +11 -4
- data/lib/active_admin/views/components/sidebar.rb +13 -0
- data/lib/active_admin/views/components/site_title.rb +5 -6
- data/lib/active_admin/views/components/table_for.rb +1 -10
- data/lib/active_admin/views/components/tabs.rb +4 -1
- data/lib/active_admin/views/footer.rb +2 -6
- data/lib/active_admin/views/header.rb +3 -15
- data/lib/active_admin/views/index_as_blog.rb +1 -1
- data/lib/active_admin/views/index_as_grid.rb +25 -25
- data/lib/active_admin/views/index_as_table.rb +6 -6
- data/lib/active_admin/views/pages/base.rb +27 -53
- data/lib/active_admin/views/tabbed_navigation.rb +4 -59
- data/lib/bug_report_templates/active_admin_master.rb +2 -3
- data/tasks/application_generator.rb +48 -0
- data/tasks/gemfiles.rake +8 -0
- data/tasks/lint.rake +96 -7
- data/tasks/local.rake +10 -8
- data/tasks/test.rake +30 -16
- metadata +26 -440
- data/.travis.yml +0 -51
- data/features/action_item.feature +0 -73
- data/features/authorization.feature +0 -64
- data/features/authorization_cancan.feature +0 -52
- data/features/authorization_pundit.feature +0 -37
- data/features/belongs_to.feature +0 -124
- data/features/breadcrumb.feature +0 -75
- data/features/comments/commenting.feature +0 -178
- data/features/comments/viewing_index.feature +0 -19
- data/features/create_another.feature +0 -55
- data/features/dashboard.feature +0 -16
- data/features/decorators.feature +0 -43
- data/features/development_reloading.feature +0 -28
- data/features/edit_page.feature +0 -116
- data/features/favicon.feature +0 -20
- data/features/first_boot.feature +0 -16
- data/features/footer.feature +0 -28
- data/features/global_navigation.feature +0 -29
- data/features/i18n.feature +0 -55
- data/features/index/batch_actions.feature +0 -218
- data/features/index/filters.feature +0 -250
- data/features/index/format_as_csv.feature +0 -220
- data/features/index/formats.feature +0 -88
- data/features/index/index_as_block.feature +0 -15
- data/features/index/index_as_blog.feature +0 -69
- data/features/index/index_as_grid.feature +0 -45
- data/features/index/index_as_table.feature +0 -291
- data/features/index/index_blank_slate.feature +0 -83
- data/features/index/index_parameters.feature +0 -75
- data/features/index/index_scope_to.feature +0 -56
- data/features/index/index_scopes.feature +0 -285
- data/features/index/page_title.feature +0 -41
- data/features/index/pagination.feature +0 -63
- data/features/index/switch_index_view.feature +0 -73
- data/features/menu.feature +0 -72
- data/features/meta_tags.feature +0 -21
- data/features/new_page.feature +0 -136
- data/features/registering_assets.feature +0 -38
- data/features/registering_pages.feature +0 -237
- data/features/registering_resources.feature +0 -33
- data/features/renamed_resource.feature +0 -30
- data/features/root_to.feature +0 -17
- data/features/show/attributes_table_title.feature +0 -54
- data/features/show/columns.feature +0 -40
- data/features/show/default_content.feature +0 -44
- data/features/show/page_title.feature +0 -58
- data/features/show/tabs.feature +0 -33
- data/features/sidebar_sections.feature +0 -210
- data/features/site_title.feature +0 -47
- data/features/specifying_actions.feature +0 -118
- data/features/step_definitions/action_item_steps.rb +0 -7
- data/features/step_definitions/action_link_steps.rb +0 -19
- data/features/step_definitions/additional_web_steps.rb +0 -81
- data/features/step_definitions/asset_steps.rb +0 -15
- data/features/step_definitions/attribute_steps.rb +0 -18
- data/features/step_definitions/attributes_table_title_steps.rb +0 -11
- data/features/step_definitions/batch_action_steps.rb +0 -81
- data/features/step_definitions/blog_steps.rb +0 -3
- data/features/step_definitions/breadcrumb_steps.rb +0 -3
- data/features/step_definitions/column_steps.rb +0 -8
- data/features/step_definitions/comment_steps.rb +0 -32
- data/features/step_definitions/configuration_steps.rb +0 -100
- data/features/step_definitions/dashboard_steps.rb +0 -15
- data/features/step_definitions/factory_steps.rb +0 -35
- data/features/step_definitions/filter_steps.rb +0 -47
- data/features/step_definitions/flash_steps.rb +0 -11
- data/features/step_definitions/footer_steps.rb +0 -11
- data/features/step_definitions/format_steps.rb +0 -56
- data/features/step_definitions/i18n_steps.rb +0 -11
- data/features/step_definitions/index_scope_steps.rb +0 -29
- data/features/step_definitions/index_views_steps.rb +0 -3
- data/features/step_definitions/layout_steps.rb +0 -3
- data/features/step_definitions/member_link_steps.rb +0 -7
- data/features/step_definitions/menu_steps.rb +0 -11
- data/features/step_definitions/meta_tag_steps.rb +0 -3
- data/features/step_definitions/pagination_steps.rb +0 -15
- data/features/step_definitions/sidebar_steps.rb +0 -11
- data/features/step_definitions/site_title_steps.rb +0 -17
- data/features/step_definitions/tab_steps.rb +0 -8
- data/features/step_definitions/table_steps.rb +0 -116
- data/features/step_definitions/user_steps.rb +0 -52
- data/features/step_definitions/web_steps.rb +0 -86
- data/features/sti_resource.feature +0 -65
- data/features/strong_parameters.feature +0 -69
- data/features/support/env.rb +0 -122
- data/features/support/paths.rb +0 -73
- data/features/support/regular_env.rb +0 -7
- data/features/support/reload_env.rb +0 -7
- data/features/support/selectors.rb +0 -45
- data/features/users/logging_in.feature +0 -36
- data/features/users/logging_out.feature +0 -13
- data/features/users/resetting_password.feature +0 -34
- data/gemfiles/rails_52.gemfile +0 -11
- data/lib/active_admin/helpers/settings.rb +0 -114
- data/spec/bug_report_templates_spec.rb +0 -26
- data/spec/javascripts/coffeescripts/jquery.aa.checkbox-toggler-spec.js.coffee +0 -50
- data/spec/javascripts/coffeescripts/jquery.aa.flash.js.coffee +0 -25
- data/spec/javascripts/coffeescripts/jquery.aa.table-checkbox-toggler-spec.js.coffee +0 -34
- data/spec/javascripts/fixtures/checkboxes.html +0 -9
- data/spec/javascripts/fixtures/flashes.html +0 -2
- data/spec/javascripts/fixtures/table_checkboxes.html +0 -17
- data/spec/javascripts/helpers/SpecHelper.js +0 -3
- data/spec/javascripts/support/jasmine.yml +0 -74
- data/spec/javascripts/support/jasmine_runner.rb +0 -19
- data/spec/rails_helper.rb +0 -59
- data/spec/requests/default_namespace_spec.rb +0 -81
- data/spec/requests/memory_spec.rb +0 -25
- data/spec/requests/stylesheets_spec.rb +0 -18
- data/spec/spec_helper.rb +0 -1
- data/spec/support/active_admin_integration_spec_helper.rb +0 -73
- data/spec/support/active_admin_request_helpers.rb +0 -39
- data/spec/support/rails_template.rb +0 -153
- data/spec/support/rails_template_with_data.rb +0 -327
- data/spec/support/templates/admin/stores.rb +0 -7
- data/spec/support/templates/en.yml +0 -8
- data/spec/support/templates/manifest.js +0 -3
- data/spec/support/templates/policies/active_admin/comment_policy.rb +0 -9
- data/spec/support/templates/policies/active_admin/page_policy.rb +0 -18
- data/spec/support/templates/policies/admin_user_policy.rb +0 -11
- data/spec/support/templates/policies/application_policy.rb +0 -44
- data/spec/support/templates/policies/category_policy.rb +0 -7
- data/spec/support/templates/policies/post_policy.rb +0 -15
- data/spec/support/templates/policies/store_policy.rb +0 -11
- data/spec/support/templates/policies/user_policy.rb +0 -11
- data/spec/support/templates/post_decorator.rb +0 -24
- data/spec/unit/abstract_view_factory_spec.rb +0 -78
- data/spec/unit/action_builder_spec.rb +0 -158
- data/spec/unit/active_admin_spec.rb +0 -11
- data/spec/unit/application_spec.rb +0 -184
- data/spec/unit/asset_registration_spec.rb +0 -81
- data/spec/unit/authorization/authorization_adapter_spec.rb +0 -61
- data/spec/unit/authorization/controller_authorization_spec.rb +0 -43
- data/spec/unit/authorization/index_overriding_spec.rb +0 -23
- data/spec/unit/auto_link_spec.rb +0 -93
- data/spec/unit/batch_actions/resource_spec.rb +0 -84
- data/spec/unit/batch_actions/settings_spec.rb +0 -61
- data/spec/unit/belongs_to_spec.rb +0 -76
- data/spec/unit/cancan_adapter_spec.rb +0 -43
- data/spec/unit/comments_spec.rb +0 -176
- data/spec/unit/component_spec.rb +0 -18
- data/spec/unit/config_shared_examples.rb +0 -59
- data/spec/unit/controller_filters_spec.rb +0 -41
- data/spec/unit/csv_builder_spec.rb +0 -313
- data/spec/unit/dependency_spec.rb +0 -135
- data/spec/unit/devise_spec.rb +0 -110
- data/spec/unit/dsl_spec.rb +0 -120
- data/spec/unit/filters/active_filter_spec.rb +0 -189
- data/spec/unit/filters/active_spec.rb +0 -24
- data/spec/unit/filters/filter_form_builder_spec.rb +0 -524
- data/spec/unit/filters/resource_spec.rb +0 -128
- data/spec/unit/form_builder_spec.rb +0 -990
- data/spec/unit/generators/install_spec.rb +0 -31
- data/spec/unit/helpers/collection_spec.rb +0 -68
- data/spec/unit/helpers/output_safety_helper_spec.rb +0 -79
- data/spec/unit/helpers/scope_chain_spec.rb +0 -35
- data/spec/unit/helpers/settings_spec.rb +0 -30
- data/spec/unit/i18n_spec.rb +0 -29
- data/spec/unit/localizers/resource_localizer_spec.rb +0 -36
- data/spec/unit/menu_collection_spec.rb +0 -62
- data/spec/unit/menu_item_spec.rb +0 -141
- data/spec/unit/menu_spec.rb +0 -71
- data/spec/unit/namespace/authorization_spec.rb +0 -27
- data/spec/unit/namespace/register_page_spec.rb +0 -99
- data/spec/unit/namespace/register_resource_spec.rb +0 -162
- data/spec/unit/namespace_spec.rb +0 -124
- data/spec/unit/order_clause_spec.rb +0 -81
- data/spec/unit/page_controller_spec.rb +0 -5
- data/spec/unit/page_spec.rb +0 -128
- data/spec/unit/pretty_format_spec.rb +0 -82
- data/spec/unit/pundit_adapter_spec.rb +0 -98
- data/spec/unit/resource/action_items_spec.rb +0 -69
- data/spec/unit/resource/attributes_spec.rb +0 -49
- data/spec/unit/resource/includes_spec.rb +0 -21
- data/spec/unit/resource/menu_spec.rb +0 -18
- data/spec/unit/resource/naming_spec.rb +0 -122
- data/spec/unit/resource/ordering_spec.rb +0 -35
- data/spec/unit/resource/page_presenters_spec.rb +0 -44
- data/spec/unit/resource/pagination_spec.rb +0 -38
- data/spec/unit/resource/routes_spec.rb +0 -125
- data/spec/unit/resource/scopes_spec.rb +0 -50
- data/spec/unit/resource/sidebars_spec.rb +0 -43
- data/spec/unit/resource_collection_spec.rb +0 -175
- data/spec/unit/resource_controller/data_access_spec.rb +0 -234
- data/spec/unit/resource_controller/decorators_spec.rb +0 -94
- data/spec/unit/resource_controller/sidebars_spec.rb +0 -37
- data/spec/unit/resource_controller_spec.rb +0 -273
- data/spec/unit/resource_registration_spec.rb +0 -61
- data/spec/unit/resource_spec.rb +0 -320
- data/spec/unit/routing_spec.rb +0 -211
- data/spec/unit/scope_spec.rb +0 -209
- data/spec/unit/settings_spec.rb +0 -117
- data/spec/unit/view_factory_spec.rb +0 -19
- data/spec/unit/view_helpers/breadcrumbs_spec.rb +0 -253
- data/spec/unit/view_helpers/display_helper_spec.rb +0 -203
- data/spec/unit/view_helpers/download_format_links_helper_spec.rb +0 -39
- data/spec/unit/view_helpers/fields_for_spec.rb +0 -50
- data/spec/unit/view_helpers/flash_helper_spec.rb +0 -24
- data/spec/unit/view_helpers/form_helper_spec.rb +0 -42
- data/spec/unit/view_helpers/method_or_proc_helper_spec.rb +0 -138
- data/spec/unit/views/components/attributes_table_spec.rb +0 -271
- data/spec/unit/views/components/batch_action_selector_spec.rb +0 -43
- data/spec/unit/views/components/blank_slate_spec.rb +0 -27
- data/spec/unit/views/components/columns_spec.rb +0 -187
- data/spec/unit/views/components/index_list_spec.rb +0 -49
- data/spec/unit/views/components/index_table_for_spec.rb +0 -127
- data/spec/unit/views/components/paginated_collection_spec.rb +0 -249
- data/spec/unit/views/components/panel_spec.rb +0 -58
- data/spec/unit/views/components/sidebar_section_spec.rb +0 -68
- data/spec/unit/views/components/site_title_spec.rb +0 -76
- data/spec/unit/views/components/status_tag_spec.rb +0 -265
- data/spec/unit/views/components/table_for_spec.rb +0 -436
- data/spec/unit/views/components/tabs_spec.rb +0 -67
- data/spec/unit/views/components/unsupported_browser_spec.rb +0 -41
- data/spec/unit/views/index_as_blog_spec.rb +0 -76
- data/spec/unit/views/pages/form_spec.rb +0 -54
- data/spec/unit/views/pages/index_spec.rb +0 -60
- data/spec/unit/views/pages/layout_spec.rb +0 -59
- data/spec/unit/views/pages/show_spec.rb +0 -32
- data/spec/unit/views/tabbed_navigation_spec.rb +0 -158
- data/tasks/parallel_tests.rake +0 -66
@@ -1,41 +0,0 @@
|
|
1
|
-
Feature: Index - Page Title
|
2
|
-
|
3
|
-
Modifying the page title on the index screen
|
4
|
-
|
5
|
-
Scenario: Set a string as the title
|
6
|
-
Given an index configuration of:
|
7
|
-
"""
|
8
|
-
ActiveAdmin.register Post do
|
9
|
-
index title: "Awesome Title"
|
10
|
-
end
|
11
|
-
"""
|
12
|
-
Then I should see the page title "Awesome Title"
|
13
|
-
|
14
|
-
Scenario: Set the title using a proc
|
15
|
-
Given an index configuration of:
|
16
|
-
"""
|
17
|
-
ActiveAdmin.register Post do
|
18
|
-
index title: proc{ 'Custom title from proc' }
|
19
|
-
end
|
20
|
-
"""
|
21
|
-
Then I should see the page title "Custom title from proc"
|
22
|
-
|
23
|
-
Scenario: Set the title using a proc that uses the available resource class
|
24
|
-
Given an index configuration of:
|
25
|
-
"""
|
26
|
-
ActiveAdmin.register Post do
|
27
|
-
index title: proc{ "List of #{resource_class.model_name.plural}" }
|
28
|
-
end
|
29
|
-
"""
|
30
|
-
Then I should see the page title "List of posts"
|
31
|
-
|
32
|
-
Scenario: Set the title in controller
|
33
|
-
Given an index configuration of:
|
34
|
-
"""
|
35
|
-
ActiveAdmin.register Post do
|
36
|
-
controller do
|
37
|
-
before_action { @page_title = "List of #{resource_class.model_name.plural}" }
|
38
|
-
end
|
39
|
-
end
|
40
|
-
"""
|
41
|
-
Then I should see the page title "List of posts"
|
@@ -1,63 +0,0 @@
|
|
1
|
-
Feature: Index Pagination
|
2
|
-
|
3
|
-
Background:
|
4
|
-
Scenario: Viewing index when one page of resources exist
|
5
|
-
Given an index configuration of:
|
6
|
-
"""
|
7
|
-
ActiveAdmin.register Post
|
8
|
-
"""
|
9
|
-
Given 20 posts exist
|
10
|
-
When I am on the index page for posts
|
11
|
-
Then I should see "Displaying all 20 Posts"
|
12
|
-
And I should not see pagination
|
13
|
-
|
14
|
-
Scenario: Viewing index when multiple pages of resources exist
|
15
|
-
Given an index configuration of:
|
16
|
-
"""
|
17
|
-
ActiveAdmin.register Post
|
18
|
-
"""
|
19
|
-
Given 31 posts exist
|
20
|
-
When I am on the index page for posts
|
21
|
-
Then I should see pagination with 2 pages
|
22
|
-
|
23
|
-
Scenario: Viewing index with a custom per page set
|
24
|
-
Given an index configuration of:
|
25
|
-
"""
|
26
|
-
ActiveAdmin.register Post do
|
27
|
-
config.per_page = 2
|
28
|
-
end
|
29
|
-
"""
|
30
|
-
Given 3 posts exist
|
31
|
-
When I am on the index page for posts
|
32
|
-
Then I should see pagination with 2 pages
|
33
|
-
And I should see "Displaying Posts 1 - 2 of 3 in total"
|
34
|
-
|
35
|
-
Scenario: Viewing index with pagination disabled
|
36
|
-
Given an index configuration of:
|
37
|
-
"""
|
38
|
-
ActiveAdmin.register Post do
|
39
|
-
config.paginate = false
|
40
|
-
end
|
41
|
-
"""
|
42
|
-
Given 31 posts exist
|
43
|
-
When I am on the index page for posts
|
44
|
-
Then I should not see pagination
|
45
|
-
|
46
|
-
Scenario: Viewing index with pagination_total set to false
|
47
|
-
Given an index configuration of:
|
48
|
-
"""
|
49
|
-
ActiveAdmin.register Post do
|
50
|
-
config.per_page = 10
|
51
|
-
index pagination_total: false do
|
52
|
-
end
|
53
|
-
end
|
54
|
-
"""
|
55
|
-
Given 11 posts exist
|
56
|
-
When I am on the index page for posts
|
57
|
-
Then I should see "Displaying Posts 1 - 10"
|
58
|
-
And I should not see "11 in total"
|
59
|
-
And I should see the pagination "Next" link
|
60
|
-
|
61
|
-
When I follow "Next"
|
62
|
-
Then I should see "Displaying Posts 11 - 11"
|
63
|
-
And I should not see the pagination "Next" link
|
@@ -1,73 +0,0 @@
|
|
1
|
-
Feature: Switch Index View
|
2
|
-
|
3
|
-
In order to switch index views
|
4
|
-
As a user
|
5
|
-
I want to view links to views
|
6
|
-
|
7
|
-
Scenario: Show default Page Presenter
|
8
|
-
Given a post with the title "Hello World from Table" exists
|
9
|
-
And an index configuration of:
|
10
|
-
"""
|
11
|
-
ActiveAdmin.register Post do
|
12
|
-
index as: :table do
|
13
|
-
column :title
|
14
|
-
end
|
15
|
-
index as: :block do |post|
|
16
|
-
span(link_to(post.title, admin_post_path(post)))
|
17
|
-
end
|
18
|
-
end
|
19
|
-
"""
|
20
|
-
Then I should see "Hello World from Table" within ".index_as_table"
|
21
|
-
|
22
|
-
Scenario: Show default Page Presenter when default is specified
|
23
|
-
Given a post with the title "Hello World from Table" exists
|
24
|
-
And an index configuration of:
|
25
|
-
"""
|
26
|
-
ActiveAdmin.register Post do
|
27
|
-
index as: :block do |post|
|
28
|
-
span(link_to(post.title, admin_post_path(post)))
|
29
|
-
end
|
30
|
-
index as: :table, default: true do
|
31
|
-
column :title
|
32
|
-
end
|
33
|
-
end
|
34
|
-
"""
|
35
|
-
Then I should see "Hello World from Table" within ".index_as_table"
|
36
|
-
|
37
|
-
Scenario: Show links to different page views
|
38
|
-
Given a post with the title "Hello World from Table" exists
|
39
|
-
And an index configuration of:
|
40
|
-
"""
|
41
|
-
ActiveAdmin.register Post do
|
42
|
-
index as: :block do |post|
|
43
|
-
span(link_to(post.title, admin_post_path(post)))
|
44
|
-
end
|
45
|
-
index as: :table, default: true do
|
46
|
-
column :title
|
47
|
-
end
|
48
|
-
end
|
49
|
-
"""
|
50
|
-
Then I should see "Hello World from Table" within ".index_as_table"
|
51
|
-
And I should see a link to "Table"
|
52
|
-
And I should see a link to "List"
|
53
|
-
|
54
|
-
Scenario: Show change between page views
|
55
|
-
Given a post with the title "Hey from Table" and body "My body is awesome" exists
|
56
|
-
And an index configuration of:
|
57
|
-
"""
|
58
|
-
ActiveAdmin.register Post do
|
59
|
-
index as: :block do |post|
|
60
|
-
span(link_to(post.title, admin_post_path(post)))
|
61
|
-
end
|
62
|
-
index as: :table, default: true do
|
63
|
-
column :title
|
64
|
-
column :body
|
65
|
-
end
|
66
|
-
end
|
67
|
-
"""
|
68
|
-
Then I should see "My body is awesome" within ".index_as_table"
|
69
|
-
When I click "List"
|
70
|
-
Then I should not see "My body is awesome" within ".index_as_block"
|
71
|
-
|
72
|
-
|
73
|
-
|
data/features/menu.feature
DELETED
@@ -1,72 +0,0 @@
|
|
1
|
-
Feature: Menu
|
2
|
-
|
3
|
-
Background:
|
4
|
-
Given I am logged in
|
5
|
-
|
6
|
-
Scenario: Hide the menu item
|
7
|
-
Given a configuration of:
|
8
|
-
"""
|
9
|
-
ActiveAdmin.register Post do
|
10
|
-
menu false
|
11
|
-
end
|
12
|
-
"""
|
13
|
-
When I am on the dashboard
|
14
|
-
Then I should not see a menu item for "Posts"
|
15
|
-
|
16
|
-
Scenario: Set the menu item label
|
17
|
-
Given a configuration of:
|
18
|
-
"""
|
19
|
-
ActiveAdmin.register Post do
|
20
|
-
menu label: "Articles"
|
21
|
-
end
|
22
|
-
"""
|
23
|
-
When I am on the dashboard
|
24
|
-
Then I should see a menu item for "Articles"
|
25
|
-
And I should not see a menu item for "Posts"
|
26
|
-
|
27
|
-
Scenario: Add a non-resource menu item
|
28
|
-
Given a configuration of:
|
29
|
-
"""
|
30
|
-
ActiveAdmin.application.namespace :admin do |admin|
|
31
|
-
admin.build_menu do |menu|
|
32
|
-
menu.add label: "Custom Menu", url: :admin_dashboard_path
|
33
|
-
end
|
34
|
-
end
|
35
|
-
"""
|
36
|
-
When I am on the dashboard
|
37
|
-
Then I should see a menu item for "Custom Menu"
|
38
|
-
When I follow "Custom Menu"
|
39
|
-
Then I should be on the admin dashboard page
|
40
|
-
|
41
|
-
Scenario: Adding a resource as a sub menu item
|
42
|
-
Given a configuration of:
|
43
|
-
"""
|
44
|
-
ActiveAdmin.register User
|
45
|
-
ActiveAdmin.register Post do
|
46
|
-
menu parent: 'Users'
|
47
|
-
end
|
48
|
-
"""
|
49
|
-
When I am on the dashboard
|
50
|
-
Then I should see a menu item for "Users"
|
51
|
-
And I should not see a menu item for "Posts"
|
52
|
-
When I follow "Users"
|
53
|
-
Then the "Users" tab should be selected
|
54
|
-
And I should see a nested menu item for "Posts"
|
55
|
-
|
56
|
-
Scenario: Adding a resources as a sub menu items
|
57
|
-
Given a configuration of:
|
58
|
-
"""
|
59
|
-
ActiveAdmin.register Category do
|
60
|
-
menu parent: 'Anything'
|
61
|
-
end
|
62
|
-
ActiveAdmin.register Post do
|
63
|
-
menu parent: 'Anything'
|
64
|
-
end
|
65
|
-
"""
|
66
|
-
When I am on the dashboard
|
67
|
-
Then I should see a menu item for "Anything"
|
68
|
-
And I should not see a menu item for "Categories"
|
69
|
-
And I should not see a menu item for "Posts"
|
70
|
-
And I should see a nested menu item for "Categories"
|
71
|
-
And I should see a nested menu item for "Posts"
|
72
|
-
|
data/features/meta_tags.feature
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
Feature: Meta Tag
|
2
|
-
|
3
|
-
Add custom meta tags to head of pages.
|
4
|
-
|
5
|
-
Background:
|
6
|
-
Given a configuration of:
|
7
|
-
"""
|
8
|
-
ActiveAdmin.register Post
|
9
|
-
ActiveAdmin.application.meta_tags = { author: 'My Company' }
|
10
|
-
ActiveAdmin.application.meta_tags_for_logged_out_pages = { robots: 'noindex' }
|
11
|
-
"""
|
12
|
-
|
13
|
-
Scenario: Logged out views include custom meta tags
|
14
|
-
Given I am logged out
|
15
|
-
When I am on the login page
|
16
|
-
Then the site should contain a meta tag with name "robots" and content "noindex"
|
17
|
-
|
18
|
-
Scenario: Logged in views include custom meta tags
|
19
|
-
Given I am logged in
|
20
|
-
When I am on the dashboard
|
21
|
-
Then the site should contain a meta tag with name "author" and content "My Company"
|
data/features/new_page.feature
DELETED
@@ -1,136 +0,0 @@
|
|
1
|
-
Feature: New Page
|
2
|
-
|
3
|
-
Customizing the form to create new resources
|
4
|
-
|
5
|
-
Background:
|
6
|
-
Given a category named "Music" exists
|
7
|
-
Given a user named "John Doe" exists
|
8
|
-
And I am logged in
|
9
|
-
Given a configuration of:
|
10
|
-
"""
|
11
|
-
ActiveAdmin.register Post do
|
12
|
-
permit_params :custom_category_id, :author_id, :title,
|
13
|
-
:body, :position, :published_date, :starred
|
14
|
-
end
|
15
|
-
"""
|
16
|
-
When I am on the index page for posts
|
17
|
-
|
18
|
-
Scenario: Default form with no config
|
19
|
-
Given I follow "New Post"
|
20
|
-
When I fill in "Title" with "Hello World"
|
21
|
-
And I fill in "Body" with "This is the body"
|
22
|
-
And I select "Music" from "Category"
|
23
|
-
And I select "John Doe" from "Author"
|
24
|
-
And I press "Create Post"
|
25
|
-
Then I should see "Post was successfully created."
|
26
|
-
And I should see the attribute "Title" with "Hello World"
|
27
|
-
And I should see the attribute "Body" with "This is the body"
|
28
|
-
And I should see the attribute "Category" with "Music"
|
29
|
-
And I should see the attribute "Author" with "John Doe"
|
30
|
-
|
31
|
-
Scenario: Generating a custom form
|
32
|
-
Given a configuration of:
|
33
|
-
"""
|
34
|
-
ActiveAdmin.register Post do
|
35
|
-
permit_params :custom_category_id, :author_id, :title, :body, :published_date, :starred
|
36
|
-
|
37
|
-
form do |f|
|
38
|
-
f.inputs "Your Post" do
|
39
|
-
f.input :title
|
40
|
-
f.input :body
|
41
|
-
end
|
42
|
-
f.inputs "Publishing" do
|
43
|
-
f.input :published_date
|
44
|
-
end
|
45
|
-
f.actions
|
46
|
-
end
|
47
|
-
end
|
48
|
-
"""
|
49
|
-
Given I follow "New Post"
|
50
|
-
Then I should see a fieldset titled "Your Post"
|
51
|
-
And I should see a fieldset titled "Publishing"
|
52
|
-
When I fill in "Title" with "Hello World"
|
53
|
-
And I fill in "Body" with "This is the body"
|
54
|
-
And I press "Create Post"
|
55
|
-
Then I should see "Post was successfully created."
|
56
|
-
And I should see the attribute "Title" with "Hello World"
|
57
|
-
And I should see the attribute "Body" with "This is the body"
|
58
|
-
|
59
|
-
Scenario: Generating a custom form decorated with virtual attributes
|
60
|
-
Given a configuration of:
|
61
|
-
"""
|
62
|
-
ActiveAdmin.register Post do
|
63
|
-
decorate_with PostDecorator
|
64
|
-
permit_params :custom_category_id, :author_id, :virtual_title, :body, :published_date, :starred
|
65
|
-
|
66
|
-
form decorate: true do |f|
|
67
|
-
f.inputs "Your Post" do
|
68
|
-
f.input :virtual_title
|
69
|
-
f.input :body
|
70
|
-
end
|
71
|
-
f.inputs "Publishing" do
|
72
|
-
f.input :published_date
|
73
|
-
end
|
74
|
-
f.actions
|
75
|
-
end
|
76
|
-
end
|
77
|
-
"""
|
78
|
-
Given I follow "New Post"
|
79
|
-
Then I should see a fieldset titled "Your Post"
|
80
|
-
And I should see a fieldset titled "Publishing"
|
81
|
-
When I fill in "Virtual title" with "Hello World"
|
82
|
-
And I fill in "Body" with "This is the body"
|
83
|
-
And I press "Create Post"
|
84
|
-
Then I should see "Post was successfully created."
|
85
|
-
And I should see the attribute "Title" with "Hello World"
|
86
|
-
And I should see the attribute "Body" with "This is the body"
|
87
|
-
|
88
|
-
Scenario: Generating a form from a partial
|
89
|
-
Given "app/views/admin/posts/_form.html.erb" contains:
|
90
|
-
"""
|
91
|
-
<% url = @post.new_record? ? admin_posts_path : admin_post_path(@post) %>
|
92
|
-
<%= active_admin_form_for @post, url: url do |f|
|
93
|
-
f.inputs :title, :body
|
94
|
-
f.actions
|
95
|
-
end %>
|
96
|
-
"""
|
97
|
-
Given a configuration of:
|
98
|
-
"""
|
99
|
-
ActiveAdmin.register Post do
|
100
|
-
permit_params :custom_category_id, :author_id, :title, :body, :published_date, :starred
|
101
|
-
|
102
|
-
form partial: "form"
|
103
|
-
end
|
104
|
-
"""
|
105
|
-
Given I follow "New Post"
|
106
|
-
When I fill in "Title" with "Hello World"
|
107
|
-
And I fill in "Body" with "This is the body"
|
108
|
-
And I press "Create Post"
|
109
|
-
Then I should see "Post was successfully created."
|
110
|
-
And I should see the attribute "Title" with "Hello World"
|
111
|
-
And I should see the attribute "Body" with "This is the body"
|
112
|
-
|
113
|
-
Scenario: Displaying fields at runtime
|
114
|
-
Given a configuration of:
|
115
|
-
"""
|
116
|
-
ActiveAdmin.register Post do
|
117
|
-
permit_params :custom_category_id, :author_id, :title, :body, :published_date, :starred
|
118
|
-
|
119
|
-
form do |f|
|
120
|
-
f.inputs "Your Post" do
|
121
|
-
if current_admin_user && false
|
122
|
-
f.input :title
|
123
|
-
end
|
124
|
-
|
125
|
-
f.input :body
|
126
|
-
end
|
127
|
-
f.inputs "Publishing" do
|
128
|
-
f.input :published_date
|
129
|
-
end
|
130
|
-
f.actions
|
131
|
-
end
|
132
|
-
end
|
133
|
-
"""
|
134
|
-
Given I follow "New Post"
|
135
|
-
Then I should not see "Title"
|
136
|
-
And I should see "Body"
|
@@ -1,38 +0,0 @@
|
|
1
|
-
Feature: Registering Assets
|
2
|
-
|
3
|
-
Registering CSS and JS files
|
4
|
-
|
5
|
-
Background:
|
6
|
-
Given a configuration of:
|
7
|
-
"""
|
8
|
-
ActiveAdmin.register Post
|
9
|
-
"""
|
10
|
-
And I am logged in
|
11
|
-
|
12
|
-
|
13
|
-
Scenario: Viewing default asset files
|
14
|
-
When I am on the index page for posts
|
15
|
-
Then I should see the css file "active_admin"
|
16
|
-
Then I should see the js file "active_admin"
|
17
|
-
|
18
|
-
Scenario: Registering a CSS file
|
19
|
-
Given a configuration of:
|
20
|
-
"""
|
21
|
-
ActiveSupport::Deprecation.silence do
|
22
|
-
ActiveAdmin.application.register_stylesheet "some-random-css.css", media: :print
|
23
|
-
ActiveAdmin.register Post
|
24
|
-
end
|
25
|
-
"""
|
26
|
-
When I am on the index page for posts
|
27
|
-
Then I should see the css file "some-random-css" of media "print"
|
28
|
-
|
29
|
-
Scenario: Registering a JS file
|
30
|
-
Given a configuration of:
|
31
|
-
"""
|
32
|
-
ActiveSupport::Deprecation.silence do
|
33
|
-
ActiveAdmin.application.register_javascript "some-random-js.js"
|
34
|
-
ActiveAdmin.register Post
|
35
|
-
end
|
36
|
-
"""
|
37
|
-
When I am on the index page for posts
|
38
|
-
Then I should see the js file "some-random-js"
|