activeadmin 1.0.0.pre4 → 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 (542) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +529 -52
  3. data/CODE_OF_CONDUCT.md +64 -12
  4. data/CONTRIBUTING.md +129 -58
  5. data/README.md +80 -79
  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/_base.scss +2 -2
  21. data/app/assets/stylesheets/active_admin/_forms.scss +19 -26
  22. data/app/assets/stylesheets/active_admin/components/_batch_actions.scss +0 -5
  23. data/app/assets/stylesheets/active_admin/components/_pagination.scss +11 -0
  24. data/app/assets/stylesheets/active_admin/components/_scopes.scss +3 -0
  25. data/app/assets/stylesheets/active_admin/components/_status_tags.scss +0 -4
  26. data/app/assets/stylesheets/active_admin/components/_tables.scss +4 -1
  27. data/app/assets/stylesheets/active_admin/components/_tabs.scss +1 -1
  28. data/app/assets/stylesheets/active_admin/mixins/_all.scss +0 -2
  29. data/app/assets/stylesheets/active_admin/mixins/_gradients.scss +1 -1
  30. data/app/assets/stylesheets/active_admin/print.scss +2 -3
  31. data/app/views/active_admin/devise/confirmations/new.html.erb +2 -2
  32. data/app/views/active_admin/devise/passwords/edit.html.erb +2 -2
  33. data/app/views/active_admin/devise/passwords/new.html.erb +2 -2
  34. data/app/views/active_admin/devise/registrations/new.html.erb +3 -4
  35. data/app/views/active_admin/devise/sessions/new.html.erb +2 -2
  36. data/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  37. data/app/views/active_admin/devise/shared/_links.erb +12 -6
  38. data/app/views/active_admin/devise/unlocks/new.html.erb +2 -2
  39. data/app/views/kaminari/active_admin/_first_page.html.erb +11 -0
  40. data/app/views/kaminari/active_admin/_gap.html.erb +8 -0
  41. data/app/views/kaminari/active_admin/_last_page.html.erb +11 -0
  42. data/app/views/kaminari/active_admin/_next_page.html.erb +11 -0
  43. data/app/views/kaminari/active_admin/_page.html.erb +12 -0
  44. data/app/views/kaminari/active_admin/_paginator.html.erb +25 -0
  45. data/app/views/kaminari/active_admin/_prev_page.html.erb +11 -0
  46. data/app/views/kaminari/active_admin_countless/_first_page.html.erb +11 -0
  47. data/app/views/kaminari/active_admin_countless/_gap.html.erb +8 -0
  48. data/app/views/kaminari/active_admin_countless/_next_page.html.erb +11 -0
  49. data/app/views/kaminari/active_admin_countless/_page.html.erb +12 -0
  50. data/app/views/kaminari/active_admin_countless/_paginator.html.erb +24 -0
  51. data/app/views/kaminari/active_admin_countless/_prev_page.html.erb +11 -0
  52. data/app/views/layouts/active_admin_logged_out.html.erb +2 -2
  53. data/config/locales/ar.yml +4 -5
  54. data/config/locales/bg.yml +1 -3
  55. data/config/locales/bs.yml +1 -2
  56. data/config/locales/ca.yml +2 -4
  57. data/config/locales/cs.yml +1 -2
  58. data/config/locales/da.yml +45 -14
  59. data/config/locales/de-CH.yml +2 -3
  60. data/config/locales/de.yml +30 -3
  61. data/config/locales/el.yml +3 -4
  62. data/config/locales/en-CA.yml +139 -0
  63. data/config/locales/en-GB.yml +44 -3
  64. data/config/locales/en.yml +31 -5
  65. data/config/locales/eo.yml +145 -0
  66. data/config/locales/es-MX.yml +5 -3
  67. data/config/locales/es.yml +32 -6
  68. data/config/locales/fa.yml +1 -2
  69. data/config/locales/fi.yml +2 -3
  70. data/config/locales/fr.yml +27 -5
  71. data/config/locales/he.yml +53 -7
  72. data/config/locales/hr.yml +1 -2
  73. data/config/locales/hu.yml +5 -2
  74. data/config/locales/id.yml +2 -3
  75. data/config/locales/it.yml +15 -7
  76. data/config/locales/ja.yml +8 -3
  77. data/config/locales/ko.yml +1 -2
  78. data/config/locales/lt.yml +27 -6
  79. data/config/locales/lv.yml +1 -2
  80. data/config/locales/mk.yml +134 -0
  81. data/config/locales/nb.yml +16 -7
  82. data/config/locales/nl.yml +13 -3
  83. data/config/locales/pl.yml +75 -5
  84. data/config/locales/pt-BR.yml +10 -3
  85. data/config/locales/pt-PT.yml +1 -2
  86. data/config/locales/ro.yml +1 -2
  87. data/config/locales/ru.yml +5 -3
  88. data/config/locales/sk.yml +168 -0
  89. data/config/locales/sv-SE.yml +4 -3
  90. data/config/locales/tr.yml +10 -2
  91. data/config/locales/uk.yml +4 -3
  92. data/config/locales/vi.yml +48 -8
  93. data/config/locales/zh-CN.yml +38 -7
  94. data/config/locales/zh-TW.yml +2 -3
  95. data/docs/.gitignore +1 -0
  96. data/docs/0-installation.md +19 -13
  97. data/docs/1-general-configuration.md +37 -4
  98. data/docs/10-custom-pages.md +47 -3
  99. data/docs/11-decorators.md +4 -0
  100. data/docs/12-arbre-components.md +73 -9
  101. data/docs/13-authorization-adapter.md +72 -35
  102. data/docs/14-gotchas.md +57 -19
  103. data/docs/2-resource-customization.md +64 -20
  104. data/docs/3-index-pages/custom-index.md +5 -1
  105. data/docs/3-index-pages/index-as-block.md +3 -5
  106. data/docs/3-index-pages/index-as-blog.md +4 -6
  107. data/docs/3-index-pages/index-as-grid.md +3 -5
  108. data/docs/3-index-pages/index-as-table.md +33 -12
  109. data/docs/3-index-pages.md +65 -9
  110. data/docs/4-csv-format.md +16 -0
  111. data/docs/5-forms.md +78 -17
  112. data/docs/6-show-pages.md +5 -29
  113. data/docs/7-sidebars.md +5 -1
  114. data/docs/8-custom-actions.md +18 -1
  115. data/docs/9-batch-actions.md +8 -4
  116. data/docs/CNAME +1 -0
  117. data/docs/Gemfile +3 -0
  118. data/docs/Gemfile.lock +248 -0
  119. data/docs/_config.yml +4 -0
  120. data/docs/_includes/footer.html +8 -0
  121. data/docs/_includes/google-analytics.html +16 -0
  122. data/docs/_includes/head.html +7 -0
  123. data/docs/_includes/toc.html +98 -0
  124. data/docs/_includes/top-menu.html +17 -0
  125. data/docs/_layouts/default.html +21 -0
  126. data/docs/documentation.md +60 -0
  127. data/docs/images/activeadmin.png +0 -0
  128. data/docs/images/code-header.png +0 -0
  129. data/docs/images/divider.png +0 -0
  130. data/docs/images/features.png +0 -0
  131. data/docs/images/tidelift.svg +14 -0
  132. data/docs/index.html +226 -0
  133. data/docs/stylesheets/main.css +1205 -0
  134. data/lib/active_admin/abstract_view_factory.rb +13 -51
  135. data/lib/active_admin/application.rb +50 -140
  136. data/lib/active_admin/application_settings.rb +42 -0
  137. data/lib/active_admin/authorization_adapter.rb +0 -3
  138. data/lib/active_admin/base_controller/authorization.rb +4 -7
  139. data/lib/active_admin/base_controller/menu.rb +10 -14
  140. data/lib/active_admin/base_controller.rb +8 -14
  141. data/lib/active_admin/batch_actions/controller.rb +3 -3
  142. data/lib/active_admin/batch_actions/resource_extension.rb +9 -13
  143. data/lib/active_admin/batch_actions/views/batch_action_form.rb +1 -1
  144. data/lib/active_admin/batch_actions/views/batch_action_selector.rb +1 -1
  145. data/lib/active_admin/batch_actions/views/selection_cells.rb +6 -5
  146. data/lib/active_admin/callbacks.rb +1 -1
  147. data/lib/active_admin/controller_action.rb +2 -1
  148. data/lib/active_admin/csv_builder.rb +15 -12
  149. data/lib/active_admin/dependency.rb +8 -76
  150. data/lib/active_admin/deprecation.rb +0 -25
  151. data/lib/active_admin/devise.rb +3 -3
  152. data/lib/active_admin/dsl.rb +3 -16
  153. data/lib/active_admin/dynamic_setting.rb +38 -0
  154. data/lib/active_admin/dynamic_settings_node.rb +28 -0
  155. data/lib/active_admin/engine.rb +5 -0
  156. data/lib/active_admin/error.rb +5 -3
  157. data/lib/active_admin/filters/active.rb +13 -14
  158. data/lib/active_admin/filters/active_filter.rb +124 -0
  159. data/lib/active_admin/filters/active_sidebar.rb +54 -0
  160. data/lib/active_admin/filters/forms.rb +6 -4
  161. data/lib/active_admin/filters/formtastic_addons.rb +2 -2
  162. data/lib/active_admin/filters/resource_extension.rb +28 -43
  163. data/lib/active_admin/filters.rb +2 -0
  164. data/lib/active_admin/form_builder.rb +100 -59
  165. data/lib/active_admin/generators/boilerplate.rb +12 -4
  166. data/lib/active_admin/helpers/collection.rb +2 -0
  167. data/lib/active_admin/helpers/scope_chain.rb +1 -0
  168. data/lib/active_admin/inputs/datepicker_input.rb +12 -5
  169. data/lib/active_admin/inputs/filters/base/search_method_select.rb +2 -2
  170. data/lib/active_admin/inputs/filters/date_range_input.rb +21 -8
  171. data/lib/active_admin/inputs/filters/select_input.rb +6 -3
  172. data/lib/active_admin/inputs/filters/text_input.rb +25 -0
  173. data/lib/active_admin/inputs.rb +1 -0
  174. data/lib/active_admin/localizers/resource_localizer.rb +35 -0
  175. data/lib/active_admin/localizers.rb +11 -0
  176. data/lib/active_admin/menu.rb +6 -12
  177. data/lib/active_admin/menu_collection.rb +0 -2
  178. data/lib/active_admin/menu_item.rb +4 -32
  179. data/lib/active_admin/namespace.rb +36 -17
  180. data/lib/active_admin/namespace_settings.rb +123 -0
  181. data/lib/active_admin/order_clause.rb +30 -8
  182. data/lib/active_admin/orm/active_record/comments/comment.rb +3 -17
  183. data/lib/active_admin/orm/active_record/comments/views/active_admin_comments.rb +19 -7
  184. data/lib/active_admin/orm/active_record/comments.rb +17 -11
  185. data/lib/active_admin/page.rb +23 -4
  186. data/lib/active_admin/page_controller.rb +2 -6
  187. data/lib/active_admin/page_dsl.rb +5 -1
  188. data/lib/active_admin/page_presenter.rb +2 -1
  189. data/lib/active_admin/pundit_adapter.rb +18 -5
  190. data/lib/active_admin/resource/action_items.rb +17 -5
  191. data/lib/active_admin/resource/attributes.rb +47 -0
  192. data/lib/active_admin/resource/belongs_to.rb +10 -1
  193. data/lib/active_admin/resource/menu.rb +7 -4
  194. data/lib/active_admin/resource/model.rb +15 -0
  195. data/lib/active_admin/resource/naming.rb +3 -3
  196. data/lib/active_admin/resource/ordering.rb +11 -0
  197. data/lib/active_admin/resource/page_presenters.rb +1 -1
  198. data/lib/active_admin/resource/routes.rb +52 -20
  199. data/lib/active_admin/resource/scopes.rb +5 -3
  200. data/lib/active_admin/resource/sidebars.rb +1 -1
  201. data/lib/active_admin/resource.rb +59 -7
  202. data/lib/active_admin/resource_collection.rb +2 -2
  203. data/lib/active_admin/resource_controller/action_builder.rb +10 -0
  204. data/lib/active_admin/resource_controller/data_access.rb +32 -27
  205. data/lib/active_admin/resource_controller/decorators.rb +5 -5
  206. data/lib/active_admin/resource_controller/polymorphic_routes.rb +36 -0
  207. data/lib/active_admin/resource_controller/resource_class_methods.rb +2 -0
  208. data/lib/active_admin/resource_controller/scoping.rb +1 -1
  209. data/lib/active_admin/resource_controller.rb +15 -0
  210. data/lib/active_admin/resource_dsl.rb +58 -24
  211. data/lib/active_admin/router.rb +90 -82
  212. data/lib/active_admin/scope.rb +20 -12
  213. data/lib/active_admin/settings_node.rb +19 -0
  214. data/lib/active_admin/sidebar_section.rb +3 -1
  215. data/lib/active_admin/version.rb +1 -1
  216. data/lib/active_admin/view_helpers/auto_link_helper.rb +2 -2
  217. data/lib/active_admin/view_helpers/breadcrumb_helper.rb +2 -2
  218. data/lib/active_admin/view_helpers/display_helper.rb +28 -16
  219. data/lib/active_admin/view_helpers/download_format_links_helper.rb +13 -0
  220. data/lib/active_admin/view_helpers/fields_for.rb +1 -2
  221. data/lib/active_admin/view_helpers/form_helper.rb +2 -2
  222. data/lib/active_admin/view_helpers/method_or_proc_helper.rb +8 -1
  223. data/lib/active_admin/view_helpers/scope_name_helper.rb +16 -0
  224. data/lib/active_admin/view_helpers.rb +2 -1
  225. data/lib/active_admin/views/action_items.rb +1 -1
  226. data/lib/active_admin/views/components/active_admin_form.rb +43 -11
  227. data/lib/active_admin/views/components/attributes_table.rb +4 -4
  228. data/lib/active_admin/views/components/columns.rb +3 -3
  229. data/lib/active_admin/views/components/dropdown_menu.rb +4 -4
  230. data/lib/active_admin/views/components/index_list.rb +4 -3
  231. data/lib/active_admin/views/components/menu.rb +32 -0
  232. data/lib/active_admin/views/components/menu_item.rb +58 -0
  233. data/lib/active_admin/views/components/paginated_collection.rb +7 -11
  234. data/lib/active_admin/views/components/scopes.rb +14 -8
  235. data/lib/active_admin/views/components/sidebar.rb +13 -0
  236. data/lib/active_admin/views/components/site_title.rb +5 -6
  237. data/lib/active_admin/views/components/status_tag.rb +11 -16
  238. data/lib/active_admin/views/components/table_for.rb +7 -16
  239. data/lib/active_admin/views/components/tabs.rb +15 -3
  240. data/lib/active_admin/views/footer.rb +14 -4
  241. data/lib/active_admin/views/header.rb +3 -16
  242. data/lib/active_admin/views/index_as_blog.rb +2 -3
  243. data/lib/active_admin/views/index_as_grid.rb +25 -25
  244. data/lib/active_admin/views/index_as_table.rb +39 -13
  245. data/lib/active_admin/views/pages/base.rb +36 -57
  246. data/lib/active_admin/views/pages/form.rb +2 -3
  247. data/lib/active_admin/views/pages/layout.rb +1 -1
  248. data/lib/active_admin/views/pages/show.rb +8 -2
  249. data/lib/active_admin/views/tabbed_navigation.rb +4 -59
  250. data/lib/active_admin/views/title_bar.rb +4 -4
  251. data/lib/active_admin/views.rb +1 -1
  252. data/lib/active_admin.rb +11 -7
  253. data/lib/generators/active_admin/assets/assets_generator.rb +2 -2
  254. data/lib/generators/active_admin/assets/templates/active_admin.js +1 -0
  255. data/lib/generators/active_admin/devise/devise_generator.rb +8 -5
  256. data/lib/generators/active_admin/install/install_generator.rb +7 -3
  257. data/lib/generators/active_admin/install/templates/active_admin.rb.erb +60 -4
  258. data/lib/generators/active_admin/install/templates/{admin_user.rb.erb → admin_users.rb.erb} +1 -3
  259. data/lib/generators/active_admin/install/templates/dashboard.rb +2 -3
  260. data/lib/generators/active_admin/install/templates/migrations/{create_active_admin_comments.rb → create_active_admin_comments.rb.erb} +2 -5
  261. data/lib/generators/active_admin/page/page_generator.rb +1 -1
  262. data/lib/generators/active_admin/resource/resource_generator.rb +2 -2
  263. data/lib/generators/active_admin/resource/templates/admin.rb.erb +46 -0
  264. data/lib/ransack_ext.rb +5 -5
  265. data/vendor/assets/javascripts/jquery-ui/data.js +41 -0
  266. data/vendor/assets/javascripts/jquery-ui/disable-selection.js +48 -0
  267. data/vendor/assets/javascripts/jquery-ui/escape-selector.js +23 -0
  268. data/vendor/assets/javascripts/jquery-ui/focusable.js +86 -0
  269. data/vendor/assets/javascripts/jquery-ui/form-reset-mixin.js +80 -0
  270. data/vendor/assets/javascripts/jquery-ui/form.js +22 -0
  271. data/vendor/assets/javascripts/jquery-ui/ie.js +17 -0
  272. data/vendor/assets/javascripts/jquery-ui/keycode.js +47 -0
  273. data/vendor/assets/javascripts/jquery-ui/labels.js +65 -0
  274. data/vendor/assets/javascripts/jquery-ui/plugin.js +46 -0
  275. data/vendor/assets/javascripts/jquery-ui/position.js +500 -0
  276. data/vendor/assets/javascripts/jquery-ui/safe-active-element.js +42 -0
  277. data/vendor/assets/javascripts/jquery-ui/safe-blur.js +23 -0
  278. data/vendor/assets/javascripts/jquery-ui/scroll-parent.js +47 -0
  279. data/vendor/assets/javascripts/jquery-ui/tabbable.js +38 -0
  280. data/vendor/assets/javascripts/jquery-ui/unique-id.js +51 -0
  281. data/vendor/assets/javascripts/jquery-ui/version.js +17 -0
  282. data/vendor/assets/javascripts/jquery-ui/widget.js +735 -0
  283. data/vendor/assets/javascripts/jquery-ui/widgets/button.js +391 -0
  284. data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +291 -0
  285. data/vendor/assets/javascripts/jquery-ui/widgets/controlgroup.js +300 -0
  286. data/vendor/assets/javascripts/jquery-ui/widgets/datepicker.js +2123 -0
  287. data/vendor/assets/javascripts/jquery-ui/widgets/dialog.js +954 -0
  288. data/vendor/assets/javascripts/jquery-ui/widgets/draggable.js +1259 -0
  289. data/vendor/assets/javascripts/jquery-ui/widgets/mouse.js +230 -0
  290. data/vendor/assets/javascripts/jquery-ui/widgets/resizable.js +1207 -0
  291. data/vendor/assets/javascripts/jquery-ui/widgets/sortable.js +1561 -0
  292. data/vendor/assets/javascripts/jquery-ui/widgets/tabs.js +931 -0
  293. data/vendor/assets/stylesheets/active_admin/_normalize.scss +447 -0
  294. metadata +190 -539
  295. data/.gitignore +0 -49
  296. data/.hound.yml +0 -14
  297. data/.travis.yml +0 -46
  298. data/.yardopts +0 -8
  299. data/Gemfile +0 -75
  300. data/Guardfile +0 -8
  301. data/Rakefile +0 -33
  302. data/activeadmin.gemspec +0 -31
  303. data/app/assets/images/active_admin/datepicker/datepicker-input-icon.png +0 -0
  304. data/app/assets/javascripts/active_admin/base.js.coffee +0 -9
  305. data/app/assets/javascripts/active_admin/ext/jquery-ui.js.coffee +0 -6
  306. data/app/assets/javascripts/active_admin/ext/jquery.js.coffee +0 -7
  307. data/app/assets/javascripts/active_admin/initializers/batch_actions.js.coffee +0 -7
  308. data/app/assets/javascripts/active_admin/initializers/datepicker.js.coffee +0 -10
  309. data/app/assets/javascripts/active_admin/initializers/filters.js.coffee +0 -15
  310. data/app/assets/javascripts/active_admin/initializers/tabs.js.coffee +0 -3
  311. data/app/assets/javascripts/active_admin/jquery_ui.js.erb +0 -11
  312. data/app/assets/javascripts/active_admin/lib/batch_actions.js.coffee +0 -39
  313. data/app/assets/javascripts/active_admin/lib/checkbox-toggler.js.coffee +0 -36
  314. data/app/assets/javascripts/active_admin/lib/dropdown-menu.js.coffee +0 -101
  315. data/app/assets/javascripts/active_admin/lib/flash.js.coffee +0 -19
  316. data/app/assets/javascripts/active_admin/lib/has_many.js.coffee +0 -79
  317. data/app/assets/javascripts/active_admin/lib/modal_dialog.js.coffee +0 -45
  318. data/app/assets/javascripts/active_admin/lib/per_page.js.coffee +0 -31
  319. data/app/assets/javascripts/active_admin/lib/table-checkbox-toggler.js.coffee +0 -24
  320. data/app/assets/stylesheets/active_admin/mixins/_reset.scss +0 -165
  321. data/cucumber.yml +0 -3
  322. data/features/action_item.feature +0 -73
  323. data/features/authorization.feature +0 -64
  324. data/features/authorization_cancan.feature +0 -52
  325. data/features/authorization_pundit.feature +0 -37
  326. data/features/belongs_to.feature +0 -66
  327. data/features/breadcrumb.feature +0 -75
  328. data/features/comments/commenting.feature +0 -171
  329. data/features/comments/viewing_index.feature +0 -19
  330. data/features/dashboard.feature +0 -16
  331. data/features/decorators.feature +0 -43
  332. data/features/development_reloading.feature +0 -30
  333. data/features/edit_page.feature +0 -117
  334. data/features/favicon.feature +0 -20
  335. data/features/first_boot.feature +0 -16
  336. data/features/global_navigation.feature +0 -29
  337. data/features/i18n.feature +0 -43
  338. data/features/index/batch_actions.feature +0 -196
  339. data/features/index/filters.feature +0 -161
  340. data/features/index/format_as_csv.feature +0 -203
  341. data/features/index/formats.feature +0 -66
  342. data/features/index/index_as_block.feature +0 -15
  343. data/features/index/index_as_blog.feature +0 -69
  344. data/features/index/index_as_grid.feature +0 -45
  345. data/features/index/index_as_table.feature +0 -291
  346. data/features/index/index_blank_slate.feature +0 -83
  347. data/features/index/index_parameters.feature +0 -75
  348. data/features/index/index_scope_to.feature +0 -56
  349. data/features/index/index_scopes.feature +0 -251
  350. data/features/index/page_title.feature +0 -42
  351. data/features/index/pagination.feature +0 -63
  352. data/features/index/switch_index_view.feature +0 -73
  353. data/features/menu.feature +0 -53
  354. data/features/meta_tags.feature +0 -21
  355. data/features/new_page.feature +0 -109
  356. data/features/registering_assets.feature +0 -34
  357. data/features/registering_pages.feature +0 -148
  358. data/features/registering_resources.feature +0 -33
  359. data/features/renamed_resource.feature +0 -32
  360. data/features/root_to.feature +0 -17
  361. data/features/show/columns.feature +0 -40
  362. data/features/show/default_content.feature +0 -44
  363. data/features/show/page_title.feature +0 -59
  364. data/features/show/tabs.feature +0 -27
  365. data/features/sidebar_sections.feature +0 -210
  366. data/features/site_title.feature +0 -47
  367. data/features/specifying_actions.feature +0 -93
  368. data/features/step_definitions/action_item_steps.rb +0 -7
  369. data/features/step_definitions/action_link_steps.rb +0 -20
  370. data/features/step_definitions/additional_web_steps.rb +0 -81
  371. data/features/step_definitions/asset_steps.rb +0 -15
  372. data/features/step_definitions/attribute_steps.rb +0 -18
  373. data/features/step_definitions/batch_action_steps.rb +0 -81
  374. data/features/step_definitions/blog_steps.rb +0 -3
  375. data/features/step_definitions/breadcrumb_steps.rb +0 -3
  376. data/features/step_definitions/column_steps.rb +0 -8
  377. data/features/step_definitions/comment_steps.rb +0 -12
  378. data/features/step_definitions/configuration_steps.rb +0 -100
  379. data/features/step_definitions/dashboard_steps.rb +0 -15
  380. data/features/step_definitions/factory_steps.rb +0 -35
  381. data/features/step_definitions/filter_steps.rb +0 -39
  382. data/features/step_definitions/flash_steps.rb +0 -11
  383. data/features/step_definitions/format_steps.rb +0 -52
  384. data/features/step_definitions/i18n_steps.rb +0 -3
  385. data/features/step_definitions/index_scope_steps.rb +0 -21
  386. data/features/step_definitions/index_views_steps.rb +0 -3
  387. data/features/step_definitions/layout_steps.rb +0 -3
  388. data/features/step_definitions/member_link_steps.rb +0 -7
  389. data/features/step_definitions/menu_steps.rb +0 -11
  390. data/features/step_definitions/meta_tag_steps.rb +0 -3
  391. data/features/step_definitions/pagination_steps.rb +0 -15
  392. data/features/step_definitions/sidebar_steps.rb +0 -13
  393. data/features/step_definitions/site_title_steps.rb +0 -17
  394. data/features/step_definitions/symbol_leak_steps.rb +0 -3
  395. data/features/step_definitions/tab_steps.rb +0 -8
  396. data/features/step_definitions/table_steps.rb +0 -120
  397. data/features/step_definitions/user_steps.rb +0 -45
  398. data/features/step_definitions/web_steps.rb +0 -85
  399. data/features/sti_resource.feature +0 -65
  400. data/features/strong_parameters.feature +0 -73
  401. data/features/support/env.rb +0 -162
  402. data/features/support/paths.rb +0 -71
  403. data/features/support/selectors.rb +0 -45
  404. data/features/symbol_leak.feature +0 -35
  405. data/features/users/logging_in.feature +0 -34
  406. data/features/users/logging_out.feature +0 -13
  407. data/features/users/resetting_password.feature +0 -34
  408. data/lib/active_admin/event.rb +0 -24
  409. data/lib/active_admin/filters/humanized.rb +0 -68
  410. data/lib/active_admin/helpers/settings.rb +0 -115
  411. data/lib/active_admin/reloader.rb +0 -25
  412. data/lib/generators/active_admin/assets/templates/active_admin.js.coffee +0 -1
  413. data/lib/generators/active_admin/resource/templates/admin.rb +0 -45
  414. data/script/local +0 -53
  415. data/script/travis_cache +0 -107
  416. data/script/use_rails +0 -53
  417. data/spec/javascripts/coffeescripts/jquery.aa.checkbox-toggler-spec.js.coffee +0 -50
  418. data/spec/javascripts/coffeescripts/jquery.aa.flash.js.coffee +0 -25
  419. data/spec/javascripts/coffeescripts/jquery.aa.table-checkbox-toggler-spec.js.coffee +0 -34
  420. data/spec/javascripts/fixtures/checkboxes.html +0 -9
  421. data/spec/javascripts/fixtures/flashes.html +0 -2
  422. data/spec/javascripts/fixtures/table_checkboxes.html +0 -17
  423. data/spec/javascripts/helpers/SpecHelper.js +0 -3
  424. data/spec/javascripts/support/jasmine.yml +0 -74
  425. data/spec/javascripts/support/jasmine_config.rb +0 -23
  426. data/spec/javascripts/support/jasmine_runner.rb +0 -32
  427. data/spec/rails_helper.rb +0 -169
  428. data/spec/requests/default_namespace_spec.rb +0 -61
  429. data/spec/requests/javascript_spec.rb +0 -22
  430. data/spec/requests/memory_spec.rb +0 -21
  431. data/spec/requests/stylesheets_spec.rb +0 -18
  432. data/spec/spec_helper.rb +0 -17
  433. data/spec/support/active_admin_request_helpers.rb +0 -27
  434. data/spec/support/deferred_garbage_collection.rb +0 -19
  435. data/spec/support/detect_rails_version.rb +0 -34
  436. data/spec/support/jslint.yml +0 -80
  437. data/spec/support/rails_template.rb +0 -158
  438. data/spec/support/rails_template_with_data.rb +0 -55
  439. data/spec/support/templates/admin/stores.rb +0 -9
  440. data/spec/support/templates/en.yml +0 -8
  441. data/spec/support/templates/policies/active_admin/comment_policy.rb +0 -9
  442. data/spec/support/templates/policies/active_admin/page_policy.rb +0 -18
  443. data/spec/support/templates/policies/admin_user_policy.rb +0 -11
  444. data/spec/support/templates/policies/application_policy.rb +0 -45
  445. data/spec/support/templates/policies/category_policy.rb +0 -7
  446. data/spec/support/templates/policies/post_policy.rb +0 -15
  447. data/spec/support/templates/policies/store_policy.rb +0 -11
  448. data/spec/support/templates/policies/user_policy.rb +0 -11
  449. data/spec/support/templates/post_decorator.rb +0 -11
  450. data/spec/unit/abstract_view_factory_spec.rb +0 -79
  451. data/spec/unit/action_builder_spec.rb +0 -134
  452. data/spec/unit/active_admin_spec.rb +0 -11
  453. data/spec/unit/application_spec.rb +0 -165
  454. data/spec/unit/asset_registration_spec.rb +0 -52
  455. data/spec/unit/authorization/authorization_adapter_spec.rb +0 -61
  456. data/spec/unit/authorization/controller_authorization_spec.rb +0 -39
  457. data/spec/unit/authorization/index_overriding_spec.rb +0 -23
  458. data/spec/unit/auto_link_spec.rb +0 -69
  459. data/spec/unit/batch_actions/resource_spec.rb +0 -97
  460. data/spec/unit/batch_actions/settings_spec.rb +0 -61
  461. data/spec/unit/belongs_to_spec.rb +0 -65
  462. data/spec/unit/cancan_adapter_spec.rb +0 -43
  463. data/spec/unit/comments_spec.rb +0 -188
  464. data/spec/unit/component_spec.rb +0 -18
  465. data/spec/unit/config_shared_examples.rb +0 -59
  466. data/spec/unit/controller_filters_spec.rb +0 -41
  467. data/spec/unit/csv_builder_spec.rb +0 -303
  468. data/spec/unit/dependency_spec.rb +0 -135
  469. data/spec/unit/devise_spec.rb +0 -96
  470. data/spec/unit/dsl_spec.rb +0 -122
  471. data/spec/unit/filters/filter_form_builder_spec.rb +0 -434
  472. data/spec/unit/filters/humanized_spec.rb +0 -56
  473. data/spec/unit/filters/resource_spec.rb +0 -128
  474. data/spec/unit/form_builder_spec.rb +0 -815
  475. data/spec/unit/generators/install_spec.rb +0 -24
  476. data/spec/unit/helpers/collection_spec.rb +0 -65
  477. data/spec/unit/helpers/scope_chain_spec.rb +0 -36
  478. data/spec/unit/helpers/settings_spec.rb +0 -30
  479. data/spec/unit/i18n_spec.rb +0 -12
  480. data/spec/unit/menu_collection_spec.rb +0 -62
  481. data/spec/unit/menu_item_spec.rb +0 -143
  482. data/spec/unit/menu_spec.rb +0 -71
  483. data/spec/unit/namespace/authorization_spec.rb +0 -27
  484. data/spec/unit/namespace/register_page_spec.rb +0 -73
  485. data/spec/unit/namespace/register_resource_spec.rb +0 -160
  486. data/spec/unit/namespace_spec.rb +0 -103
  487. data/spec/unit/order_clause_spec.rb +0 -81
  488. data/spec/unit/page_controller_spec.rb +0 -5
  489. data/spec/unit/page_spec.rb +0 -78
  490. data/spec/unit/pretty_format_spec.rb +0 -77
  491. data/spec/unit/pundit_adapter_spec.rb +0 -98
  492. data/spec/unit/resource/action_items_spec.rb +0 -65
  493. data/spec/unit/resource/includes_spec.rb +0 -21
  494. data/spec/unit/resource/menu_spec.rb +0 -18
  495. data/spec/unit/resource/naming_spec.rb +0 -122
  496. data/spec/unit/resource/page_presenters_spec.rb +0 -44
  497. data/spec/unit/resource/pagination_spec.rb +0 -38
  498. data/spec/unit/resource/routes_spec.rb +0 -77
  499. data/spec/unit/resource/scopes_spec.rb +0 -50
  500. data/spec/unit/resource/sidebars_spec.rb +0 -43
  501. data/spec/unit/resource_collection_spec.rb +0 -175
  502. data/spec/unit/resource_controller/data_access_spec.rb +0 -140
  503. data/spec/unit/resource_controller/decorators_spec.rb +0 -94
  504. data/spec/unit/resource_controller/sidebars_spec.rb +0 -38
  505. data/spec/unit/resource_controller_spec.rb +0 -269
  506. data/spec/unit/resource_registration_spec.rb +0 -56
  507. data/spec/unit/resource_spec.rb +0 -331
  508. data/spec/unit/routing_spec.rb +0 -185
  509. data/spec/unit/scope_spec.rb +0 -185
  510. data/spec/unit/settings_spec.rb +0 -118
  511. data/spec/unit/view_factory_spec.rb +0 -19
  512. data/spec/unit/view_helpers/breadcrumbs_spec.rb +0 -217
  513. data/spec/unit/view_helpers/display_helper_spec.rb +0 -165
  514. data/spec/unit/view_helpers/download_format_links_helper_spec.rb +0 -39
  515. data/spec/unit/view_helpers/fields_for_spec.rb +0 -50
  516. data/spec/unit/view_helpers/flash_helper_spec.rb +0 -25
  517. data/spec/unit/view_helpers/form_helper_spec.rb +0 -43
  518. data/spec/unit/view_helpers/method_or_proc_helper_spec.rb +0 -139
  519. data/spec/unit/views/components/attributes_table_spec.rb +0 -272
  520. data/spec/unit/views/components/batch_action_selector_spec.rb +0 -43
  521. data/spec/unit/views/components/blank_slate_spec.rb +0 -27
  522. data/spec/unit/views/components/columns_spec.rb +0 -189
  523. data/spec/unit/views/components/index_list_spec.rb +0 -35
  524. data/spec/unit/views/components/index_table_for_spec.rb +0 -127
  525. data/spec/unit/views/components/paginated_collection_spec.rb +0 -249
  526. data/spec/unit/views/components/panel_spec.rb +0 -58
  527. data/spec/unit/views/components/sidebar_section_spec.rb +0 -68
  528. data/spec/unit/views/components/site_title_spec.rb +0 -78
  529. data/spec/unit/views/components/status_tag_spec.rb +0 -249
  530. data/spec/unit/views/components/table_for_spec.rb +0 -434
  531. data/spec/unit/views/components/tabs_spec.rb +0 -39
  532. data/spec/unit/views/components/unsupported_browser_spec.rb +0 -41
  533. data/spec/unit/views/index_as_blog_spec.rb +0 -76
  534. data/spec/unit/views/pages/form_spec.rb +0 -51
  535. data/spec/unit/views/pages/index_spec.rb +0 -60
  536. data/spec/unit/views/pages/layout_spec.rb +0 -59
  537. data/spec/unit/views/pages/show_spec.rb +0 -33
  538. data/spec/unit/views/tabbed_navigation_spec.rb +0 -158
  539. data/tasks/docs.rake +0 -37
  540. data/tasks/parallel_tests.rake +0 -66
  541. data/tasks/test.rake +0 -91
  542. data/tasks/yard.rake +0 -9
