activeadmin 1.1.0 → 2.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.

Files changed (465) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +469 -100
  3. data/CODE_OF_CONDUCT.md +64 -12
  4. data/CONTRIBUTING.md +89 -47
  5. data/README.md +73 -19
  6. data/app/assets/javascripts/active_admin/base.es6 +23 -0
  7. data/app/assets/javascripts/active_admin/ext/jquery-ui.es6 +7 -0
  8. data/app/assets/javascripts/active_admin/ext/jquery.es6 +9 -0
  9. data/app/assets/javascripts/active_admin/initializers/datepicker.es6 +16 -0
  10. data/app/assets/javascripts/active_admin/initializers/filters.es6 +45 -0
  11. data/app/assets/javascripts/active_admin/initializers/tabs.es6 +6 -0
  12. data/app/assets/javascripts/active_admin/lib/active_admin.es6 +41 -0
  13. data/app/assets/javascripts/active_admin/lib/batch_actions.es6 +59 -0
  14. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.es6 +49 -0
  15. data/app/assets/javascripts/active_admin/lib/dropdown-menu.es6 +123 -0
  16. data/app/assets/javascripts/active_admin/lib/has_many.es6 +95 -0
  17. data/app/assets/javascripts/active_admin/lib/modal_dialog.es6 +61 -0
  18. data/app/assets/javascripts/active_admin/lib/per_page.es6 +47 -0
  19. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.es6 +36 -0
  20. data/app/assets/stylesheets/active_admin/_forms.scss +3 -15
  21. data/app/assets/stylesheets/active_admin/components/_scopes.scss +3 -0
  22. data/app/assets/stylesheets/active_admin/components/_status_tags.scss +0 -5
  23. data/app/assets/stylesheets/active_admin/components/_tabs.scss +1 -1
  24. data/app/assets/stylesheets/active_admin/mixins/_gradients.scss +1 -1
  25. data/app/views/active_admin/devise/confirmations/new.html.erb +2 -2
  26. data/app/views/active_admin/devise/passwords/edit.html.erb +2 -2
  27. data/app/views/active_admin/devise/passwords/new.html.erb +2 -2
  28. data/app/views/active_admin/devise/registrations/new.html.erb +2 -3
  29. data/app/views/active_admin/devise/sessions/new.html.erb +1 -1
  30. data/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  31. data/app/views/active_admin/devise/unlocks/new.html.erb +2 -2
  32. data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  33. data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  34. data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  35. data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  36. data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  37. data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  38. data/app/views/layouts/active_admin_logged_out.html.erb +2 -2
  39. data/config/locales/ar.yml +3 -2
  40. data/config/locales/bg.yml +1 -1
  41. data/config/locales/bs.yml +1 -0
  42. data/config/locales/ca.yml +1 -1
  43. data/config/locales/cs.yml +1 -0
  44. data/config/locales/da.yml +1 -0
  45. data/config/locales/de-CH.yml +1 -0
  46. data/config/locales/de.yml +29 -0
  47. data/config/locales/el.yml +1 -0
  48. data/config/locales/en-CA.yml +1 -0
  49. data/config/locales/en-GB.yml +1 -0
  50. data/config/locales/en.yml +21 -1
  51. data/config/locales/eo.yml +145 -0
  52. data/config/locales/es-MX.yml +1 -0
  53. data/config/locales/es.yml +21 -1
  54. data/config/locales/fa.yml +1 -0
  55. data/config/locales/fi.yml +2 -1
  56. data/config/locales/fr.yml +2 -1
  57. data/config/locales/he.yml +1 -1
  58. data/config/locales/hr.yml +1 -0
  59. data/config/locales/hu.yml +5 -0
  60. data/config/locales/id.yml +1 -0
  61. data/config/locales/it.yml +13 -3
  62. data/config/locales/ja.yml +6 -0
  63. data/config/locales/ko.yml +1 -0
  64. data/config/locales/lt.yml +3 -2
  65. data/config/locales/lv.yml +1 -0
  66. data/config/locales/mk.yml +134 -0
  67. data/config/locales/nb.yml +16 -5
  68. data/config/locales/nl.yml +12 -0
  69. data/config/locales/pl.yml +72 -3
  70. data/config/locales/pt-BR.yml +9 -0
  71. data/config/locales/pt-PT.yml +1 -0
  72. data/config/locales/ro.yml +1 -0
  73. data/config/locales/ru.yml +3 -0
  74. data/config/locales/sk.yml +60 -0
  75. data/config/locales/sv-SE.yml +3 -0
  76. data/config/locales/tr.yml +10 -0
  77. data/config/locales/uk.yml +3 -0
  78. data/config/locales/vi.yml +48 -6
  79. data/config/locales/zh-CN.yml +34 -5
  80. data/config/locales/zh-TW.yml +1 -0
  81. data/docs/.gitignore +1 -0
  82. data/docs/0-installation.md +2 -2
  83. data/docs/1-general-configuration.md +16 -1
  84. data/docs/10-custom-pages.md +14 -0
  85. data/docs/12-arbre-components.md +41 -1
  86. data/docs/13-authorization-adapter.md +41 -22
  87. data/docs/2-resource-customization.md +10 -5
  88. data/docs/3-index-pages/custom-index.md +1 -1
  89. data/docs/3-index-pages/index-as-blog.md +1 -1
  90. data/docs/3-index-pages/index-as-table.md +12 -5
  91. data/docs/3-index-pages.md +17 -0
  92. data/docs/5-forms.md +16 -2
  93. data/docs/8-custom-actions.md +11 -0
  94. data/docs/CNAME +1 -1
  95. data/docs/Gemfile +2 -1
  96. data/docs/Gemfile.lock +248 -0
  97. data/docs/_config.yml +3 -1
  98. data/docs/_includes/toc.html +1 -1
  99. data/docs/_includes/top-menu.html +9 -1
  100. data/docs/documentation.md +1 -1
  101. data/docs/images/tidelift.svg +14 -0
  102. data/docs/index.html +109 -8
  103. data/docs/stylesheets/main.css +55 -2
  104. data/lib/active_admin/abstract_view_factory.rb +13 -51
  105. data/lib/active_admin/application.rb +52 -159
  106. data/lib/active_admin/application_settings.rb +42 -0
  107. data/lib/active_admin/asset_registration.rb +0 -8
  108. data/lib/active_admin/base_controller/authorization.rb +4 -6
  109. data/lib/active_admin/base_controller.rb +6 -6
  110. data/lib/active_admin/batch_actions/controller.rb +2 -2
  111. data/lib/active_admin/batch_actions/resource_extension.rb +9 -5
  112. data/lib/active_admin/callbacks.rb +1 -1
  113. data/lib/active_admin/controller_action.rb +2 -1
  114. data/lib/active_admin/csv_builder.rb +10 -7
  115. data/lib/active_admin/dependency.rb +3 -67
  116. data/lib/active_admin/deprecation.rb +0 -25
  117. data/lib/active_admin/dsl.rb +1 -8
  118. data/lib/active_admin/dynamic_setting.rb +38 -0
  119. data/lib/active_admin/dynamic_settings_node.rb +28 -0
  120. data/lib/active_admin/engine.rb +5 -0
  121. data/lib/active_admin/error.rb +4 -2
  122. data/lib/active_admin/filters/active_filter.rb +49 -12
  123. data/lib/active_admin/filters/active_sidebar.rb +6 -2
  124. data/lib/active_admin/filters/forms.rb +7 -4
  125. data/lib/active_admin/filters/formtastic_addons.rb +1 -1
  126. data/lib/active_admin/filters/resource_extension.rb +28 -4
  127. data/lib/active_admin/form_builder.rb +98 -63
  128. data/lib/active_admin/generators/boilerplate.rb +12 -4
  129. data/lib/active_admin/helpers/scope_chain.rb +1 -0
  130. data/lib/active_admin/inputs/datepicker_input.rb +8 -1
  131. data/lib/active_admin/inputs/filters/base/search_method_select.rb +2 -2
  132. data/lib/active_admin/inputs/filters/select_input.rb +5 -1
  133. data/lib/active_admin/menu.rb +2 -8
  134. data/lib/active_admin/menu_item.rb +4 -32
  135. data/lib/active_admin/namespace.rb +20 -8
  136. data/lib/active_admin/namespace_settings.rb +123 -0
  137. data/lib/active_admin/order_clause.rb +2 -2
  138. data/lib/active_admin/orm/active_record/comments/comment.rb +2 -2
  139. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +17 -7
  140. data/lib/active_admin/orm/active_record/comments.rb +15 -4
  141. data/lib/active_admin/page_dsl.rb +1 -1
  142. data/lib/active_admin/page_presenter.rb +2 -1
  143. data/lib/active_admin/pundit_adapter.rb +18 -5
  144. data/lib/active_admin/resource/action_items.rb +7 -2
  145. data/lib/active_admin/resource/attributes.rb +7 -4
  146. data/lib/active_admin/resource/belongs_to.rb +6 -1
  147. data/lib/active_admin/resource/menu.rb +3 -3
  148. data/lib/active_admin/resource/model.rb +15 -0
  149. data/lib/active_admin/resource/naming.rb +3 -3
  150. data/lib/active_admin/resource/routes.rb +20 -7
  151. data/lib/active_admin/resource/scopes.rb +3 -3
  152. data/lib/active_admin/resource/sidebars.rb +1 -1
  153. data/lib/active_admin/resource.rb +17 -3
  154. data/lib/active_admin/resource_collection.rb +2 -2
  155. data/lib/active_admin/resource_controller/action_builder.rb +10 -0
  156. data/lib/active_admin/resource_controller/data_access.rb +5 -1
  157. data/lib/active_admin/resource_controller/decorators.rb +5 -5
  158. data/lib/active_admin/resource_controller/polymorphic_routes.rb +36 -0
  159. data/lib/active_admin/resource_controller/resource_class_methods.rb +2 -0
  160. data/lib/active_admin/resource_controller/scoping.rb +1 -1
  161. data/lib/active_admin/resource_controller.rb +2 -0
  162. data/lib/active_admin/resource_dsl.rb +7 -3
  163. data/lib/active_admin/router.rb +90 -84
  164. data/lib/active_admin/scope.rb +16 -8
  165. data/lib/active_admin/settings_node.rb +19 -0
  166. data/lib/active_admin/sidebar_section.rb +3 -1
  167. data/lib/active_admin/version.rb +1 -1
  168. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +2 -2
  169. data/lib/active_admin/view_helpers/display_helper.rb +13 -4
  170. data/lib/active_admin/view_helpers/download_format_links_helper.rb +1 -0
  171. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +3 -0
  172. data/lib/active_admin/view_helpers.rb +1 -1
  173. data/lib/active_admin/views/components/active_admin_form.rb +9 -4
  174. data/lib/active_admin/views/components/attributes_table.rb +3 -3
  175. data/lib/active_admin/views/components/menu.rb +32 -0
  176. data/lib/active_admin/views/components/menu_item.rb +58 -0
  177. data/lib/active_admin/views/components/paginated_collection.rb +3 -3
  178. data/lib/active_admin/views/components/scopes.rb +11 -4
  179. data/lib/active_admin/views/components/sidebar.rb +13 -0
  180. data/lib/active_admin/views/components/site_title.rb +5 -6
  181. data/lib/active_admin/views/components/status_tag.rb +6 -19
  182. data/lib/active_admin/views/components/table_for.rb +3 -12
  183. data/lib/active_admin/views/components/tabs.rb +15 -3
  184. data/lib/active_admin/views/footer.rb +3 -7
  185. data/lib/active_admin/views/header.rb +3 -15
  186. data/lib/active_admin/views/index_as_blog.rb +1 -1
  187. data/lib/active_admin/views/index_as_grid.rb +25 -25
  188. data/lib/active_admin/views/index_as_table.rb +18 -10
  189. data/lib/active_admin/views/pages/base.rb +30 -53
  190. data/lib/active_admin/views/tabbed_navigation.rb +4 -59
  191. data/lib/active_admin/views.rb +1 -1
  192. data/lib/active_admin.rb +10 -4
  193. data/lib/generators/active_admin/assets/assets_generator.rb +2 -2
  194. data/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
  195. data/lib/generators/active_admin/install/install_generator.rb +7 -3
  196. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +38 -3
  197. data/lib/generators/active_admin/install/templates/dashboard.rb +2 -3
  198. data/lib/generators/active_admin/install/templates/migrations/create_active_admin_comments.rb.erb +1 -15
  199. data/lib/generators/active_admin/page/page_generator.rb +1 -1
  200. data/lib/generators/active_admin/resource/resource_generator.rb +2 -2
  201. data/lib/generators/active_admin/resource/templates/admin.rb.erb +40 -37
  202. data/lib/ransack_ext.rb +3 -3
  203. data/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +80 -0
  204. data/vendor/assets/javascripts/jquery-ui/form.js +22 -0
  205. data/vendor/assets/javascripts/jquery-ui/labels.js +65 -0
  206. data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +274 -283
  207. metadata +127 -523
  208. data/.github/ISSUE_TEMPLATE.md +0 -20
  209. data/.gitignore +0 -49
  210. data/.mdlrc +0 -1
  211. data/.rubocop.yml +0 -76
  212. data/.simplecov +0 -13
  213. data/.travis.yml +0 -51
  214. data/.yardopts +0 -7
  215. data/Gemfile +0 -58
  216. data/Rakefile +0 -54
  217. data/activeadmin.gemspec +0 -32
  218. data/app/assets/javascripts/active_admin/base.js.coffee +0 -13
  219. data/app/assets/javascripts/active_admin/ext/jquery-ui.js.coffee +0 -6
  220. data/app/assets/javascripts/active_admin/ext/jquery.js.coffee +0 -7
  221. data/app/assets/javascripts/active_admin/initializers/batch_actions.js.coffee +0 -11
  222. data/app/assets/javascripts/active_admin/initializers/datepicker.js.coffee +0 -14
  223. data/app/assets/javascripts/active_admin/initializers/filters.js.coffee +0 -26
  224. data/app/assets/javascripts/active_admin/initializers/tabs.js.coffee +0 -7
  225. data/app/assets/javascripts/active_admin/lib/batch_actions.js.coffee +0 -42
  226. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.js.coffee +0 -46
  227. data/app/assets/javascripts/active_admin/lib/dropdown-menu.js.coffee +0 -104
  228. data/app/assets/javascripts/active_admin/lib/flash.js.coffee +0 -19
  229. data/app/assets/javascripts/active_admin/lib/has_many.js.coffee +0 -79
  230. data/app/assets/javascripts/active_admin/lib/modal_dialog.js.coffee +0 -45
  231. data/app/assets/javascripts/active_admin/lib/per_page.js.coffee +0 -46
  232. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.js.coffee +0 -22
  233. data/codecov.yml +0 -25
  234. data/config/i18n-tasks.yml +0 -26
  235. data/config/mdl_style.rb +0 -9
  236. data/cucumber.yml +0 -3
  237. data/features/action_item.feature +0 -73
  238. data/features/authorization.feature +0 -64
  239. data/features/authorization_cancan.feature +0 -52
  240. data/features/authorization_pundit.feature +0 -37
  241. data/features/belongs_to.feature +0 -124
  242. data/features/breadcrumb.feature +0 -75
  243. data/features/comments/commenting.feature +0 -178
  244. data/features/comments/viewing_index.feature +0 -19
  245. data/features/create_another.feature +0 -55
  246. data/features/dashboard.feature +0 -16
  247. data/features/decorators.feature +0 -43
  248. data/features/development_reloading.feature +0 -28
  249. data/features/edit_page.feature +0 -116
  250. data/features/favicon.feature +0 -20
  251. data/features/first_boot.feature +0 -16
  252. data/features/footer.feature +0 -28
  253. data/features/global_navigation.feature +0 -29
  254. data/features/i18n.feature +0 -55
  255. data/features/index/batch_actions.feature +0 -218
  256. data/features/index/filters.feature +0 -239
  257. data/features/index/format_as_csv.feature +0 -220
  258. data/features/index/formats.feature +0 -88
  259. data/features/index/index_as_block.feature +0 -15
  260. data/features/index/index_as_blog.feature +0 -69
  261. data/features/index/index_as_grid.feature +0 -45
  262. data/features/index/index_as_table.feature +0 -291
  263. data/features/index/index_blank_slate.feature +0 -83
  264. data/features/index/index_parameters.feature +0 -75
  265. data/features/index/index_scope_to.feature +0 -56
  266. data/features/index/index_scopes.feature +0 -285
  267. data/features/index/page_title.feature +0 -41
  268. data/features/index/pagination.feature +0 -63
  269. data/features/index/switch_index_view.feature +0 -73
  270. data/features/menu.feature +0 -72
  271. data/features/meta_tags.feature +0 -21
  272. data/features/new_page.feature +0 -107
  273. data/features/registering_assets.feature +0 -38
  274. data/features/registering_pages.feature +0 -237
  275. data/features/registering_resources.feature +0 -33
  276. data/features/renamed_resource.feature +0 -30
  277. data/features/root_to.feature +0 -17
  278. data/features/show/attributes_table_title.feature +0 -54
  279. data/features/show/columns.feature +0 -40
  280. data/features/show/default_content.feature +0 -44
  281. data/features/show/page_title.feature +0 -58
  282. data/features/show/tabs.feature +0 -33
  283. data/features/sidebar_sections.feature +0 -210
  284. data/features/site_title.feature +0 -47
  285. data/features/specifying_actions.feature +0 -118
  286. data/features/step_definitions/action_item_steps.rb +0 -7
  287. data/features/step_definitions/action_link_steps.rb +0 -19
  288. data/features/step_definitions/additional_web_steps.rb +0 -81
  289. data/features/step_definitions/asset_steps.rb +0 -15
  290. data/features/step_definitions/attribute_steps.rb +0 -18
  291. data/features/step_definitions/attributes_table_title_steps.rb +0 -11
  292. data/features/step_definitions/batch_action_steps.rb +0 -81
  293. data/features/step_definitions/blog_steps.rb +0 -3
  294. data/features/step_definitions/breadcrumb_steps.rb +0 -3
  295. data/features/step_definitions/column_steps.rb +0 -8
  296. data/features/step_definitions/comment_steps.rb +0 -32
  297. data/features/step_definitions/configuration_steps.rb +0 -100
  298. data/features/step_definitions/dashboard_steps.rb +0 -15
  299. data/features/step_definitions/factory_steps.rb +0 -35
  300. data/features/step_definitions/filter_steps.rb +0 -48
  301. data/features/step_definitions/flash_steps.rb +0 -11
  302. data/features/step_definitions/footer_steps.rb +0 -11
  303. data/features/step_definitions/format_steps.rb +0 -56
  304. data/features/step_definitions/i18n_steps.rb +0 -11
  305. data/features/step_definitions/index_scope_steps.rb +0 -29
  306. data/features/step_definitions/index_views_steps.rb +0 -3
  307. data/features/step_definitions/layout_steps.rb +0 -3
  308. data/features/step_definitions/member_link_steps.rb +0 -7
  309. data/features/step_definitions/menu_steps.rb +0 -11
  310. data/features/step_definitions/meta_tag_steps.rb +0 -3
  311. data/features/step_definitions/pagination_steps.rb +0 -15
  312. data/features/step_definitions/sidebar_steps.rb +0 -11
  313. data/features/step_definitions/site_title_steps.rb +0 -17
  314. data/features/step_definitions/tab_steps.rb +0 -8
  315. data/features/step_definitions/table_steps.rb +0 -116
  316. data/features/step_definitions/user_steps.rb +0 -52
  317. data/features/step_definitions/web_steps.rb +0 -86
  318. data/features/sti_resource.feature +0 -65
  319. data/features/strong_parameters.feature +0 -69
  320. data/features/support/env.rb +0 -122
  321. data/features/support/paths.rb +0 -73
  322. data/features/support/regular_env.rb +0 -7
  323. data/features/support/reload_env.rb +0 -7
  324. data/features/support/selectors.rb +0 -45
  325. data/features/users/logging_in.feature +0 -36
  326. data/features/users/logging_out.feature +0 -13
  327. data/features/users/resetting_password.feature +0 -34
  328. data/gemfiles/rails_42.gemfile +0 -10
  329. data/gemfiles/rails_50.gemfile +0 -10
  330. data/gemfiles/rails_51.gemfile +0 -10
  331. data/lib/active_admin/event.rb +0 -24
  332. data/lib/active_admin/helpers/settings.rb +0 -114
  333. data/lib/active_admin/reloader.rb +0 -25
  334. data/lib/bug_report_templates/active_admin_master.rb +0 -113
  335. data/lib/generators/active_admin/assets/templates/active_admin.js.coffee +0 -1
  336. data/spec/bug_report_templates_spec.rb +0 -26
  337. data/spec/javascripts/coffeescripts/jquery.aa.checkbox-toggler-spec.js.coffee +0 -50
  338. data/spec/javascripts/coffeescripts/jquery.aa.flash.js.coffee +0 -25
  339. data/spec/javascripts/coffeescripts/jquery.aa.table-checkbox-toggler-spec.js.coffee +0 -34
  340. data/spec/javascripts/fixtures/checkboxes.html +0 -9
  341. data/spec/javascripts/fixtures/flashes.html +0 -2
  342. data/spec/javascripts/fixtures/table_checkboxes.html +0 -17
  343. data/spec/javascripts/helpers/SpecHelper.js +0 -3
  344. data/spec/javascripts/support/jasmine.yml +0 -74
  345. data/spec/javascripts/support/jasmine_runner.rb +0 -19
  346. data/spec/rails_helper.rb +0 -59
  347. data/spec/requests/default_namespace_spec.rb +0 -81
  348. data/spec/requests/memory_spec.rb +0 -25
  349. data/spec/requests/stylesheets_spec.rb +0 -18
  350. data/spec/spec_helper.rb +0 -1
  351. data/spec/support/active_admin_integration_spec_helper.rb +0 -73
  352. data/spec/support/active_admin_request_helpers.rb +0 -39
  353. data/spec/support/rails_template.rb +0 -150
  354. data/spec/support/rails_template_with_data.rb +0 -327
  355. data/spec/support/templates/admin/stores.rb +0 -7
  356. data/spec/support/templates/en.yml +0 -8
  357. data/spec/support/templates/manifest.js +0 -3
  358. data/spec/support/templates/policies/active_admin/comment_policy.rb +0 -9
  359. data/spec/support/templates/policies/active_admin/page_policy.rb +0 -18
  360. data/spec/support/templates/policies/admin_user_policy.rb +0 -11
  361. data/spec/support/templates/policies/application_policy.rb +0 -44
  362. data/spec/support/templates/policies/category_policy.rb +0 -7
  363. data/spec/support/templates/policies/post_policy.rb +0 -15
  364. data/spec/support/templates/policies/store_policy.rb +0 -11
  365. data/spec/support/templates/policies/user_policy.rb +0 -11
  366. data/spec/support/templates/post_decorator.rb +0 -10
  367. data/spec/unit/abstract_view_factory_spec.rb +0 -78
  368. data/spec/unit/action_builder_spec.rb +0 -125
  369. data/spec/unit/active_admin_spec.rb +0 -11
  370. data/spec/unit/application_spec.rb +0 -184
  371. data/spec/unit/asset_registration_spec.rb +0 -81
  372. data/spec/unit/authorization/authorization_adapter_spec.rb +0 -61
  373. data/spec/unit/authorization/controller_authorization_spec.rb +0 -43
  374. data/spec/unit/authorization/index_overriding_spec.rb +0 -23
  375. data/spec/unit/auto_link_spec.rb +0 -93
  376. data/spec/unit/batch_actions/resource_spec.rb +0 -84
  377. data/spec/unit/batch_actions/settings_spec.rb +0 -61
  378. data/spec/unit/belongs_to_spec.rb +0 -76
  379. data/spec/unit/cancan_adapter_spec.rb +0 -43
  380. data/spec/unit/comments_spec.rb +0 -176
  381. data/spec/unit/component_spec.rb +0 -18
  382. data/spec/unit/config_shared_examples.rb +0 -59
  383. data/spec/unit/controller_filters_spec.rb +0 -41
  384. data/spec/unit/csv_builder_spec.rb +0 -304
  385. data/spec/unit/dependency_spec.rb +0 -135
  386. data/spec/unit/devise_spec.rb +0 -110
  387. data/spec/unit/dsl_spec.rb +0 -120
  388. data/spec/unit/filters/active_filter_spec.rb +0 -135
  389. data/spec/unit/filters/active_spec.rb +0 -24
  390. data/spec/unit/filters/filter_form_builder_spec.rb +0 -502
  391. data/spec/unit/filters/resource_spec.rb +0 -128
  392. data/spec/unit/form_builder_spec.rb +0 -990
  393. data/spec/unit/generators/install_spec.rb +0 -31
  394. data/spec/unit/helpers/collection_spec.rb +0 -68
  395. data/spec/unit/helpers/scope_chain_spec.rb +0 -35
  396. data/spec/unit/helpers/settings_spec.rb +0 -30
  397. data/spec/unit/i18n_spec.rb +0 -29
  398. data/spec/unit/localizers/resource_localizer_spec.rb +0 -36
  399. data/spec/unit/menu_collection_spec.rb +0 -62
  400. data/spec/unit/menu_item_spec.rb +0 -141
  401. data/spec/unit/menu_spec.rb +0 -71
  402. data/spec/unit/namespace/authorization_spec.rb +0 -27
  403. data/spec/unit/namespace/register_page_spec.rb +0 -99
  404. data/spec/unit/namespace/register_resource_spec.rb +0 -162
  405. data/spec/unit/namespace_spec.rb +0 -124
  406. data/spec/unit/order_clause_spec.rb +0 -81
  407. data/spec/unit/page_controller_spec.rb +0 -5
  408. data/spec/unit/page_spec.rb +0 -128
  409. data/spec/unit/pretty_format_spec.rb +0 -82
  410. data/spec/unit/pundit_adapter_spec.rb +0 -98
  411. data/spec/unit/resource/action_items_spec.rb +0 -69
  412. data/spec/unit/resource/attributes_spec.rb +0 -49
  413. data/spec/unit/resource/includes_spec.rb +0 -21
  414. data/spec/unit/resource/menu_spec.rb +0 -18
  415. data/spec/unit/resource/naming_spec.rb +0 -122
  416. data/spec/unit/resource/ordering_spec.rb +0 -35
  417. data/spec/unit/resource/page_presenters_spec.rb +0 -44
  418. data/spec/unit/resource/pagination_spec.rb +0 -38
  419. data/spec/unit/resource/routes_spec.rb +0 -125
  420. data/spec/unit/resource/scopes_spec.rb +0 -50
  421. data/spec/unit/resource/sidebars_spec.rb +0 -43
  422. data/spec/unit/resource_collection_spec.rb +0 -175
  423. data/spec/unit/resource_controller/data_access_spec.rb +0 -230
  424. data/spec/unit/resource_controller/decorators_spec.rb +0 -94
  425. data/spec/unit/resource_controller/sidebars_spec.rb +0 -37
  426. data/spec/unit/resource_controller_spec.rb +0 -273
  427. data/spec/unit/resource_registration_spec.rb +0 -61
  428. data/spec/unit/resource_spec.rb +0 -320
  429. data/spec/unit/routing_spec.rb +0 -211
  430. data/spec/unit/scope_spec.rb +0 -209
  431. data/spec/unit/settings_spec.rb +0 -117
  432. data/spec/unit/view_factory_spec.rb +0 -19
  433. data/spec/unit/view_helpers/breadcrumbs_spec.rb +0 -252
  434. data/spec/unit/view_helpers/display_helper_spec.rb +0 -195
  435. data/spec/unit/view_helpers/download_format_links_helper_spec.rb +0 -39
  436. data/spec/unit/view_helpers/fields_for_spec.rb +0 -50
  437. data/spec/unit/view_helpers/flash_helper_spec.rb +0 -24
  438. data/spec/unit/view_helpers/form_helper_spec.rb +0 -42
  439. data/spec/unit/view_helpers/method_or_proc_helper_spec.rb +0 -138
  440. data/spec/unit/views/components/attributes_table_spec.rb +0 -271
  441. data/spec/unit/views/components/batch_action_selector_spec.rb +0 -43
  442. data/spec/unit/views/components/blank_slate_spec.rb +0 -27
  443. data/spec/unit/views/components/columns_spec.rb +0 -187
  444. data/spec/unit/views/components/index_list_spec.rb +0 -49
  445. data/spec/unit/views/components/index_table_for_spec.rb +0 -127
  446. data/spec/unit/views/components/paginated_collection_spec.rb +0 -249
  447. data/spec/unit/views/components/panel_spec.rb +0 -58
  448. data/spec/unit/views/components/sidebar_section_spec.rb +0 -68
  449. data/spec/unit/views/components/site_title_spec.rb +0 -76
  450. data/spec/unit/views/components/status_tag_spec.rb +0 -265
  451. data/spec/unit/views/components/table_for_spec.rb +0 -436
  452. data/spec/unit/views/components/tabs_spec.rb +0 -67
  453. data/spec/unit/views/components/unsupported_browser_spec.rb +0 -41
  454. data/spec/unit/views/index_as_blog_spec.rb +0 -76
  455. data/spec/unit/views/pages/form_spec.rb +0 -54
  456. data/spec/unit/views/pages/index_spec.rb +0 -60
  457. data/spec/unit/views/pages/layout_spec.rb +0 -59
  458. data/spec/unit/views/pages/show_spec.rb +0 -32
  459. data/spec/unit/views/tabbed_navigation_spec.rb +0 -158
  460. data/tasks/docs.rake +0 -64
  461. data/tasks/lint.rake +0 -21
  462. data/tasks/local.rake +0 -25
  463. data/tasks/parallel_tests.rake +0 -66
  464. data/tasks/test.rake +0 -29
  465. /data/lib/generators/active_admin/install/templates/{admin_user.rb.erb → admin_users.rb.erb} +0 -0