data/script/use_rails DELETED
@@ -1,53 +0,0 @@
1
- #!/usr/bin/env ruby
2
- #
3
- # Switches the development environment to use the given
4
- # version of rails. Caches the Gemfile.locks so that
5
- # switching it very fast.
6
- #
7
- require File.expand_path("../../spec/support/detect_rails_version", __FILE__)
8
-
9
- def cmd(command)
10
- puts command
11
- exit 1 unless system command
12
- end
13
-
14
- version = ARGV[0]
15
-
16
- unless version
17
- puts "USAGE: ./script/#{__FILE__} VERSION [OPTIONS]"
18
- puts
19
- puts "Options:"
20
- puts " --clobber Add this flag to remove the existing Gemfile.lock before running"
21
- exit(1)
22
- end
23
-
24
- def file_or_symlink?(path)
25
- File.exist?(path) || File.symlink?(path)
26
- end
27
-
28
- gem_lock_dir = ".gemfile-locks"
29
- gem_lock_file = "#{gem_lock_dir}/Gemfile-#{version}.lock"
30
-
31
- # Ensure our lock dir is created
32
- cmd "mkdir #{gem_lock_dir}" unless File.exists?(gem_lock_dir)
33
-
34
- # --clobber passed in
35
- if File.exists?(gem_lock_file) && ARGV.include?('--clobber')
36
- cmd "rm #{gem_lock_file}"
37
- end
38
-
39
- write_rails_version(version)
40
-
41
- # Ensure that bundler installs
42
- ENV['RUBYOPT'] = ''
43
-
44
- if File.exists?(gem_lock_file)
45
- cmd("rm Gemfile.lock") if file_or_symlink?("Gemfile.lock")
46
- cmd("ln -s #{gem_lock_file} Gemfile.lock")
47
- cmd("bundle")
48
- else
49
- cmd "rm Gemfile.lock" if file_or_symlink?("Gemfile.lock")
50
- cmd "bundle install"
51
- cmd "mv Gemfile.lock #{gem_lock_file}"
52
- cmd("ln -s #{gem_lock_file} Gemfile.lock")
53
- 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,23 +0,0 @@
1
- module Jasmine
2
- class Config
3
-
4
- # Add your overrides or custom config code here
5
-
6
- end
7
- end
8
-
9
-
10
- # Note - this is necessary for rspec2, which has removed the backtrace
11
- module Jasmine
12
- class SpecBuilder
13
- def declare_spec(parent, spec)
14
- me = self
15
- example_name = spec["name"]
16
- @spec_ids << spec["id"]
17
- backtrace = @example_locations[parent.description + " " + example_name]
18
- parent.it example_name, {} do
19
- me.report_spec(spec["id"])
20
- end
21
- end
22
- end
23
- end
@@ -1,32 +0,0 @@
1
- $:.unshift(ENV['JASMINE_GEM_PATH']) if ENV['JASMINE_GEM_PATH'] # for gem testing purposes
2
-
3
- require 'rubygems'
4
- require 'jasmine'
5
- jasmine_config_overrides = File.expand_path(File.join(File.dirname(__FILE__), 'jasmine_config.rb'))
6
- require jasmine_config_overrides if File.exist?(jasmine_config_overrides)
7
- if Jasmine::rspec2?
8
- require 'rspec'
9
- else
10
- require 'spec'
11
- end
12
-
13
- jasmine_config = Jasmine::Config.new
14
- spec_builder = Jasmine::SpecBuilder.new(jasmine_config)
15
-
16
- should_stop = false
17
-
18
- if Jasmine::rspec2?
19
- RSpec.configuration.after(:suite) do
20
- spec_builder.stop if should_stop
21
- end
22
- else
23
- Spec::Runner.configure do |config|
24
- config.after(:suite) do
25
- spec_builder.stop if should_stop
26
- end
27
- end
28
- end
29
-
30
- spec_builder.start
31
- should_stop = true
32
- spec_builder.declare_suites
data/spec/rails_helper.rb DELETED
@@ -1,169 +0,0 @@
1
- require 'spec_helper'
2
-
3
- module ActiveAdminIntegrationSpecHelper
4
- extend self
5
-
6
- def load_defaults!
7
- ActiveAdmin.unload!
8
- ActiveAdmin.load!
9
- ActiveAdmin.register(Category)
10
- ActiveAdmin.register(User)
11
- ActiveAdmin.register(Post){ belongs_to :user, optional: true }
12
- reload_menus!
13
- end
14
-
15
- def reload_menus!
16
- ActiveAdmin.application.namespaces.each{|n| n.reset_menu! }
17
- end
18
-
19
- # Sometimes we need to reload the routes within
20
- # the application to test them out
21
- def reload_routes!
22
- Rails.application.reload_routes!
23
- end
24
-
25
- # Helper method to load resources and ensure that Active Admin is
26
- # setup with the new configurations.
27
- #
28
- # Eg:
29
- # load_resources do
30
- # ActiveAdmin.regiser(Post)
31
- # end
32
- #
33
- def load_resources
34
- ActiveAdmin.unload!
35
- yield
36
- reload_menus!
37
- reload_routes!
38
- end
39
-
40
- # Sets up a describe block where you can render controller
41
- # actions. Uses the Admin::PostsController as the subject
42
- # for the describe block
43
- def describe_with_render(*args, &block)
44
- describe *args do
45
- include RSpec::Rails::ControllerExampleGroup
46
- render_views
47
- # metadata[:behaviour][:describes] = ActiveAdmin.namespaces[:admin].resources['Post'].controller
48
- module_eval &block
49
- end
50
- end
51
-
52
- def arbre(assigns = {}, helpers = mock_action_view, &block)
53
- Arbre::Context.new(assigns, helpers, &block)
54
- end
55
-
56
- def render_arbre_component(assigns = {}, helpers = mock_action_view, &block)
57
- arbre(assigns, helpers, &block).children.first
58
- end
59
-
60
- # Setup a describe block which uses capybara and rails integration
61
- # test methods.
62
- def describe_with_capybara(*args, &block)
63
- describe *args do
64
- include RSpec::Rails::IntegrationExampleGroup
65
- module_eval &block
66
- end
67
- end
68
-
69
- # Returns a fake action view instance to use with our renderers
70
- def mock_action_view(assigns = {})
71
- controller = ActionView::TestCase::TestController.new
72
- ActionView::Base.send :include, ActionView::Helpers
73
- ActionView::Base.send :include, ActiveAdmin::ViewHelpers
74
- ActionView::Base.send :include, Rails.application.routes.url_helpers
75
- ActionView::Base.new(ActionController::Base.view_paths, assigns, controller)
76
- end
77
- alias_method :action_view, :mock_action_view
78
-
79
- # A mock resource to register
80
- class MockResource
81
- end
82
-
83
- def with_translation(translation)
84
- I18n.backend.store_translations :en, translation
85
- yield
86
- ensure
87
- I18n.backend.reload!
88
- end
89
-
90
- end
91
-
92
- ENV['RAILS_ENV'] = 'test'
93
- ENV['RAILS_ROOT'] = File.expand_path("../rails/rails-#{ENV['RAILS']}", __FILE__)
94
-
95
- # Create the test app if it doesn't exists
96
- unless File.exists?(ENV['RAILS_ROOT'])
97
- system 'rake setup'
98
- end
99
-
100
- require 'rails'
101
- require 'active_record'
102
- require 'active_admin'
103
- require 'devise'
104
- ActiveAdmin.application.load_paths = [ENV['RAILS_ROOT'] + "/app/admin"]
105
-
106
- require ENV['RAILS_ROOT'] + '/config/environment'
107
-
108
- require 'rspec/rails'
109
-
110
- # Prevent Test::Unit's AutoRunner from executing during RSpec's rake task on
111
- # JRuby
112
- Test::Unit.run = true if defined?(Test::Unit) && Test::Unit.respond_to?(:run=)
113
-
114
- # Setup Some Admin stuff for us to play with
115
- include ActiveAdminIntegrationSpecHelper
116
- load_defaults!
117
- reload_routes!
118
-
119
- # Disabling authentication in specs so that we don't have to worry about
120
- # it allover the place
121
- ActiveAdmin.application.authentication_method = false
122
- ActiveAdmin.application.current_user_method = false
123
-
124
- # Don't add asset cache timestamps. Makes it easy to integration
125
- # test for the presence of an asset file
126
- ENV["RAILS_ASSET_ID"] = ''
127
-
128
- RSpec.configure do |config|
129
- config.use_transactional_fixtures = true
130
- config.use_instantiated_fixtures = false
131
- config.include Devise::TestHelpers, type: :controller
132
- config.render_views = false
133
- config.filter_run focus: true
134
- config.filter_run_excluding skip: true
135
- config.run_all_when_everything_filtered = true
136
- config.color = true
137
- end
138
-
139
- # All RSpec configuration needs to happen before any examples
140
- # or else it whines.
141
- require "support/active_admin_request_helpers"
142
- RSpec.configure do |c|
143
- c.include ActiveAdminRequestHelpers, type: :request
144
- c.include Devise::TestHelpers, type: :controller
145
- end
146
-
147
- # Force deprecations to raise an exception.
148
- # This would set `behavior = :raise`, but that wasn't added until Rails 4.
149
- ActiveSupport::Deprecation.behavior = -> message, callstack do
150
- e = StandardError.new message
151
- e.set_backtrace callstack.map(&:to_s)
152
- raise e
153
- end
154
-
155
- # improve the performance of the specs suite by not logging anything
156
- # see http://blog.plataformatec.com.br/2011/12/three-tips-to-improve-the-performance-of-your-test-suite/
157
- Rails.logger.level = 4
158
-
159
- # Improves performance by forcing the garbage collector to run less often.
160
- unless ENV['DEFER_GC'] == '0' || ENV['DEFER_GC'] == 'false'
161
- require 'support/deferred_garbage_collection'
162
- RSpec.configure do |config|
163
- config.before(:all) { DeferredGarbageCollection.start }
164
- config.after(:all) { DeferredGarbageCollection.reconsider }
165
- end
166
- end
167
-
168
- # Make input type=hidden visible
169
- Capybara.ignore_hidden_elements = false
@@ -1,61 +0,0 @@
1
- require 'rails_helper'
2
-
3
- describe ActiveAdmin::Application, :type => :request do
4
-
5
- include Rails.application.routes.url_helpers
6
-
7
- [false, nil].each do |value|
8
-
9
- describe "with a #{value} default namespace" do
10
-
11
- before(:all) do
12
- @__original_application = ActiveAdmin.application
13
- application = ActiveAdmin::Application.new
14
- application.default_namespace = value
15
- ActiveAdmin.application = application
16
- load_defaults!
17
- reload_routes!
18
- end
19
-
20
- after(:all) do
21
- ActiveAdmin.application = @__original_application
22
- end
23
-
24
- it "should generate a log out path" do
25
- expect(destroy_admin_user_session_path).to eq "/logout"
26
- end
27
-
28
- it "should generate a log in path" do
29
- expect(new_admin_user_session_path).to eq "/login"
30
- end
31
-
32
- end
33
-
34
- end
35
-
36
- describe "with a test default namespace" do
37
-
38
- before(:all) do
39
- @__original_application = ActiveAdmin.application
40
- application = ActiveAdmin::Application.new
41
- application.default_namespace = :test
42
- ActiveAdmin.application = application
43
- load_defaults!
44
- reload_routes!
45
- end
46
-
47
- after(:all) do
48
- ActiveAdmin.application = @__original_application
49
- end
50
-
51
- it "should generate a log out path" do
52
- expect(destroy_admin_user_session_path).to eq "/test/logout"
53
- end
54
-
55
- it "should generate a log in path" do
56
- expect(new_admin_user_session_path).to eq "/test/login"
57
- end
58
-
59
- end
60
-
61
- end
@@ -1,22 +0,0 @@
1
- require 'rails_helper'
2
- require 'jslint'
3
- require 'rbconfig'
4
-
5
- # OSX has its own java executable that opens a prompt to install Java 💩
6
- # However this java_home executable returns an error code without opening the prompt ✅
7
- RbConfig::CONFIG['host_os'].include?('darwin') ? `/usr/libexec/java_home` : `which java`
8
- java_installed = $?.success?
9
-
10
- describe 'Javascript', type: :request, if: java_installed do
11
- let(:lint) {
12
- JSLint::Lint.new \
13
- paths: ['public/javascripts/**/*.js'],
14
- exclude_paths: ['public/javascripts/vendor/**/*.js'],
15
- config_path: 'spec/support/jslint.yml'
16
- }
17
-
18
- it 'should not have any syntax errors' do
19
- lint.run
20
- end
21
- end
22
-
@@ -1,21 +0,0 @@
1
- require 'rails_helper'
2
-
3
- describe "Memory Leak", type: :request, if: RUBY_ENGINE == 'ruby' do
4
- def count_instances_of(klass)
5
- ObjectSpace.each_object(klass) { }
6
- end
7
-
8
- [ActiveAdmin::Namespace, ActiveAdmin::Resource].each do |klass|
9
- it "should not leak #{klass}" do
10
- previously_disabled = GC.enable
11
- GC.start
12
- count = count_instances_of(klass)
13
-
14
- load_defaults!
15
-
16
- GC.start
17
- GC.disable if previously_disabled
18
- expect(count_instances_of klass).to be <= count
19
- end
20
- end
21
- end
@@ -1,18 +0,0 @@
1
- require 'rails_helper'
2
-
3
- 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,17 +0,0 @@
1
- $LOAD_PATH.unshift(File.dirname(__FILE__))
2
- $LOAD_PATH << File.expand_path('../support', __FILE__)
3
-
4
- ENV['BUNDLE_GEMFILE'] = File.expand_path('../../Gemfile', __FILE__)
5
- require "bundler"
6
- Bundler.setup
7
-
8
- require 'detect_rails_version'
9
- ENV['RAILS'] = detect_rails_version
10
-
11
- require 'simplecov'
12
-
13
- SimpleCov.start do
14
- add_filter 'spec/'
15
- add_filter 'features/'
16
- add_filter 'bundle/' # for Travis
17
- end
@@ -1,27 +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
- end