@@ -1,113 +0,0 @@
1
- begin
2
- require 'bundler/inline'
3
- rescue LoadError => e
4
- STDERR.puts 'Bundler version 1.10 or later is required. Please update your Bundler'
5
- raise e
6
- end
7
-
8
- gemfile(true) do
9
- source 'https://rubygems.org'
10
-
11
- # Use local changes or ActiveAdmin master.
12
- if ENV['ACTIVE_ADMIN_PATH']
13
- gem 'activeadmin', path: ENV['ACTIVE_ADMIN_PATH'], require: false
14
- else
15
- gem 'activeadmin', github: 'activeadmin/activeadmin', require: false
16
- end
17
-
18
- # Change Rails version if necessary.
19
- gem 'rails', '~> 5.1.0'
20
-
21
- gem 'sass-rails'
22
- gem 'sqlite3', platform: :mri
23
- gem 'activerecord-jdbcsqlite3-adapter',
24
- git: 'https://github.com/jruby/activerecord-jdbc-adapter',
25
- branch: 'rails-5',
26
- platform: :jruby
27
- end
28
-
29
- require 'active_record'
30
-
31
- ActiveRecord::Base.establish_connection(adapter: 'sqlite3', database: ':memory:')
32
- ActiveRecord::Base.logger = Logger.new(STDOUT)
33
-
34
- ActiveRecord::Schema.define do
35
- create_table :active_admin_comments, force: true do |_t|
36
- end
37
-
38
- create_table :users, force: true do |t|
39
- t.string :full_name
40
- end
41
- end
42
-
43
- require 'action_controller/railtie'
44
- require 'action_view/railtie'
45
- require 'active_admin'
46
-
47
- class TestApp < Rails::Application
48
- config.root = __dir__
49
- config.session_store :cookie_store, key: "cookie_store_key"
50
- secrets.secret_token = 'secret_token'
51
- secrets.secret_key_base = 'secret_key_base'
52
-
53
- config.eager_load = false
54
- config.logger = Logger.new($stdout)
55
- Rails.logger = config.logger
56
- end
57
-
58
- class ApplicationController < ActionController::Base
59
- include Rails.application.routes.url_helpers
60
- end
61
-
62
- class User < ActiveRecord::Base
63
- end
64
-
65
- ActiveAdmin.setup do |config|
66
- # Authentication disabled by default. Override if necessary.
67
- config.authentication_method = false
68
- config.current_user_method = false
69
- end
70
-
71
- Rails.application.initialize!
72
-
73
- ActiveAdmin.register_page 'Dashboard' do
74
- menu priority: 1, label: proc { I18n.t('active_admin.dashboard') }
75
- content do
76
- 'Test Me'
77
- end
78
- end
79
-
80
- ActiveAdmin.register User do
81
- end
82
-
83
- Rails.application.routes.draw do
84
- ActiveAdmin.routes(self)
85
- end
86
-
87
- require 'minitest/autorun'
88
- require 'rack/test'
89
- require 'rails/test_help'
90
-
91
- # Replace this with the code necessary to make your test fail.
92
- class BugTest < ActionDispatch::IntegrationTest
93
-
94
- def test_admin_root_success?
95
- get admin_root_url
96
- assert_response :success
97
- assert_match 'Test Me', response.body # has content
98
- assert_match 'Users', response.body # has 'Your Models' in menu
99
- end
100
-
101
- def test_admin_users
102
- User.create! full_name: 'John Doe'
103
- get admin_users_url
104
- assert_response :success
105
- assert_match 'John Doe', response.body # has created row
106
- end
107
-
108
- private
109
-
110
- def app
111
- Rails.application
112
- end
113
- end
@@ -1 +0,0 @@
1
- #= require active_admin/base
@@ -1,26 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe 'bug_report_templates' do
4
- subject do
5
- Bundler.with_clean_env do
6
- Dir.chdir(chdir_path) do
7
- system({'ACTIVE_ADMIN_PATH' => active_admin_root},
8
- Gem.ruby,
9
- template_path,
10
- out: File::NULL)
11
- end
12
- end
13
- end
14
-
15
- let(:active_admin_root) { File.expand_path('../..', __FILE__) }
16
- let(:chdir_path) { File.join(active_admin_root, 'lib', 'bug_report_templates') }
17
-
18
- context 'when runs active_admin_master.rb' do
19
- let(:template_path) { 'active_admin_master.rb' }
20
-
21
- it 'passes' do
22
- expect(subject).to be_truthy
23
- end
24
- end
25
-
26
- end
@@ -1,50 +0,0 @@
1
- describe "ActiveAdmin.CheckboxToggler", ->
2
-
3
- beforeEach ->
4
- loadFixtures('checkboxes.html')
5
-
6
- @collection = $("#collection")
7
- @toggle_all = @collection.find(".toggle_all")
8
-
9
- @checkboxes = @collection.find(":checkbox").not(@toggle_all)
10
-
11
-
12
- new ActiveAdmin.CheckboxToggler({}, @collection)
13
-
14
- describe "on init", ->
15
- it "should raise an error if container not found", ->
16
- expect( => new ActiveAdmin.CheckboxToggler({}) ).toThrow("Container element not found")
17
-
18
- it "should raise an error if 'toggle all' checkbox not found", ->
19
- @toggle_all.remove()
20
- expect( => new ActiveAdmin.CheckboxToggler({}, @collection); ).toThrow("'toggle all' checkbox not found")
21
-
22
- describe "'toggle all' checkbox", ->
23
- it "should check all checkboxes when checked", ->
24
- @toggle_all.trigger("click")
25
- expect(@checkboxes).toHaveAttr("checked")
26
-
27
- it "should uncheck all checkboxes when unchecked", ->
28
- @toggle_all.trigger("click")
29
- @toggle_all.trigger("click")
30
- expect(@checkboxes).not.toHaveAttr("checked")
31
-
32
- describe "individual checkboxes", ->
33
-
34
- describe "when all checkboxes are selected and one is unchecked", ->
35
- beforeEach ->
36
- @collection.find(":checkbox").attr("checked", "checked")
37
- @collection.find("#item_1").trigger("click")
38
-
39
- it "should uncheck the 'toggle all' checkbox", ->
40
- expect(@toggle_all).not.toHaveAttr("checked")
41
-
42
- describe "when the last checkbox is checked", ->
43
- beforeEach ->
44
- @checkboxes.attr("checked", "checked")
45
- @collection.find("#item_1").removeAttr("checked")
46
- @collection.find("#item_1").trigger("click")
47
-
48
- it "should check the 'toggle all' checkbox", ->
49
- expect(@toggle_all).toHaveAttr("checked")
50
-
@@ -1,25 +0,0 @@
1
- describe "ActiveAdmin.flash", ->
2
- beforeEach ->
3
- loadFixtures('flashes.html')
4
- @flashes = $(".flashes")
5
-
6
- describe "abstract", ->
7
- it "should add a flash box with class and message"
8
- ActiveAdmin.flash.abstract "a abstract message", "abstract"
9
- flash = @flashes.find(".flash")
10
- expect(flash).toHaveClass("abstract")
11
- expect(flash.text()).toHaveClass("a abstract message")
12
-
13
- describe "error", ->
14
- it "should add a flash box with class and message"
15
- ActiveAdmin.flash.abstract "a error message"
16
- flash = @flashes.find(".flash")
17
- expect(flash).toHaveClass("error")
18
- expect(flash.text()).toHaveClass("a error message")
19
-
20
- describe "notice", ->
21
- it "should add a flash box with class and message"
22
- ActiveAdmin.flash.abstract "a notice message"
23
- flash = @flashes.find(".flash")
24
- expect(flash).toHaveClass("notice")
25
- expect(flash.text()).toHaveClass("a notice message")
@@ -1,34 +0,0 @@
1
- describe "ActiveAdmin.TableCheckboxToggler", ->
2
-
3
- beforeEach ->
4
- loadFixtures('table_checkboxes.html');
5
-
6
- @collection = $("#collection")
7
- @toggle_all = @collection.find(".toggle_all")
8
-
9
- @checkboxes = @collection.find(":checkbox").not(@toggle_all)
10
-
11
- new ActiveAdmin.TableCheckboxToggler({}, @collection)
12
-
13
- describe "'selected' class for table row", ->
14
- it "should add the class 'selected' to rows when their checkbox is checked ", ->
15
- checkbox = $("#item_1")
16
- checkbox.attr("checked", "checked")
17
- checkbox.trigger("change")
18
-
19
- expect(checkbox.parents("tr")).toHaveAttr("class", "selected")
20
-
21
- it "should remove the class 'selected' from rows when their checkbox is unchecked ", ->
22
- checkbox = $("#item_1")
23
- checkbox.trigger("change")
24
-
25
- expect(checkbox.parents("tr")).not.toHaveAttr("class", "selected")
26
-
27
- describe "clicking a cell", ->
28
- it "should toggle the checkbox when a cell is clicked", ->
29
- checkbox = $("#item_1")
30
- row = checkbox.parents("td")
31
- $(row).trigger("click")
32
-
33
- expect(checkbox).toHaveAttr("checked", "checked")
34
-
@@ -1,9 +0,0 @@
1
- <div id="collection">
2
- <input type="checkbox" name="toggle_all" class="toggle_all" value="">
3
-
4
- <input type="checkbox" name="item1" id="item_1" value="1">
5
- <input type="checkbox" name="item2" id="item_2" value="2">
6
- <input type="checkbox" name="item3" id="item_3" value="3">
7
- <input type="checkbox" name="item4" id="item_4" value="4">
8
- </div>
9
-
@@ -1,2 +0,0 @@
1
- <div class="flashes">
2
- </div>
@@ -1,17 +0,0 @@
1
- <table id="collection">
2
- <thead>
3
- <tr>
4
- <td>
5
- <input type="checkbox" name="toggle_all" class="toggle_all" value="">
6
- </td>
7
- </tr>
8
- </thead>
9
- <tbody>
10
- <tr><td><input type="checkbox" name="item1" id="item_1" value="1"></td></tr>
11
- <tr><td><input type="checkbox" name="item2" id="item_2" value="2"></td></tr>
12
- <tr><td><input type="checkbox" name="item3" id="item_3" value="3"></td></tr>
13
- <tr><td><input type="checkbox" name="item4" id="item_4" value="4"></td></tr>
14
- </tbody>
15
- </table>
16
-
17
-
@@ -1,3 +0,0 @@
1
- beforeEach(function() {
2
- window.inject = $.jasmine.inject;
3
- });
@@ -1,74 +0,0 @@
1
- # src_files
2
- #
3
- # Return an array of filepaths relative to src_dir to include before jasmine specs.
4
- # Default: []
5
- #
6
- # EXAMPLE:
7
- #
8
- # src_files:
9
- # - lib/source1.js
10
- # - lib/source2.js
11
- # - dist/**/*.js
12
- #
13
- src_files:
14
- - spec/javascripts/support/jquery.min.js
15
- - spec/javascripts/support/jquery-ui-1.8.16.custom.min.js
16
- - app/assets/javascripts/active_admin/compiled/lib/**/*.js
17
- - app/assets/javascripts/active_admin/compiled/components/**/*.js
18
-
19
- # stylesheets
20
- #
21
- # Return an array of stylesheet filepaths relative to src_dir to include before jasmine specs.
22
- # Default: []
23
- #
24
- # EXAMPLE:
25
- #
26
- # stylesheets:
27
- # - css/style.css
28
- # - stylesheets/*.css
29
- #
30
- stylesheets:
31
-
32
- # helpers
33
- #
34
- # Return an array of filepaths relative to spec_dir to include before jasmine specs.
35
- # Default: ["helpers/**/*.js"]
36
- #
37
- # EXAMPLE:
38
- #
39
- helpers:
40
- - helpers/**/*.js
41
-
42
-
43
- # spec_files
44
- #
45
- # Return an array of filepaths relative to spec_dir to include.
46
- # Default: ["**/*[sS]pec.js"]
47
- #
48
- # EXAMPLE:
49
- #
50
- spec_files:
51
- - **/*[sS]pec.js
52
-
53
-
54
- # src_dir
55
- #
56
- # Source directory path. Your src_files must be returned relative to this path. Will use root if left blank.
57
- # Default: project root
58
- #
59
- # EXAMPLE:
60
- #
61
- # src_dir: public
62
- #
63
- src_dir:
64
-
65
- # spec_dir
66
- #
67
- # Spec directory path. Your spec_files must be returned relative to this path.
68
- # Default: spec/javascripts
69
- #
70
- # EXAMPLE:
71
- #
72
- # spec_dir: spec/javascripts
73
- #
74
- spec_dir: spec/javascripts/
@@ -1,19 +0,0 @@
1
- $:.unshift(ENV['JASMINE_GEM_PATH']) if ENV['JASMINE_GEM_PATH'] # for gem testing purposes
2
-
3
- require 'jasmine'
4
- require 'spec'
5
-
6
- jasmine_config = Jasmine::Config.new
7
- spec_builder = Jasmine::SpecBuilder.new(jasmine_config)
8
-
9
- should_stop = false
10
-
11
- Spec::Runner.configure do |config|
12
- config.after(:suite) do
13
- spec_builder.stop if should_stop
14
- end
15
- end
16
-
17
- spec_builder.start
18
- should_stop = true
19
- spec_builder.declare_suites
data/spec/rails_helper.rb DELETED
@@ -1,59 +0,0 @@
1
- require 'spec_helper'
2
-
3
- ENV['RAILS_ENV'] = 'test'
4
-
5
- require 'rails'
6
- ENV['RAILS_ROOT'] = File.expand_path("../rails/rails-#{Rails.version}", __FILE__)
7
-
8
- # Create the test app if it doesn't exists
9
- unless File.exists?(ENV['RAILS_ROOT'])
10
- system 'rake setup'
11
- end
12
-
13
- require 'active_record'
14
- require 'active_admin'
15
- require 'devise'
16
- ActiveAdmin.application.load_paths = [ENV['RAILS_ROOT'] + "/app/admin"]
17
-
18
- require ENV['RAILS_ROOT'] + '/config/environment'
19
-
20
- require 'rspec/rails'
21
-
22
- # Disabling authentication in specs so that we don't have to worry about
23
- # it allover the place
24
- ActiveAdmin.application.authentication_method = false
25
- ActiveAdmin.application.current_user_method = false
26
-
27
- RSpec.configure do |config|
28
- config.disable_monkey_patching!
29
- config.use_transactional_fixtures = true
30
- config.use_instantiated_fixtures = false
31
- config.render_views = false
32
- config.filter_run focus: true
33
- config.filter_run_excluding skip: true
34
- config.run_all_when_everything_filtered = true
35
- config.color = true
36
- config.order = :random
37
-
38
- devise = ActiveAdmin::Dependency.devise >= '4.2' ? Devise::Test::ControllerHelpers : Devise::TestHelpers
39
- config.include devise, type: :controller
40
-
41
- require 'support/active_admin_integration_spec_helper'
42
- config.include ActiveAdminIntegrationSpecHelper
43
-
44
- require 'support/active_admin_request_helpers'
45
- config.include ActiveAdminRequestHelpers, type: :request
46
-
47
- # Setup Some Admin stuff for us to play with
48
- config.before(:suite) do
49
- ActiveAdminIntegrationSpecHelper.load_defaults!
50
- ActiveAdminIntegrationSpecHelper.reload_routes!
51
- end
52
- end
53
-
54
- # Force deprecations to raise an exception.
55
- ActiveSupport::Deprecation.behavior = :raise
56
-
57
- # improve the performance of the specs suite by not logging anything
58
- # see http://blog.plataformatec.com.br/2011/12/three-tips-to-improve-the-performance-of-your-test-suite/
59
- Rails.logger.level = Logger::FATAL
@@ -1,81 +0,0 @@
1
- require 'rails_helper'
2
-
3
- RSpec.describe ActiveAdmin::Application, type: :request do
4
-
5
- include Rails.application.routes.url_helpers
6
-
7
- let(:resource) { ActiveAdmin.register Category }
8
-
9
- [false, nil].each do |value|
10
-
11
- describe "with a #{value} default namespace" do
12
-
13
- around do |example|
14
- with_custom_default_namespace(value) { example.call }
15
- end
16
-
17
- it "should generate resource paths" do
18
- expect(resource.route_collection_path).to eq "/categories"
19
- end
20
-
21
- it "should generate a log out path" do
22
- expect(destroy_admin_user_session_path).to eq "/logout"
23
- end
24
-
25
- it "should generate a log in path" do
26
- expect(new_admin_user_session_path).to eq "/login"
27
- end
28
-
29
- end
30
-
31
- end
32
-
33
- describe "with a test default namespace" do
34
-
35
- around do |example|
36
- with_custom_default_namespace(:test) { example.call }
37
- end
38
-
39
- it "should generate resource paths" do
40
- expect(resource.route_collection_path).to eq "/test/categories"
41
- end
42
-
43
- it "should generate a log out path" do
44
- expect(destroy_admin_user_session_path).to eq "/test/logout"
45
- end
46
-
47
- it "should generate a log in path" do
48
- expect(new_admin_user_session_path).to eq "/test/login"
49
- end
50
-
51
- end
52
-
53
- describe "with a namespace with underscores in the name" do
54
-
55
- around do |example|
56
- with_custom_default_namespace(:abc_123) { example.call }
57
- end
58
-
59
- it "should generate resource paths" do
60
- expect(resource.route_collection_path).to eq "/abc_123/categories"
61
- end
62
-
63
- it "should generate a log out path" do
64
- expect(destroy_admin_user_session_path).to eq "/abc_123/logout"
65
- end
66
-
67
- it "should generate a log in path" do
68
- expect(new_admin_user_session_path).to eq "/abc_123/login"
69
- end
70
-
71
- end
72
-
73
- private
74
-
75
- def with_custom_default_namespace(namespace)
76
- application = ActiveAdmin::Application.new
77
- application.default_namespace = namespace
78
-
79
- with_temp_application(application) { yield }
80
- end
81
- end
@@ -1,25 +0,0 @@
1
- require 'rails_helper'
2
-
3
- RSpec.describe "Memory Leak", type: :request, if: RUBY_ENGINE == 'ruby' do
4
- before do
5
- load_defaults!
6
- end
7
-
8
- def count_instances_of(klass)
9
- ObjectSpace.each_object(klass) { }
10
- end
11
-
12
- [ActiveAdmin::Namespace, ActiveAdmin::Resource].each do |klass|
13
- it "should not leak #{klass}" do
14
- previously_disabled = GC.enable
15
- GC.start
16
- count = count_instances_of(klass)
17
-
18
- load_defaults!
19
-
20
- GC.start
21
- GC.disable if previously_disabled
22
- expect(count_instances_of klass).to be <= count
23
- end
24
- end
25
- end
@@ -1,18 +0,0 @@
1
- require 'rails_helper'
2
-
3
- RSpec.describe "Stylesheets", type: :request do
4
-
5
- require "sprockets"
6
-
7
- let(:css) do
8
- assets = Rails.application.assets
9
- assets.find_asset("active_admin.css")
10
- end
11
- it "should successfully render the scss stylesheets using sprockets" do
12
- expect(css).to_not eq nil
13
- end
14
- it "should not have any syntax errors" do
15
- expect(css.to_s).to_not include("Syntax error:")
16
- end
17
-
18
- end
data/spec/spec_helper.rb DELETED
@@ -1 +0,0 @@
1
- require 'simplecov' if ENV["COVERAGE"] == "true"
@@ -1,73 +0,0 @@
1
- module ActiveAdminIntegrationSpecHelper
2
- extend self
3
-
4
- def load_defaults!
5
- ActiveAdmin.unload!
6
- ActiveAdmin.load!
7
- ActiveAdmin.register(Category)
8
- ActiveAdmin.register(User)
9
- ActiveAdmin.register(Post){ belongs_to :user, optional: true }
10
- reload_menus!
11
- end
12
-
13
- def reload_menus!
14
- ActiveAdmin.application.namespaces.each{|n| n.reset_menu! }
15
- end
16
-
17
- # Sometimes we need to reload the routes within
18
- # the application to test them out
19
- def reload_routes!
20
- Rails.application.reload_routes!
21
- end
22
-
23
- # Helper method to load resources and ensure that Active Admin is
24
- # setup with the new configurations.
25
- #
26
- # Eg:
27
- # load_resources do
28
- # ActiveAdmin.register(Post)
29
- # end
30
- #
31
- def load_resources
32
- ActiveAdmin.unload!
33
- yield
34
- reload_menus!
35
- reload_routes!
36
- end
37
-
38
- def arbre(assigns = {}, helpers = mock_action_view, &block)
39
- Arbre::Context.new(assigns, helpers, &block)
40
- end
41
-
42
- def render_arbre_component(assigns = {}, helpers = mock_action_view, &block)
43
- arbre(assigns, helpers, &block).children.first
44
- end
45
-
46
- # Returns a fake action view instance to use with our renderers
47
- def mock_action_view(assigns = {})
48
- controller = ActionView::TestCase::TestController.new
49
- #this line needed because of rails bug https://github.com/rails/rails/commit/d8e98897b5703ac49bf0764da71a06d64ecda9b0
50
- controller.params = ActionController::Parameters.new
51
- MockActionView.new(ActionController::Base.view_paths, assigns, controller)
52
- end
53
- alias_method :action_view, :mock_action_view
54
-
55
- # A mock action view to test view helpers
56
- class MockActionView < ::ActionView::Base
57
- include ActiveAdmin::ViewHelpers
58
- include Rails.application.routes.url_helpers
59
- end
60
-
61
- def with_translation(translation)
62
- # If no translations have been loaded, any later calls to `I18n.t` will
63
- # cause the full translation hash to be loaded, possibly overwritting what
64
- # we've loaded via `store_translations`. We use this hack to prevent that.
65
- # TODO: Might not be necessary anymore once
66
- # https://github.com/svenfuchs/i18n/pull/353 lands.
67
- I18n.backend.send(:init_translations)
68
- I18n.backend.store_translations I18n.locale, translation
69
- yield
70
- ensure
71
- I18n.backend.reload!
72
- end
73
- end
@@ -1,39 +0,0 @@
1
- require "action_dispatch"
2
- require "capybara/rails"
3
- require "capybara/dsl"
4
-
5
- module ActiveAdminRequestHelpers
6
- extend ActiveSupport::Concern
7
-
8
- include ActionDispatch::Integration::Runner
9
- include RSpec::Rails::TestUnitAssertionAdapter
10
- include ActionDispatch::Assertions
11
- include Capybara::DSL
12
- include RSpec::Matchers
13
-
14
- def app
15
- ::Rails.application
16
- end
17
-
18
- def last_response
19
- page
20
- end
21
-
22
- included do
23
- before do
24
- @router = ::Rails.application.routes
25
- end
26
- end
27
-
28
- def with_temp_application(application)
29
- original_application = ActiveAdmin.application
30
- ActiveAdmin.application = application
31
- load_defaults!
32
- reload_routes!
33
-
34
- yield
35
-
36
- ensure
37
- ActiveAdmin.application = original_application
38
- end
39
- end