rails_admin 0.6.1 → 0.6.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of rails_admin might be problematic. Click here for more details.

Files changed (663) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +17 -19
  3. data/LICENSE.md +1 -1
  4. data/README.md +9 -7
  5. data/app/assets/javascripts/rails_admin/ra.filtering-multiselect.js +6 -5
  6. data/app/assets/javascripts/rails_admin/ra.filtering-select.js +1 -1
  7. data/app/controllers/rails_admin/main_controller.rb +3 -3
  8. data/app/helpers/rails_admin/application_helper.rb +6 -6
  9. data/app/helpers/rails_admin/form_builder.rb +4 -4
  10. data/app/views/kaminari/twitter-bootstrap/_gap.html.haml +1 -1
  11. data/app/views/kaminari/twitter-bootstrap/_next_page.html.haml +1 -1
  12. data/app/views/kaminari/twitter-bootstrap/_page.html.haml +2 -2
  13. data/app/views/kaminari/twitter-bootstrap/_prev_page.html.haml +1 -1
  14. data/app/views/layouts/rails_admin/_secondary_navigation.html.haml +3 -3
  15. data/app/views/layouts/rails_admin/application.html.haml +7 -7
  16. data/app/views/layouts/rails_admin/pjax.html.haml +2 -2
  17. data/app/views/rails_admin/main/_dashboard_history.html.haml +1 -1
  18. data/app/views/rails_admin/main/_delete_notice.html.haml +4 -4
  19. data/app/views/rails_admin/main/_form_ck_editor.html.haml +5 -5
  20. data/app/views/rails_admin/main/_form_code_mirror.html.haml +5 -5
  21. data/app/views/rails_admin/main/_form_colorpicker.html.haml +1 -1
  22. data/app/views/rails_admin/main/_form_datetime.html.haml +1 -1
  23. data/app/views/rails_admin/main/_form_enumeration.html.haml +12 -12
  24. data/app/views/rails_admin/main/_form_field.html.haml +1 -1
  25. data/app/views/rails_admin/main/_form_file_upload.html.haml +4 -4
  26. data/app/views/rails_admin/main/_form_filtering_multiselect.html.haml +17 -17
  27. data/app/views/rails_admin/main/_form_filtering_select.html.haml +8 -8
  28. data/app/views/rails_admin/main/_form_nested_many.html.haml +5 -5
  29. data/app/views/rails_admin/main/_form_nested_one.html.haml +5 -5
  30. data/app/views/rails_admin/main/_form_polymorphic_association.html.haml +4 -4
  31. data/app/views/rails_admin/main/_form_text.html.haml +1 -1
  32. data/app/views/rails_admin/main/_form_wysihtml5.html.haml +4 -4
  33. data/app/views/rails_admin/main/_submit_buttons.html.haml +5 -5
  34. data/app/views/rails_admin/main/bulk_delete.html.haml +5 -5
  35. data/app/views/rails_admin/main/dashboard.html.haml +7 -7
  36. data/app/views/rails_admin/main/delete.html.haml +7 -7
  37. data/app/views/rails_admin/main/edit.html.haml +2 -2
  38. data/app/views/rails_admin/main/export.html.haml +36 -36
  39. data/app/views/rails_admin/main/history.html.haml +13 -13
  40. data/app/views/rails_admin/main/index.html.haml +27 -27
  41. data/app/views/rails_admin/main/new.html.haml +2 -2
  42. data/app/views/rails_admin/main/show.html.haml +3 -3
  43. data/config/initializers/active_record_extensions.rb +14 -12
  44. data/config/routes.rb +1 -1
  45. data/lib/generators/rails_admin/install_generator.rb +1 -1
  46. data/lib/rails_admin/abstract_model.rb +5 -5
  47. data/lib/rails_admin/adapters/active_record.rb +86 -54
  48. data/lib/rails_admin/adapters/active_record/abstract_object.rb +1 -1
  49. data/lib/rails_admin/adapters/mongoid.rb +160 -126
  50. data/lib/rails_admin/adapters/mongoid/abstract_object.rb +1 -1
  51. data/lib/rails_admin/adapters/mongoid/extension.rb +1 -1
  52. data/lib/rails_admin/bootstrap-sass.rb +36 -34
  53. data/lib/rails_admin/bootstrap-sass/compass_functions.rb +23 -20
  54. data/lib/rails_admin/bootstrap-sass/sass_functions.rb +14 -10
  55. data/lib/rails_admin/config.rb +3 -3
  56. data/lib/rails_admin/config/actions.rb +2 -2
  57. data/lib/rails_admin/config/actions/dashboard.rb +1 -1
  58. data/lib/rails_admin/config/configurable.rb +1 -1
  59. data/lib/rails_admin/config/fields.rb +7 -7
  60. data/lib/rails_admin/config/fields/association.rb +8 -8
  61. data/lib/rails_admin/config/fields/base.rb +13 -13
  62. data/lib/rails_admin/config/fields/factories/association.rb +6 -6
  63. data/lib/rails_admin/config/fields/factories/carrierwave.rb +2 -2
  64. data/lib/rails_admin/config/fields/factories/devise.rb +2 -2
  65. data/lib/rails_admin/config/fields/factories/dragonfly.rb +2 -2
  66. data/lib/rails_admin/config/fields/factories/enum.rb +2 -2
  67. data/lib/rails_admin/config/fields/factories/paperclip.rb +2 -2
  68. data/lib/rails_admin/config/fields/factories/password.rb +2 -2
  69. data/lib/rails_admin/config/fields/types/all.rb +1 -0
  70. data/lib/rails_admin/config/fields/types/belongs_to_association.rb +3 -3
  71. data/lib/rails_admin/config/fields/types/boolean.rb +3 -3
  72. data/lib/rails_admin/config/fields/types/datetime.rb +2 -2
  73. data/lib/rails_admin/config/fields/types/enum.rb +2 -2
  74. data/lib/rails_admin/config/fields/types/file_upload.rb +1 -1
  75. data/lib/rails_admin/config/fields/types/json.rb +24 -0
  76. data/lib/rails_admin/config/fields/types/polymorphic_association.rb +2 -2
  77. data/lib/rails_admin/config/fields/types/time.rb +1 -1
  78. data/lib/rails_admin/config/has_fields.rb +3 -3
  79. data/lib/rails_admin/extensions/cancan/authorization_adapter.rb +0 -2
  80. data/lib/rails_admin/extensions/history/history.rb +44 -40
  81. data/lib/rails_admin/extensions/paper_trail/auditing_adapter.rb +15 -4
  82. data/lib/rails_admin/version.rb +1 -1
  83. data/spec/controllers/rails_admin/application_controller_spec.rb +2 -2
  84. data/spec/dummy_app/Gemfile +2 -9
  85. data/spec/dummy_app/app/active_record/carrierwave_uploader.rb +2 -2
  86. data/spec/dummy_app/app/active_record/comment/confirmed.rb +4 -2
  87. data/spec/dummy_app/app/active_record/field_test.rb +1 -1
  88. data/spec/dummy_app/app/mongoid/carrierwave_uploader.rb +2 -2
  89. data/spec/dummy_app/app/mongoid/comment/confirmed.rb +4 -2
  90. data/spec/dummy_app/app/mongoid/field_test.rb +3 -2
  91. data/spec/dummy_app/app/mongoid/user.rb +10 -10
  92. data/spec/dummy_app/app/views/layouts/application.html.erb +1 -1
  93. data/spec/dummy_app/config/application.rb +3 -3
  94. data/spec/dummy_app/config/boot.rb +1 -1
  95. data/spec/dummy_app/config/initializers/devise.rb +4 -4
  96. data/spec/dummy_app/config/initializers/dragonfly.rb +23 -7
  97. data/spec/dummy_app/config/initializers/rails_admin.rb +0 -2
  98. data/spec/dummy_app/config/routes.rb +1 -1
  99. data/spec/dummy_app/db/migrate/00000000000006_devise_create_users.rb +5 -5
  100. data/spec/dummy_app/db/test.sqlite3 +0 -0
  101. data/spec/dummy_app/tmp/cache/assets/test/sass/0e28199903adc18ba5ed7000a3cfbe6be324f02c/mixins.scssc +0 -0
  102. data/spec/dummy_app/tmp/cache/assets/test/sass/0e28199903adc18ba5ed7000a3cfbe6be324f02c/theming.scssc +0 -0
  103. data/spec/dummy_app/tmp/cache/assets/test/sass/0e28199903adc18ba5ed7000a3cfbe6be324f02c/variables.scssc +0 -0
  104. data/spec/dummy_app/tmp/cache/assets/test/sass/245c4be20f01db9121b0992275b77e082f23d7df/font-awesome-4-compability.scssc +0 -0
  105. data/spec/dummy_app/tmp/cache/assets/test/sass/245c4be20f01db9121b0992275b77e082f23d7df/mixins.scssc +0 -0
  106. data/spec/dummy_app/tmp/cache/assets/test/sass/245c4be20f01db9121b0992275b77e082f23d7df/theming.scssc +0 -0
  107. data/spec/dummy_app/tmp/cache/assets/test/sass/245c4be20f01db9121b0992275b77e082f23d7df/variables.scssc +0 -0
  108. data/spec/dummy_app/tmp/cache/assets/test/sass/46504e29e25493e203f6e081863c6f722ba34fce/mixins.scssc +0 -0
  109. data/spec/dummy_app/tmp/cache/assets/test/sass/46504e29e25493e203f6e081863c6f722ba34fce/theming.scssc +0 -0
  110. data/spec/dummy_app/tmp/cache/assets/test/sass/46504e29e25493e203f6e081863c6f722ba34fce/variables.scssc +0 -0
  111. data/spec/dummy_app/tmp/cache/assets/test/sass/7a85589b70ac6319b07ac05552a98bba4b834a39/font-awesome-4-compability.scssc +0 -0
  112. data/spec/dummy_app/tmp/cache/assets/test/sass/7a85589b70ac6319b07ac05552a98bba4b834a39/mixins.scssc +0 -0
  113. data/spec/dummy_app/tmp/cache/assets/test/sass/7a85589b70ac6319b07ac05552a98bba4b834a39/theming.scssc +0 -0
  114. data/spec/dummy_app/tmp/cache/assets/test/sass/7a85589b70ac6319b07ac05552a98bba4b834a39/variables.scssc +0 -0
  115. data/spec/dummy_app/tmp/cache/assets/test/sass/92899d6fb50bc282d329302d61a5c00fa959d762/jquery-ui-1.8.7.custom.scssc +0 -0
  116. data/spec/dummy_app/tmp/cache/assets/test/sass/977fdcd1d57ae400c0a80cee764210478c5780f6/jquery.colorpicker.scssc +0 -0
  117. data/spec/dummy_app/tmp/cache/assets/test/sass/977fdcd1d57ae400c0a80cee764210478c5780f6/jquery.ui.timepicker.scssc +0 -0
  118. data/spec/dummy_app/tmp/cache/assets/test/sass/977fdcd1d57ae400c0a80cee764210478c5780f6/ra.calendar-additions.scssc +0 -0
  119. data/spec/dummy_app/tmp/cache/assets/test/sass/977fdcd1d57ae400c0a80cee764210478c5780f6/ra.filtering-multiselect.scssc +0 -0
  120. data/spec/dummy_app/tmp/cache/assets/test/sass/977fdcd1d57ae400c0a80cee764210478c5780f6/ra.widgets.scssc +0 -0
  121. data/spec/dummy_app/tmp/cache/assets/test/sass/977fdcd1d57ae400c0a80cee764210478c5780f6/rails_admin.scss.erbc +0 -0
  122. data/spec/dummy_app/tmp/cache/assets/test/sass/9a24497045e3375a0450bb40eb1ffe1eb56bc709/mixins.scssc +0 -0
  123. data/spec/dummy_app/tmp/cache/assets/test/sass/9a24497045e3375a0450bb40eb1ffe1eb56bc709/theming.scssc +0 -0
  124. data/spec/dummy_app/tmp/cache/assets/test/sass/9a24497045e3375a0450bb40eb1ffe1eb56bc709/variables.scssc +0 -0
  125. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_accordion.scssc +0 -0
  126. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_alerts.scssc +0 -0
  127. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_breadcrumbs.scssc +0 -0
  128. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_button-groups.scssc +0 -0
  129. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_buttons.scssc +0 -0
  130. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_carousel.scssc +0 -0
  131. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_close.scssc +0 -0
  132. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_component-animations.scssc +0 -0
  133. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_dropdowns.scssc +0 -0
  134. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_forms.scssc +0 -0
  135. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_grid.scssc +0 -0
  136. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_hero-unit.scssc +0 -0
  137. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_labels-badges.scssc +0 -0
  138. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_layouts.scssc +0 -0
  139. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_mixins.scssc +0 -0
  140. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_modals.scssc +0 -0
  141. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_navbar.scssc +0 -0
  142. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_navs.scssc +0 -0
  143. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_pager.scssc +0 -0
  144. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_pagination.scssc +0 -0
  145. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_popovers.scssc +0 -0
  146. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_progress-bars.scssc +0 -0
  147. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_reset.scssc +0 -0
  148. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_scaffolding.scssc +0 -0
  149. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_tables.scssc +0 -0
  150. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_thumbnails.scssc +0 -0
  151. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_tooltip.scssc +0 -0
  152. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_type.scssc +0 -0
  153. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_utilities.scssc +0 -0
  154. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_variables.scssc +0 -0
  155. data/spec/dummy_app/tmp/cache/assets/test/sass/a011cf534fa35e4fa0708adf6019078657586c2c/_wells.scssc +0 -0
  156. data/spec/dummy_app/tmp/cache/assets/test/sass/{66bb15d356a3ae9531c123a31be7776c5874ac21 → a4c18caca746ae8f758dd7048a48ef971eb959ea}/font-awesome.css.erbc +0 -0
  157. data/spec/dummy_app/tmp/cache/assets/test/sass/a65ba3e01aefad1ad59b6317cbb14d0560ca012b/mixins.scssc +0 -0
  158. data/spec/dummy_app/tmp/cache/assets/test/sass/a65ba3e01aefad1ad59b6317cbb14d0560ca012b/theming.scssc +0 -0
  159. data/spec/dummy_app/tmp/cache/assets/test/sass/a65ba3e01aefad1ad59b6317cbb14d0560ca012b/variables.scssc +0 -0
  160. data/spec/dummy_app/tmp/cache/assets/test/sass/c7aba53479ebd90acc5f6ba8fb7463fa43b1ae1c/jquery.colorpicker.scssc +0 -0
  161. data/spec/dummy_app/tmp/cache/assets/test/sass/c7aba53479ebd90acc5f6ba8fb7463fa43b1ae1c/jquery.ui.timepicker.scssc +0 -0
  162. data/spec/dummy_app/tmp/cache/assets/test/sass/c7aba53479ebd90acc5f6ba8fb7463fa43b1ae1c/ra.calendar-additions.scssc +0 -0
  163. data/spec/dummy_app/tmp/cache/assets/test/sass/c7aba53479ebd90acc5f6ba8fb7463fa43b1ae1c/ra.filtering-multiselect.scssc +0 -0
  164. data/spec/dummy_app/tmp/cache/assets/test/sass/c7aba53479ebd90acc5f6ba8fb7463fa43b1ae1c/ra.widgets.scssc +0 -0
  165. data/spec/dummy_app/tmp/cache/assets/test/sass/c7aba53479ebd90acc5f6ba8fb7463fa43b1ae1c/rails_admin.scss.erbc +0 -0
  166. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_accordion.scssc +0 -0
  167. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_alerts.scssc +0 -0
  168. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_breadcrumbs.scssc +0 -0
  169. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_button-groups.scssc +0 -0
  170. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_buttons.scssc +0 -0
  171. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_carousel.scssc +0 -0
  172. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_close.scssc +0 -0
  173. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_component-animations.scssc +0 -0
  174. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_dropdowns.scssc +0 -0
  175. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_forms.scssc +0 -0
  176. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_grid.scssc +0 -0
  177. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_hero-unit.scssc +0 -0
  178. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_labels-badges.scssc +0 -0
  179. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_layouts.scssc +0 -0
  180. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_mixins.scssc +0 -0
  181. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_modals.scssc +0 -0
  182. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_navbar.scssc +0 -0
  183. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_navs.scssc +0 -0
  184. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_pager.scssc +0 -0
  185. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_pagination.scssc +0 -0
  186. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_popovers.scssc +0 -0
  187. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_progress-bars.scssc +0 -0
  188. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_reset.scssc +0 -0
  189. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_scaffolding.scssc +0 -0
  190. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_tables.scssc +0 -0
  191. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_thumbnails.scssc +0 -0
  192. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_tooltip.scssc +0 -0
  193. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_type.scssc +0 -0
  194. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_utilities.scssc +0 -0
  195. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_variables.scssc +0 -0
  196. data/spec/dummy_app/tmp/cache/assets/test/sass/c996a898a33b80a44fab822802e73b6e409755d2/_wells.scssc +0 -0
  197. data/spec/dummy_app/tmp/cache/assets/test/sass/ebde8a6cd2923d8c583ca746dd952b4fe080c2a1/jquery-ui-1.8.7.custom.scssc +0 -0
  198. data/spec/dummy_app/tmp/cache/assets/test/sass/ec09962bad77c2bf0bbd3ac3d62b1dd18394a9fe/font-awesome.css.erbc +0 -0
  199. data/spec/dummy_app/tmp/cache/assets/test/sass/f7921645d55398fb6d7bdde41c5ade40f796381f/font-awesome.css.erbc +0 -0
  200. data/spec/dummy_app/tmp/cache/assets/test/sprockets/00ae35fb3e76e4dcfc92065c1befd671 +0 -0
  201. data/spec/dummy_app/tmp/cache/assets/test/sprockets/015c4267c4747404a3b95d3af4ed7ba9 +0 -0
  202. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0166686128d421b993db59eb5e22c92c +0 -0
  203. data/spec/dummy_app/tmp/cache/assets/test/sprockets/01692f22b535c2fe17699082a90945ba +0 -0
  204. data/spec/dummy_app/tmp/cache/assets/test/sprockets/021e87bfe65a024a849db3c621f39607 +0 -0
  205. data/spec/dummy_app/tmp/cache/assets/test/sprockets/02da6cc33425a1387089c6030cf514db +0 -0
  206. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0308928f3a84aaee3bd33e10fd9ccd1d +0 -0
  207. data/spec/dummy_app/tmp/cache/assets/test/sprockets/03c695c9019f09cbb02f63a7ae21d79f +0 -0
  208. data/spec/dummy_app/tmp/cache/assets/test/sprockets/04070d080fe78085ae4e679a8020abcc +0 -0
  209. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0413f1d9b666153a0ce541e06c51ff0b +0 -0
  210. data/spec/dummy_app/tmp/cache/assets/test/sprockets/04880af615c5763f7808495d1676565b +0 -0
  211. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{75c3e223b3986acf0bc6c669d16054b8 → 05862ba5b613377e5a6df431a1444ebc} +0 -0
  212. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0599094d22f449fecdbc1ae48e3d901e +0 -0
  213. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0843377cd450cc8688003ba317723fae +0 -0
  214. data/spec/dummy_app/tmp/cache/assets/test/sprockets/095e7d24e036c328ff8a353b062c075e +0 -0
  215. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{f1f9a7b96317af0df54445979f298b68 → 0998519d4dea6d53b48711059b8c0e0e} +0 -0
  216. data/spec/dummy_app/tmp/cache/assets/test/sprockets/09f8aac43754fe92352c1a0dac795897 +0 -0
  217. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0a4355e8cc379590a5aaf8542419d306 +0 -0
  218. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0ae5c9a0fc0ac395440fd4a9475ad717 +0 -0
  219. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0b35ad462ccf12ca91cff9c51164c5a0 +0 -0
  220. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0c78a1295e80206cd724fb0661c58ee4 +0 -0
  221. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0ed0d802514844bf10f8361f431c8cc8 +0 -0
  222. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0f04a8cf5d989e555542213f5b5db676 +0 -0
  223. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0f72b417ab87169150cd61260cc18f4e +0 -0
  224. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0fb0664e1d70f52ec933bc4787c91e67 +0 -0
  225. data/spec/dummy_app/tmp/cache/assets/test/sprockets/0ffeca7ef1e978455e97870052f9d1fd +0 -0
  226. data/spec/dummy_app/tmp/cache/assets/test/sprockets/113a903e4201411e20519f7637ffcb92 +0 -0
  227. data/spec/dummy_app/tmp/cache/assets/test/sprockets/11f4d136083919b98336de97c5a27364 +0 -0
  228. data/spec/dummy_app/tmp/cache/assets/test/sprockets/128dcffe5acb878aaf10cb69ede11e54 +0 -0
  229. data/spec/dummy_app/tmp/cache/assets/test/sprockets/12b2ef118f691f66646eac032f7535d3 +0 -0
  230. data/spec/dummy_app/tmp/cache/assets/test/sprockets/136f479ebd2eedeb83550b4a882538e5 +0 -0
  231. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1381657fbbc4cc175ae0406c8cbdd852 +0 -0
  232. data/spec/dummy_app/tmp/cache/assets/test/sprockets/138f18ee07be793f5e07dab566dcfa26 +0 -0
  233. data/spec/dummy_app/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  234. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1434abacf056a5e5d4d1ccccc1c4a74e +0 -0
  235. data/spec/dummy_app/tmp/cache/assets/test/sprockets/143fa89e22fd0f160912728242c12d20 +0 -0
  236. data/spec/dummy_app/tmp/cache/assets/test/sprockets/157c51a57ba6049be632334bb206c946 +0 -0
  237. data/spec/dummy_app/tmp/cache/assets/test/sprockets/169a02fa1fcf7a364d077ab82f84709c +0 -0
  238. data/spec/dummy_app/tmp/cache/assets/test/sprockets/174a5ce6774da56e0d025f915d2a5656 +0 -0
  239. data/spec/dummy_app/tmp/cache/assets/test/sprockets/17783a89d916d2a158fe86409f571b21 +0 -0
  240. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1b26b92ae53bdc1e9f8a5afa7b72b381 +0 -0
  241. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1ba877deec480c6cadfabd4b925945de +0 -0
  242. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1befe9a4bb03dc468cd7f5e7148a6a52 +0 -0
  243. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1c166333b9ae232ca3c43174ff7ed396 +0 -0
  244. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1d12409a91dcc8c8a4965c52a7f6b099 +0 -0
  245. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1db0d2a002e581a113a91a6e93e5d4e7 +0 -0
  246. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1e909aba91e1216beb4533895a4a6ffa +0 -0
  247. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1ef09ffd0e1376aabbac9def4652b166 +0 -0
  248. data/spec/dummy_app/tmp/cache/assets/test/sprockets/1f5b8b4cfa174205c509a237d9607ab3 +0 -0
  249. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2051323c87c06ef9fb769ff13afe1d46 +0 -0
  250. data/spec/dummy_app/tmp/cache/assets/test/sprockets/20586cabdf2b2cc8e4088db6f5030d6a +0 -0
  251. data/spec/dummy_app/tmp/cache/assets/test/sprockets/20967f4e0f44fccf2c2de06aad218647 +0 -0
  252. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2197e41c9dda6c82b109eaa0d5adaf2f +0 -0
  253. data/spec/dummy_app/tmp/cache/assets/test/sprockets/21af0c9472c74ff4307411a74eb52a08 +0 -0
  254. data/spec/dummy_app/tmp/cache/assets/test/sprockets/22003805d8abcf11f0649bff9cef6c35 +0 -0
  255. data/spec/dummy_app/tmp/cache/assets/test/sprockets/22b262696e264d2d84502479959ee62d +0 -0
  256. data/spec/dummy_app/tmp/cache/assets/test/sprockets/232be00ca912eb52d6fc11676eee2f52 +0 -0
  257. data/spec/dummy_app/tmp/cache/assets/test/sprockets/245b58f60816ff2e286784b47a8124a6 +0 -0
  258. data/spec/dummy_app/tmp/cache/assets/test/sprockets/24dcc2914999ebf715353482d3b22e51 +0 -0
  259. data/spec/dummy_app/tmp/cache/assets/test/sprockets/24df57fbd4ef4a5d613ab3360a611f9d +0 -0
  260. data/spec/dummy_app/tmp/cache/assets/test/sprockets/258500a191e37e7615b20a959fc30a2f +0 -0
  261. data/spec/dummy_app/tmp/cache/assets/test/sprockets/258dbc982e14f78732a377754ed23a4b +0 -0
  262. data/spec/dummy_app/tmp/cache/assets/test/sprockets/26489e402a71f43f962d6055e30787d0 +0 -0
  263. data/spec/dummy_app/tmp/cache/assets/test/sprockets/26495c65c6a62b71419149d7dd3b601b +0 -0
  264. data/spec/dummy_app/tmp/cache/assets/test/sprockets/276e2819a676347a7de259b70679adb8 +0 -0
  265. data/spec/dummy_app/tmp/cache/assets/test/sprockets/28c0c99cd6d41ead252f979cef74c6c5 +0 -0
  266. data/spec/dummy_app/tmp/cache/assets/test/sprockets/28d0efa20457b8a0f69ba33a6723206a +0 -0
  267. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2943f3fe07d2ae0184c2282647d5c50e +0 -0
  268. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2a421ff8fbf280e0d7323f26d2656144 +0 -0
  269. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2ab4ad958f77a3629fb62246f5604bce +0 -0
  270. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2b2ef7c0a1b34caa445ab3f962d18e30 +0 -0
  271. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2c6a364370b7c915f4da7e51f0a3ec92 +0 -0
  272. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2d69e41d82df0b55096aed4faa6f16c6 +0 -0
  273. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{59c191aebff69f4e76cb50860ff17df5 → 2e6ff32dfe2ff65d6adec026e0a6ba7b} +0 -0
  274. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2e8383214772b291c87934ed8a84b955 +0 -0
  275. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2e96c0383b32e1ec0746b08f3bea0c7b +0 -0
  276. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2ee141a6f583c9dd1eb541353955631f +0 -0
  277. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2f23e3869b68c4c9492f9497b288f6bb +0 -0
  278. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  279. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2f60f107ce85662c1588f521bb9e2c8b +0 -0
  280. data/spec/dummy_app/tmp/cache/assets/test/sprockets/30061ffe89ebc51d869d6b363b18a7cf +0 -0
  281. data/spec/dummy_app/tmp/cache/assets/test/sprockets/30539f6bae0581cb548f51ee6d9d5b9b +0 -0
  282. data/spec/dummy_app/tmp/cache/assets/test/sprockets/31bfcc7896d47062b682cb7305aa9052 +0 -0
  283. data/spec/dummy_app/tmp/cache/assets/test/sprockets/346057a4a317d5399f0faa78baf2be98 +0 -0
  284. data/spec/dummy_app/tmp/cache/assets/test/sprockets/34ac1a6bcf81e3f9139511c7be3dfed9 +0 -0
  285. data/spec/dummy_app/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  286. data/spec/dummy_app/tmp/cache/assets/test/sprockets/374aecf6aa1d05dd23ce4881c1bdd71b +0 -0
  287. data/spec/dummy_app/tmp/cache/assets/test/sprockets/375cc143f1184d76e6b3ff0dfb60187c +0 -0
  288. data/spec/dummy_app/tmp/cache/assets/test/sprockets/3822e66f2b147fd98f90c2330cb79d81 +0 -0
  289. data/spec/dummy_app/tmp/cache/assets/test/sprockets/382ebccfe8b6bce742f4a2bc0c109d0f +0 -0
  290. data/spec/dummy_app/tmp/cache/assets/test/sprockets/38ee84c26292e28a8c94e191c36f1dc7 +0 -0
  291. data/spec/dummy_app/tmp/cache/assets/test/sprockets/39792f57ea45373a09c7ac823905cb29 +0 -0
  292. data/spec/dummy_app/tmp/cache/assets/test/sprockets/3a3728ebf0994eb3f68ac9acf74c5904 +0 -0
  293. data/spec/dummy_app/tmp/cache/assets/test/sprockets/3a6a4e5299d2063b2dd6e980fa0551d5 +0 -0
  294. data/spec/dummy_app/tmp/cache/assets/test/sprockets/3aaf980536f44c31d1d0145ba8f1721d +0 -0
  295. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{1dd74057b76db8f42e06cbb888f14956 → 3b8bea378f0800ffa97cbbef49637930} +0 -0
  296. data/spec/dummy_app/tmp/cache/assets/test/sprockets/3ba808481868b8a56fdf9f106eeda367 +0 -0
  297. data/spec/dummy_app/tmp/cache/assets/test/sprockets/3c44e3b6e6c89b71c859ee6552fd8abb +0 -0
  298. data/spec/dummy_app/tmp/cache/assets/test/sprockets/3d3f42b0d4a9f7e4c8420cf6e443f4e7 +0 -0
  299. data/spec/dummy_app/tmp/cache/assets/test/sprockets/3da33dad56facac88295f24d4423f242 +0 -0
  300. data/spec/dummy_app/tmp/cache/assets/test/sprockets/412440cb48736db6d625f0ecb113344d +0 -0
  301. data/spec/dummy_app/tmp/cache/assets/test/sprockets/44ae887e2c6b3d621b42a98211455d3a +0 -0
  302. data/spec/dummy_app/tmp/cache/assets/test/sprockets/44e79847ae7bb5c853dbfefa452355f0 +0 -0
  303. data/spec/dummy_app/tmp/cache/assets/test/sprockets/4557193886d8770d362ce8103d320b9f +0 -0
  304. data/spec/dummy_app/tmp/cache/assets/test/sprockets/459777cb1d30f6467da8dd53d9841bee +0 -0
  305. data/spec/dummy_app/tmp/cache/assets/test/sprockets/460d342022e00bbd6edff25125a60ab1 +0 -0
  306. data/spec/dummy_app/tmp/cache/assets/test/sprockets/4644169a36118452c9ea7a515bc7160f +0 -0
  307. data/spec/dummy_app/tmp/cache/assets/test/sprockets/46842ce793ce3da43a6c21ef0c0e745e +0 -0
  308. data/spec/dummy_app/tmp/cache/assets/test/sprockets/4764b71e86b2ebfa988853e0ce3bb441 +0 -0
  309. data/spec/dummy_app/tmp/cache/assets/test/sprockets/4821eb4277ad6a0983c16630cd5806ae +0 -0
  310. data/spec/dummy_app/tmp/cache/assets/test/sprockets/485a6b0358511c73965a851ba5569014 +0 -0
  311. data/spec/dummy_app/tmp/cache/assets/test/sprockets/4863c57f6c9bbf8cf392ba250f7e8e99 +0 -0
  312. data/spec/dummy_app/tmp/cache/assets/test/sprockets/498ee0d8892d5d9be8a37030e3253e14 +0 -0
  313. data/spec/dummy_app/tmp/cache/assets/test/sprockets/498f25956085afc83e15c44ffb1170e6 +0 -0
  314. data/spec/dummy_app/tmp/cache/assets/test/sprockets/49ccc514fe103c24a38f100cecb21be9 +0 -0
  315. data/spec/dummy_app/tmp/cache/assets/test/sprockets/49de4f401551329c23b46284313de8d1 +0 -0
  316. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{d2acbd849a5e6d1809ac9e9639dbc893 → 4aa7a6b2e6385af9c34efd06888f7afc} +0 -0
  317. data/spec/dummy_app/tmp/cache/assets/test/sprockets/4f3e6b4e40b631d3d949509f32ea9bc3 +0 -0
  318. data/spec/dummy_app/tmp/cache/assets/test/sprockets/4fb06529e2126644ddf41924f5be2880 +0 -0
  319. data/spec/dummy_app/tmp/cache/assets/test/sprockets/4fb9ed3e87cc6cf7225f682d42d025f4 +0 -0
  320. data/spec/dummy_app/tmp/cache/assets/test/sprockets/4fbd3f63d231f5b25d1b8eb02ecdd150 +0 -0
  321. data/spec/dummy_app/tmp/cache/assets/test/sprockets/51173669b5ab5031ba6c9eff069b6ae7 +0 -0
  322. data/spec/dummy_app/tmp/cache/assets/test/sprockets/51549f1efd4de7db126ebdcd162a177a +0 -0
  323. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5159e29eea352859ecad8605385bc97e +0 -0
  324. data/spec/dummy_app/tmp/cache/assets/test/sprockets/529d621e1fb6b730d9d035b143e93f69 +0 -0
  325. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5395b275597f09db5cc276d8a35b1c9b +0 -0
  326. data/spec/dummy_app/tmp/cache/assets/test/sprockets/540da504e121104c4de8155ec685b4ea +0 -0
  327. data/spec/dummy_app/tmp/cache/assets/test/sprockets/55b24a753c1452383f987ea056096fc8 +0 -0
  328. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5770ffd20f31976fcc698399f91a9179 +0 -0
  329. data/spec/dummy_app/tmp/cache/assets/test/sprockets/57dc08580327982fc6a9e8c0a7f168ad +0 -0
  330. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5a0024fd5a8ae8322b07acc733c6caed +0 -0
  331. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5a6cbfd514173d817be78f9d005c5680 +0 -0
  332. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5a8fc55cb58b423142d530fc066dd3a4 +0 -0
  333. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5b1732a4f9d541544d84a04dda73e752 +0 -0
  334. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5c1e0096473e13c203c5c8dbba109f6c +0 -0
  335. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5c5e61c9d8ac4c42be0b790514fb65ee +0 -0
  336. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5c8e7da8dcddc72d152039cec5b173c9 +0 -0
  337. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5cb7d2cb1418d5831b0b61ca68d18a07 +0 -0
  338. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5d81d0c925da34024b39694ec5ece70b +0 -0
  339. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5de4f3048b6d83b2236bfbc041ad8f11 +0 -0
  340. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5e2c9668e1a6c05d64b5c7cd79ddd647 +0 -0
  341. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5e2e774a2e56e0db0d18d782bbcb9639 +0 -0
  342. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5e9526449d8415fba07fb15676ccea95 +0 -0
  343. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5eed513a4451dedcc36ec16c45745bd4 +0 -0
  344. data/spec/dummy_app/tmp/cache/assets/test/sprockets/5fab61053117e1d102e0a355e4b870d3 +0 -0
  345. data/spec/dummy_app/tmp/cache/assets/test/sprockets/61427d240e248bd24f0069df4e65c395 +0 -0
  346. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{98a0e68016b3c8f8000d991b1d5bc044 → 614dbbfdfff2cc183082d214c5992aae} +0 -0
  347. data/spec/dummy_app/tmp/cache/assets/test/sprockets/616efcc67bfabee52d03161477391fcd +0 -0
  348. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6198b9ce329fbce5b464acadbf0ac0a4 +0 -0
  349. data/spec/dummy_app/tmp/cache/assets/test/sprockets/638b254892f40165bda0c1ee6f62a6d6 +0 -0
  350. data/spec/dummy_app/tmp/cache/assets/test/sprockets/63ff3018e663064066c3dae6658c36fc +0 -0
  351. data/spec/dummy_app/tmp/cache/assets/test/sprockets/64277385d99fc22b7ff9fa9cacc0dc93 +0 -0
  352. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{07f7c76677c34256252f23976ce6c2a1 → 649faf00c3ed8d416801145491fe05a7} +0 -0
  353. data/spec/dummy_app/tmp/cache/assets/test/sprockets/660d820d7f5e69fe59c0a7f01aaef8c6 +0 -0
  354. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6630fd4249b703085bdc4ec49fdbe1ac +0 -0
  355. data/spec/dummy_app/tmp/cache/assets/test/sprockets/66c9b69b948666df4d011498e6631eed +0 -0
  356. data/spec/dummy_app/tmp/cache/assets/test/sprockets/672892e6983bdb28969d20d688b445c3 +0 -0
  357. data/spec/dummy_app/tmp/cache/assets/test/sprockets/68bff8bd92da88d73b5006836454b64a +0 -0
  358. data/spec/dummy_app/tmp/cache/assets/test/sprockets/692919ee84691ede02c411d77b03b795 +0 -0
  359. data/spec/dummy_app/tmp/cache/assets/test/sprockets/696be962f98b08b9fee127ddd7e99903 +0 -0
  360. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6983eaa0179424c5a469abec763c7433 +0 -0
  361. data/spec/dummy_app/tmp/cache/assets/test/sprockets/69d2c687f9659c7d6fb668bddb032834 +0 -0
  362. data/spec/dummy_app/tmp/cache/assets/test/sprockets/69f59cfc7f92e5d7ebf02df73928083b +0 -0
  363. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6a09089b5590cbb5dbccba9199b1aa0e +0 -0
  364. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6b3e9ff481b3a040acb4e1ea61e4c8fc +0 -0
  365. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6bd55d53bef2f0dd81671f0f02f7d3ed +0 -0
  366. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6d278334e72b135765a41e991bec0500 +0 -0
  367. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6e2e2c829c91d3d0c079771ed77e6654 +0 -0
  368. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6eff33b3b8fa010e960659ed61b250e6 +0 -0
  369. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{a50199939a6040343c5487c1dde55260 → 6f38449bda5916528446fdd7460a0fa5} +0 -0
  370. data/spec/dummy_app/tmp/cache/assets/test/sprockets/70b145271cbc457a0b6fd0c63af2983f +0 -0
  371. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{ce027086e6de68f182037504b6227485 → 70cf8fc0dff29538ab01a076ef1e1602} +0 -0
  372. data/spec/dummy_app/tmp/cache/assets/test/sprockets/714f390b93b33846a6c8358e3fb0555e +0 -0
  373. data/spec/dummy_app/tmp/cache/assets/test/sprockets/729b76b484c9c4df3af759a93635b21d +0 -0
  374. data/spec/dummy_app/tmp/cache/assets/test/sprockets/72d8ec2796504cc9604b01118b806cd8 +0 -0
  375. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{9f6c080a6bd27db284fbb211f3f44a6c → 730290c97ee6040a6a6398ed4452740a} +0 -0
  376. data/spec/dummy_app/tmp/cache/assets/test/sprockets/73534d2cbbfc83426629feb23debaa17 +0 -0
  377. data/spec/dummy_app/tmp/cache/assets/test/sprockets/73a9445ff80fc2f9ac696e9e74eaec01 +0 -0
  378. data/spec/dummy_app/tmp/cache/assets/test/sprockets/73f41636108e88974107e84d4d50801d +0 -0
  379. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{1252be603446e6064e85dae1533eaa59 → 73fab6793a6d0af328b82f18edab4988} +0 -0
  380. data/spec/dummy_app/tmp/cache/assets/test/sprockets/743e275172178779f8b1f7fbe08dd5ea +0 -0
  381. data/spec/dummy_app/tmp/cache/assets/test/sprockets/744fe8ec577f4cabbcbd3ff6f7bd27c0 +0 -0
  382. data/spec/dummy_app/tmp/cache/assets/test/sprockets/74b195601a5c6c8bf93e5e7e9e6da12b +0 -0
  383. data/spec/dummy_app/tmp/cache/assets/test/sprockets/75ed3fc3c431fc2154cdd1f760f3210e +0 -0
  384. data/spec/dummy_app/tmp/cache/assets/test/sprockets/75f716413cdabd240c8b85adc42ddad9 +0 -0
  385. data/spec/dummy_app/tmp/cache/assets/test/sprockets/765f5f6688d06f395a7a37045be388a4 +0 -0
  386. data/spec/dummy_app/tmp/cache/assets/test/sprockets/76ad6e6a33c5e4ea0b16c942e0d72255 +0 -0
  387. data/spec/dummy_app/tmp/cache/assets/test/sprockets/76b2d2bfd1e2a7f15cc7df19937ceeac +0 -0
  388. data/spec/dummy_app/tmp/cache/assets/test/sprockets/76c588a87498d0a7b9c4b93f78c47965 +0 -0
  389. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7741691076a9f393f20d291004464ac0 +0 -0
  390. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7795054eed96c541e38536fa029a42ad +0 -0
  391. data/spec/dummy_app/tmp/cache/assets/test/sprockets/77a4a5a208b8121488fd9ef247d67813 +0 -0
  392. data/spec/dummy_app/tmp/cache/assets/test/sprockets/785ad3ea421e6a5227ad573a68eb210e +0 -0
  393. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7a9b30ad67a8c153e95d638e962bf463 +0 -0
  394. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7aa93b56c89c66301f9154d27ea9014f +0 -0
  395. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7be36e83efedfb86b40e05e2c2e9cacf +0 -0
  396. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7c02cc65b0df8a7bc8055290778ba086 +0 -0
  397. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7c081ddde599ff1c2e0006defac49285 +0 -0
  398. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7cdc6c900920406a2262f6fa90478557 +0 -0
  399. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7e8403b88ae5942660a9084a8bce0acd +0 -0
  400. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7ec629ff58b2d1e0dfe7f8c56f2fc5d7 +0 -0
  401. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7ef92f534d8e2b3abde760d1813145d9 +0 -0
  402. data/spec/dummy_app/tmp/cache/assets/test/sprockets/7f5f2d823155f3f1da616e146d540dc1 +0 -0
  403. data/spec/dummy_app/tmp/cache/assets/test/sprockets/8058817bc16ca329402b15240acf79b2 +0 -0
  404. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{b12de6d4d7f222f76b111c25f5dab178 → 805aede541fd4b2ff98b78c73ac45612} +0 -0
  405. data/spec/dummy_app/tmp/cache/assets/test/sprockets/8247d046e32edac8666e98493bbe884f +0 -0
  406. data/spec/dummy_app/tmp/cache/assets/test/sprockets/82d50803717341c893f612a86d9a1400 +0 -0
  407. data/spec/dummy_app/tmp/cache/assets/test/sprockets/840324d228205039aaaafc391c208430 +0 -0
  408. data/spec/dummy_app/tmp/cache/assets/test/sprockets/842328de502c909f498ccca706cd47dc +0 -0
  409. data/spec/dummy_app/tmp/cache/assets/test/sprockets/8626144fc98fb2a6c7ede9bf55f84cac +0 -0
  410. data/spec/dummy_app/tmp/cache/assets/test/sprockets/86f2644ede0f2eb4d2f02e5556ea5b6d +0 -0
  411. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{dee3a9569b9ee7368f88a014ba475c3a → 882c0605bba4a8c4455047e15102045f} +0 -0
  412. data/spec/dummy_app/tmp/cache/assets/test/sprockets/88552764a8f5c9748bcdfff675cc6ab4 +0 -0
  413. data/spec/dummy_app/tmp/cache/assets/test/sprockets/8864a718fb2c0b6c297e9efbd210e1f5 +0 -0
  414. data/spec/dummy_app/tmp/cache/assets/test/sprockets/88f2fbf474d52591035c94b07b696ff9 +0 -0
  415. data/spec/dummy_app/tmp/cache/assets/test/sprockets/898f5214bcdb21409c81c8aade73b535 +0 -0
  416. data/spec/dummy_app/tmp/cache/assets/test/sprockets/89f2e68d30d713d25066b4f5b838bbb4 +0 -0
  417. data/spec/dummy_app/tmp/cache/assets/test/sprockets/8f5d6d8fba731caff3f9e84487876612 +0 -0
  418. data/spec/dummy_app/tmp/cache/assets/test/sprockets/8f80a402a5bcbcec9e20ee0e02c86edf +0 -0
  419. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9011102569db38052e6353455fac950e +0 -0
  420. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9033f86e71fff2fac71d31cd5ca811e4 +0 -0
  421. data/spec/dummy_app/tmp/cache/assets/test/sprockets/91c2a4d8729e7c56e56029d18edb1176 +0 -0
  422. data/spec/dummy_app/tmp/cache/assets/test/sprockets/920f17a87bb2678c28568f5e686a4cf1 +0 -0
  423. data/spec/dummy_app/tmp/cache/assets/test/sprockets/925c3596709eb590d786f15a3cf817bb +0 -0
  424. data/spec/dummy_app/tmp/cache/assets/test/sprockets/957deb3b1ccd4757b8ffcb52b992c1da +0 -0
  425. data/spec/dummy_app/tmp/cache/assets/test/sprockets/96496cb0b704ef48218ac2097d541663 +0 -0
  426. data/spec/dummy_app/tmp/cache/assets/test/sprockets/969c58767a7de67e78f9ea69195183d9 +0 -0
  427. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9719bf547e5342b131978d98efc63568 +0 -0
  428. data/spec/dummy_app/tmp/cache/assets/test/sprockets/98c978063ce9eca4f00d35e8ee8ccccb +0 -0
  429. data/spec/dummy_app/tmp/cache/assets/test/sprockets/98fc2d4e0e715a67244d1a52b6bdeae0 +0 -0
  430. data/spec/dummy_app/tmp/cache/assets/test/sprockets/99e5beb37b7130f59a12936b6b763447 +0 -0
  431. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9ad9a36052fd8184d3634f8edbf52a68 +0 -0
  432. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9b9810623fa8a8a92e55d065f93340ee +0 -0
  433. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9ba5c2b7b2f656550a0deffc19472e39 +0 -0
  434. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9c834e292807614b87fc885949cb12d5 +0 -0
  435. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9dab4fa8ba5260be660ee06b90e3e847 +0 -0
  436. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9e7fdec02fec6df1b4306cbb7a8679f2 +0 -0
  437. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9f60a2e19502e0f9ad7ccffa2da50342 +0 -0
  438. data/spec/dummy_app/tmp/cache/assets/test/sprockets/9fb546f0f37deda2fdcfd48930de0f69 +0 -0
  439. data/spec/dummy_app/tmp/cache/assets/test/sprockets/a03d8b8153d1a1abc2abf53568d4dad0 +0 -0
  440. data/spec/dummy_app/tmp/cache/assets/test/sprockets/a0bdc79935fc14ace4c5366e1ba7d527 +0 -0
  441. data/spec/dummy_app/tmp/cache/assets/test/sprockets/a175b3873092b6d0e8c2058aeed59404 +0 -0
  442. data/spec/dummy_app/tmp/cache/assets/test/sprockets/a1f2411c0e3e9a52183b5f0c96fa84c8 +0 -0
  443. data/spec/dummy_app/tmp/cache/assets/test/sprockets/a41cd406b752008bf3aaeb365d9d5e8b +0 -0
  444. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{b0b910efc00aa49d187637e761ea0654 → a497141a7b5409739452f2803b17a036} +0 -0
  445. data/spec/dummy_app/tmp/cache/assets/test/sprockets/a70e63d06a6899f97de5cf676b2c395c +0 -0
  446. data/spec/dummy_app/tmp/cache/assets/test/sprockets/a7db5e4584f4df99c45f12e866a0fdda +0 -0
  447. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{6f70cf17d6c5ba22b8afddd7d39c4d70 → a80063da16da646d195dc0b27473ed04} +0 -0
  448. data/spec/dummy_app/tmp/cache/assets/test/sprockets/a913e45c92de2c4401d8e2fac7fa8631 +0 -0
  449. data/spec/dummy_app/tmp/cache/assets/test/sprockets/a9725cf6fc3c3938c609821bc9d44e75 +0 -0
  450. data/spec/dummy_app/tmp/cache/assets/test/sprockets/aa87eff56d455dae33b13bb129cd4d3f +0 -0
  451. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ab05e2ed0d6875cf693516c7e7781cf7 +0 -0
  452. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ad452a261b3fc90b3aca85ffc630817d +0 -0
  453. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ad8d00f917f34deedc718eb3ca3c7e4b +0 -0
  454. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{d024b2e0207c1a894ac2fc0c0e002033 → b0554c2dbf422a9b1ae1ecbcda863c84} +0 -0
  455. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b1b02c2fe88268d3d00709aeca4c2eb5 +0 -0
  456. data/spec/dummy_app/tmp/{dragonfly/cache/body/6f/58795de38055147320844c9fa5ff32e0aa123e → cache/assets/test/sprockets/b1b5c83a14fd8b2081cbb32dd26021c4} +0 -0
  457. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b1d340312b1b800c7c5e652e1db6c9cc +0 -0
  458. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b1f49e09b0df0a360d041969f76da859 +0 -0
  459. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b28d250e1b2b734789e45611fef58b51 +0 -0
  460. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b31203d66a43ee74d976dc763f42f38a +0 -0
  461. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b3bba6abd427c4ed048d92d3310b0db3 +0 -0
  462. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b68666c0d1bd7d3d06bacd7767043149 +0 -0
  463. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b7ffc32371aea730fc8e27be3be8e633 +0 -0
  464. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b82696d97bda7df1d71f90b91abbbb80 +0 -0
  465. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b8e717c8deb6edc80a7a690369d13d35 +0 -0
  466. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b944bc4b0799f7954005e8b1a5336687 +0 -0
  467. data/spec/dummy_app/tmp/cache/assets/test/sprockets/b95121cacfdf3b3cd1197526fbc6c098 +0 -0
  468. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ba4f88faafacc90d28bc5a92032f2608 +0 -0
  469. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bab598b96111d2c4545459320f65853b +0 -0
  470. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{318296efd3e38c26a302d99d1638e4ad → bac4b9227e8bb084894d38c4de8a0b85} +0 -0
  471. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bad6153e41681471c036105dd23d0241 +0 -0
  472. data/spec/dummy_app/tmp/cache/assets/test/sprockets/baf1f20ee8ed55082855f5ecfbb9db4e +0 -0
  473. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bb23b96bcde2f3333d85eff389f287f8 +0 -0
  474. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bb2bc7acd86cbf95e1ca5d978aa3b407 +0 -0
  475. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bbc9f2cbbd599b8b17e585cd2ebfc9a2 +0 -0
  476. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bbfc33e700f54452a18b23a687bb0eb4 +0 -0
  477. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bca79d56857658218b1c52909032691b +0 -0
  478. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bdf7522b02a504ccefa93b613ede60c2 +0 -0
  479. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bdf867751d648676e25e36a9435e6b26 +0 -0
  480. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bf1fd5d742a16de894278017732d1b2c +0 -0
  481. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c1750767ebbe059bea8bd4bbb76fa1da +0 -0
  482. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c1bbc7c7493a2006f9116a79be4aad50 +0 -0
  483. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c215d2b1f6fc3322a7984c8a9d3c8251 +0 -0
  484. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c242b461c1c4aa60e2dfa5486dc9a1a8 +0 -0
  485. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c2f1cee7fb8eb8492c4084ce00dc53b6 +0 -0
  486. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c3381e393b50c9df2f8b97e4634b1349 +0 -0
  487. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c402e3bddd9e25c23e52df17c8bb42a3 +0 -0
  488. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c53a5fc1810ee9b6c3c933fd5590228e +0 -0
  489. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{ebf2567e766b39401f690380a2d00e66 → c571afabb6614fc6d00cdb1ede5e9cdf} +0 -0
  490. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c61f7caef6bb75b1c15bde82e7cbbee2 +0 -0
  491. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c7222887ab4570345607228eed54b7c4 +0 -0
  492. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c75042fd24b11c42bda9809e473817b7 +0 -0
  493. data/spec/dummy_app/tmp/cache/assets/test/sprockets/c801ebd7cabbdbe237c427692b2f6017 +0 -0
  494. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{89fe3f3e75d5eb4ecb1b836fd792990d → c8eda54f905c903e1e6e02455745ebe1} +0 -0
  495. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ca94c513d519f7e445bac88f9e54a029 +0 -0
  496. data/spec/dummy_app/tmp/cache/assets/test/sprockets/cb1a9d6c11a7eb5430d3c79838a53eb1 +0 -0
  497. data/spec/dummy_app/tmp/cache/assets/test/sprockets/cb1d6fcc9bad898327636cf414f73b57 +0 -0
  498. data/spec/dummy_app/tmp/cache/assets/test/sprockets/cb1df5afcb1fddd92ec4d8607a53864d +0 -0
  499. data/spec/dummy_app/tmp/cache/assets/test/sprockets/cce42e6362d03488930d9826725621b2 +0 -0
  500. data/spec/dummy_app/tmp/cache/assets/test/sprockets/cd7e7b7526b60654a4b24a5421f74e99 +0 -0
  501. data/spec/dummy_app/tmp/cache/assets/test/sprockets/cd8be896a3bf8f11cc61e0fb6b90eb80 +0 -0
  502. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{8644f94b9a1a902153cd97473ce23266 → cdaabef6a28054fa59175f1d68f7f7c4} +0 -0
  503. data/spec/dummy_app/tmp/cache/assets/test/sprockets/cde5d358d89af1813033adcf5abdc012 +0 -0
  504. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{62313843f7d1e2195eca82386ddbafc4 → ce960f7862e687ce56fca345023588ea} +0 -0
  505. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ce9ba680277b6a7f2f6c65c077e83384 +0 -0
  506. data/spec/dummy_app/tmp/cache/assets/test/sprockets/cf435b3d4a48bc16f5cc1db8f7049596 +0 -0
  507. data/spec/dummy_app/tmp/cache/assets/test/sprockets/cfbf539c567a96e9093d9ffbe0091ad0 +0 -0
  508. data/spec/dummy_app/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  509. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d176e8aa20803729e0406ed23696b262 +0 -0
  510. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d1b6047944a0a6e232951727bba44560 +0 -0
  511. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d1c2c3a2df8517e019edf30db44566b4 +0 -0
  512. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{1e7b3532f20949a13b8b69d2dddc559a → d201f55e9eceb64707637fc80bc85bc5} +0 -0
  513. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d35f06fe57bd03bea2483b5398b2c6f8 +0 -0
  514. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d3e77ae2b265a7b6a4e6619ae888c02f +0 -0
  515. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d42b17ebcbc4faf78e3193e9c3491c4e +0 -0
  516. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d43f3b9f17586aa28c6097e3be02822f +0 -0
  517. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d49589c905cc653514e4bd896a411fa7 +0 -0
  518. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d4a49843caf12d9a6dc764014f42b895 +0 -0
  519. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d4d934ea7bb7519042bc79deb3028314 +0 -0
  520. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d4de3cd17da73d9e0d3c4ff1142385c3 +0 -0
  521. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d4e4ebef5c7337c61bee8cc343e473d4 +0 -0
  522. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d5150138d2eedf2573c71dbd75180e2a +0 -0
  523. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d533eddb21cd722c5216bc0bb88f1c6d +0 -0
  524. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d6205326f914ac8b2f61b0fefad24ef1 +0 -0
  525. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d6f728ad403bb66d90658ad0c14c025e +0 -0
  526. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  527. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d778ac3298efe5fc7d13405e66041015 +0 -0
  528. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d79f4cb89c0bf1ea5e42bfda6e6b27c5 +0 -0
  529. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d88413426d9094f78b2e6e5c080a5c7c +0 -0
  530. data/spec/dummy_app/tmp/cache/assets/test/sprockets/d917eb39b30dcf6725854039c98a5012 +0 -0
  531. data/spec/dummy_app/tmp/cache/assets/test/sprockets/dbeda8fff4e9b5084fd1bc79a0f220d0 +0 -0
  532. data/spec/dummy_app/tmp/cache/assets/test/sprockets/de1a47afa53c502369479e8dbbfebd9b +0 -0
  533. data/spec/dummy_app/tmp/cache/assets/test/sprockets/e1309c718c63004add03fd7c472ec5c1 +0 -0
  534. data/spec/dummy_app/tmp/cache/assets/test/sprockets/e1bba75ba340cdef270c20efd6f983ac +0 -0
  535. data/spec/dummy_app/tmp/cache/assets/test/sprockets/e3e93c085f3fc84da01f92b8d61981ae +0 -0
  536. data/spec/dummy_app/tmp/cache/assets/test/sprockets/e43b6fc5e743fc33b6ec77b00fc1c916 +0 -0
  537. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{06065efe9216af455ca5ae63b780842a → e5c209e40d853225b32e5a1299d12a2b} +0 -0
  538. data/spec/dummy_app/tmp/cache/assets/test/sprockets/e613b18c9e1811582dc0aeaf095e56ae +0 -0
  539. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{c87758b6b5f54876dccc4562ebd59a43 → e63e548f458d2fd51567e6af5015a38a} +0 -0
  540. data/spec/dummy_app/tmp/cache/assets/test/sprockets/e647f039e5c667d1ca130f914fb70624 +0 -0
  541. data/spec/dummy_app/tmp/cache/assets/test/sprockets/e69a4b84ef07dbc0ac277803d272a6fa +0 -0
  542. data/spec/dummy_app/tmp/cache/assets/test/sprockets/e99b44e4a998d74f30e5d9e7d8341d8f +0 -0
  543. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ebfa68a11720cead541bcbfbca4f963c +0 -0
  544. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ec6a90e298605bce56e3e47e1c4a6d5c +0 -0
  545. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ec99299f858e97986ac4ba883d94826c +0 -0
  546. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ecddf8ef16cc19c9634433c4f5dcc256 +0 -0
  547. data/spec/dummy_app/tmp/cache/assets/test/sprockets/eefb724057cd7d3f1e6fee605910718d +0 -0
  548. data/spec/dummy_app/tmp/cache/assets/test/sprockets/ef41f276ef9b69b0d57e4566493cc15d +0 -0
  549. data/spec/dummy_app/tmp/cache/assets/test/sprockets/efba5ca5522c353d79d1b624f22179c1 +0 -0
  550. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f19240ed3a4cea9baf3cb3f3e4e0da56 +0 -0
  551. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f304c66c0c0e65597b8a53e4b9883357 +0 -0
  552. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f342ebdd61bbcd9b91b4d09aac84b7e6 +0 -0
  553. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f37153d14eee1485b7d6bb7bd5196af6 +0 -0
  554. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f386bc0d31bc15498eaff65440bf1ead +0 -0
  555. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f4cd463b22e18a328fa7c6a4b798df13 +0 -0
  556. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f4f596c9ba337be0d71e4ef01d05e45c +0 -0
  557. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f7af87fdbb1776c2a009c7b09295119b +0 -0
  558. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  559. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f8d79539ba48d44d737f7ca1295354f7 +0 -0
  560. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f9af64b7976ccc4a6ac9bce2ebfa6f69 +0 -0
  561. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f9c5ba74fe115f3df3d44c5604956fd5 +0 -0
  562. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f9c9bd4d84f1951260e50180fa8ae0d2 +0 -0
  563. data/spec/dummy_app/tmp/cache/assets/test/sprockets/fa538addbcf30ec35126541928399861 +0 -0
  564. data/spec/dummy_app/tmp/cache/assets/test/sprockets/fa6cff1eeaad0d65a825b3ebd3045070 +0 -0
  565. data/spec/dummy_app/tmp/cache/assets/test/sprockets/fb0757f81f5726edb2a3fecb73c190ac +0 -0
  566. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{e72ab273009021b9a7b5770457a9d13b → fbf474d4ab15cae1e4280e5c1cef67af} +0 -0
  567. data/spec/dummy_app/tmp/cache/assets/test/sprockets/fc19d3fdc1666a551faf53916eb221f2 +0 -0
  568. data/spec/dummy_app/tmp/cache/assets/test/sprockets/fe334a948fd2e5baccfa25d2c4abffc4 +0 -0
  569. data/spec/dummy_app/tmp/cache/assets/test/sprockets/{917c85b2a002bf08c90f4509aba5b538 → fe7b02dfb0855ad306729a9e96edc423} +0 -0
  570. data/spec/dummy_app/tmp/cache/assets/test/sprockets/fead2dec6a8d5e520cd797810ef316bd +0 -0
  571. data/spec/dummy_app/tmp/cache/assets/test/sprockets/fecf74b07833b7ffb7c32f9398520243 +0 -0
  572. data/spec/dummy_app/tmp/dragonfly/cache/body/20/4b9c4f1d960805e206c28eac62367b6970f63b +24278 -0
  573. data/spec/dummy_app/tmp/dragonfly/cache/meta/03/46a517af1f9da4d5ab5ecdc312f7bbdf803328 +0 -0
  574. data/spec/dummy_app/tmp/dragonfly/cache/meta/0b/7b000914e059c02d6e21f12a35ecb3ff9ae01b +0 -0
  575. data/spec/dummy_app/tmp/dragonfly/cache/meta/11/22cd996e03d804742cad93912d6319d3520dfd +0 -0
  576. data/spec/dummy_app/tmp/dragonfly/cache/meta/11/880f2877b0e1b4c70daf50c5aa0aa3666f6653 +0 -0
  577. data/spec/dummy_app/tmp/dragonfly/cache/meta/30/31bcb90200393057d9b6b2d0d211399e3c89f6 +0 -0
  578. data/spec/dummy_app/tmp/dragonfly/cache/meta/30/9530b688b9a820167a8eab75ff6878982701ec +0 -0
  579. data/spec/dummy_app/tmp/dragonfly/cache/meta/32/ecfaa88631a69c18caa248cb7a2bf1bd721313 +0 -0
  580. data/spec/dummy_app/tmp/dragonfly/cache/meta/3c/3c088ed5e02fbd49eefd0648b614bf4aa03b20 +0 -0
  581. data/spec/dummy_app/tmp/dragonfly/cache/meta/3e/7e26a0c0f3983c092bb4cef0fe1bc766c980b5 +0 -0
  582. data/spec/dummy_app/tmp/dragonfly/cache/meta/4f/22333c6c1ab4c55349d615a0bf9ea684345a90 +0 -0
  583. data/spec/dummy_app/tmp/dragonfly/cache/meta/51/33c2af3f2de67f09ae4f1f8dc2a75ae660a99f +0 -0
  584. data/spec/dummy_app/tmp/dragonfly/cache/meta/52/1fbd131e1ccf6211b192df89d4a7b153f463d2 +0 -0
  585. data/spec/dummy_app/tmp/dragonfly/cache/meta/62/a0f5508d30a66f5d0258171c25db6f46ba7bb2 +0 -0
  586. data/spec/dummy_app/tmp/dragonfly/cache/meta/65/461e5f8a83ac5c614b42e26d9c481894031b8f +0 -0
  587. data/spec/dummy_app/tmp/dragonfly/cache/meta/65/ac021c48e98c3cdf957a3ecffe6f9ad1ae1cae +0 -0
  588. data/spec/dummy_app/tmp/dragonfly/cache/meta/68/75c5509d9768f62c6b6e360ec7eabb64cd7855 +0 -0
  589. data/spec/dummy_app/tmp/dragonfly/cache/meta/8c/d44b597ddd976aa8181d789dc47ee5db9f0fd7 +0 -0
  590. data/spec/dummy_app/tmp/dragonfly/cache/meta/8d/b0f3acf9f0a7d9a9cd850595f465375ef06a5c +0 -0
  591. data/spec/dummy_app/tmp/dragonfly/cache/meta/a1/074d3bc524a272210e9e449bf84ce007fe8c73 +0 -0
  592. data/spec/dummy_app/tmp/dragonfly/cache/meta/ab/fd99041561b1636546886bc1a595c3a61bf350 +0 -0
  593. data/spec/dummy_app/tmp/dragonfly/cache/meta/b1/53315ead6fb969ab09398b850701c634e52ccc +0 -0
  594. data/spec/dummy_app/tmp/dragonfly/cache/meta/b5/5236f82fba8f5a73785aa3d3e01fccb26a7502 +0 -0
  595. data/spec/dummy_app/tmp/dragonfly/cache/meta/b9/42133d3e272453cdcf49459f50afeeb3e98b4f +0 -0
  596. data/spec/dummy_app/tmp/dragonfly/cache/meta/c5/df5cbe5c5780161cf5a127f01e93be8172aaad +0 -0
  597. data/spec/dummy_app/tmp/dragonfly/cache/meta/cd/0dece1b5ce871875b9f7b3b8abfb3d9e832b36 +0 -0
  598. data/spec/dummy_app/tmp/dragonfly/cache/meta/cd/fb07824ede86a22c00870a8911ebfb05fbe0af +0 -0
  599. data/spec/dummy_app/tmp/dragonfly/cache/meta/ce/5294eef31c9c1729ab785f4ac1136fe07f6357 +0 -0
  600. data/spec/dummy_app/tmp/dragonfly/cache/meta/cf/3f2a6e2ad002c2a6b4fec909e88d522f34e9f5 +0 -0
  601. data/spec/dummy_app/tmp/dragonfly/cache/meta/d3/288fa5fb88ad4d6e0f26054354c33c6c4070d9 +0 -0
  602. data/spec/dummy_app/tmp/dragonfly/cache/meta/d3/a4c250743bcd2b6389d672dbfdf9c1c11d8646 +0 -0
  603. data/spec/dummy_app/tmp/dragonfly/cache/meta/d5/73ec5f656166b8dda0355f1eecc70ad5bb6bd2 +0 -0
  604. data/spec/dummy_app/tmp/dragonfly/cache/meta/db/333d1e7697981dfab527e5c9efcfe8f517acfb +0 -0
  605. data/spec/dummy_app/tmp/dragonfly/cache/meta/e1/bbc82f98d8047a8c55619dd44816bffe9d465f +0 -0
  606. data/spec/dummy_app/tmp/dragonfly/cache/meta/e2/ddc6171d1bcc3c87560f0f7ef0d64cd9dad3ae +0 -0
  607. data/spec/dummy_app/tmp/dragonfly/cache/meta/e2/eb10eeab8e75279f889c6ef1602f6be736da85 +0 -0
  608. data/spec/dummy_app/tmp/dragonfly/cache/meta/ed/b6f8ea55a628300f0a19fb18ee6a83ad950592 +0 -0
  609. data/spec/dummy_app/tmp/dragonfly/cache/meta/ef/ae05d9ee219dc83d9f1a7ead2351938ef628ea +0 -0
  610. data/spec/dummy_app/tmp/dragonfly/cache/meta/f2/86c95220485805e5113b0fdbd621cfa5f44cd9 +0 -0
  611. data/spec/dummy_app/tmp/dragonfly/cache/meta/f3/c5de7d6bae68fa2a36ab7567597fbdaca6aecf +0 -0
  612. data/spec/dummy_app/tmp/dragonfly/cache/meta/f9/466586eb1cc6e94f410e6c57149d3925c9662a +0 -0
  613. data/spec/dummy_app/tmp/generator/config/initializers/rails_admin.rb +34 -0
  614. data/spec/factories.rb +1 -1
  615. data/spec/helpers/rails_admin/form_builder_spec.rb +21 -1
  616. data/spec/integration/basic/bulk_destroy/rails_admin_basic_bulk_destroy_spec.rb +2 -2
  617. data/spec/integration/basic/edit/rails_admin_basic_edit_spec.rb +2 -2
  618. data/spec/integration/basic/export/rails_admin_basic_export_spec.rb +1 -1
  619. data/spec/integration/basic/list/rails_admin_basic_list_spec.rb +2 -2
  620. data/spec/integration/basic/update/rails_admin_basic_update_spec.rb +2 -2
  621. data/spec/integration/config/edit/rails_admin_config_edit_spec.rb +15 -15
  622. data/spec/rails_admin/adapters/active_record/association_spec.rb +153 -0
  623. data/spec/rails_admin/adapters/active_record/property_spec.rb +28 -0
  624. data/spec/rails_admin/adapters/active_record_spec.rb +40 -163
  625. data/spec/rails_admin/adapters/mongoid/association_spec.rb +278 -0
  626. data/spec/rails_admin/adapters/mongoid/property_spec.rb +220 -0
  627. data/spec/rails_admin/adapters/mongoid_spec.rb +10 -435
  628. data/spec/rails_admin/config/actions/base_spec.rb +6 -6
  629. data/spec/rails_admin/config/actions_spec.rb +4 -4
  630. data/spec/rails_admin/config/fields/base_spec.rb +4 -4
  631. data/spec/rails_admin/config/fields/file_upload_spec.rb +3 -3
  632. data/spec/rails_admin/config/fields/types/json_spec.rb +24 -0
  633. data/spec/rails_admin/config_spec.rb +7 -7
  634. data/spec/rails_admin/install_generator_spec.rb +28 -0
  635. data/spec/spec_helper.rb +1 -1
  636. metadata +722 -130
  637. checksums.yaml.gz.sig +0 -0
  638. data.tar.gz.sig +0 -0
  639. data/lib/rails_admin/version.rbc +0 -582
  640. data/spec/dummy_app/Gemfile.lock +0 -451
  641. data/spec/dummy_app/db/development.sqlite3 +0 -0
  642. data/spec/dummy_app/db/schema.rb +0 -197
  643. data/spec/dummy_app/tmp/cache/assets/test/sprockets/161f8f439887fb5926b02a917b2fab29 +0 -0
  644. data/spec/dummy_app/tmp/cache/assets/test/sprockets/2894746ab7d895286c1b09e42fc94281 +0 -0
  645. data/spec/dummy_app/tmp/cache/assets/test/sprockets/4ffa898a34dcdcfb92898d913da3f720 +0 -0
  646. data/spec/dummy_app/tmp/cache/assets/test/sprockets/54c3d5d9311b5d421c51b5d473de5b05 +0 -0
  647. data/spec/dummy_app/tmp/cache/assets/test/sprockets/582efaa561d6a724a7cd82b2023e8e29 +0 -0
  648. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6ab99dcd31d6d0380c0df7baa42a2b18 +0 -0
  649. data/spec/dummy_app/tmp/cache/assets/test/sprockets/6ce0b5fdde88a0e3ff318a0c2726d46f +0 -0
  650. data/spec/dummy_app/tmp/cache/assets/test/sprockets/984e0e653074756d5c241ac3597b68d8 +0 -0
  651. data/spec/dummy_app/tmp/cache/assets/test/sprockets/a80f3bf6075735abb8874bf40ca7a4cd +0 -0
  652. data/spec/dummy_app/tmp/cache/assets/test/sprockets/bffa7d2c518d584c3f1ba8b9e11cf745 +0 -0
  653. data/spec/dummy_app/tmp/cache/assets/test/sprockets/e5ce6cd41375d04320a8a3150db827a3 +0 -0
  654. data/spec/dummy_app/tmp/cache/assets/test/sprockets/f3ad8cf21b94a7a5f382482e0529fe3c +0 -0
  655. data/spec/dummy_app/tmp/dragonfly/cache/meta/1c/caf9bcaeb88256d4e9505faaa85621e4b53a8d +0 -0
  656. data/spec/dummy_app/tmp/dragonfly/cache/meta/25/1c81c04032b247ef575f4c929301f7f1963a39 +0 -0
  657. data/spec/dummy_app/tmp/dragonfly/cache/meta/2b/b5469f96538f0f47bb9c2828b5f970fae89a8d +0 -0
  658. data/spec/dummy_app/tmp/dragonfly/cache/meta/2e/276270b8e924ea3de50db2ad7a265c3bc4f0a1 +0 -0
  659. data/spec/dummy_app/tmp/dragonfly/cache/meta/62/36dfc092f525f643ded34bb316308d788f8f41 +0 -0
  660. data/spec/dummy_app/tmp/dragonfly/cache/meta/70/d58ddc461366882590f97c0d9ea3af5545b5a1 +0 -0
  661. data/spec/dummy_app/tmp/dragonfly/cache/meta/bd/bb171fbf5c5c34eff7efc8fa78817acc7dea9d +0 -0
  662. data/spec/dummy_app/tmp/dragonfly/cache/meta/d1/6c9c5ef0b7ae606b4a12cb7daf2fa7dc21acd5 +0 -0
  663. metadata.gz.sig +0 -0
@@ -0,0 +1,28 @@
1
+ require 'spec_helper'
2
+ require 'timecop'
3
+
4
+ describe 'RailsAdmin::Adapters::ActiveRecord::Property', active_record: true do
5
+ describe 'string field' do
6
+ subject { RailsAdmin::AbstractModel.new('Player').properties.detect { |f| f.name == :name } }
7
+
8
+ it 'returns correct values' do
9
+ expect(subject.pretty_name).to eq 'Name'
10
+ expect(subject.type).to eq :string
11
+ expect(subject.length).to eq 100
12
+ expect(subject.nullable?).to be_false
13
+ expect(subject.serial?).to be_false
14
+ end
15
+ end
16
+
17
+ describe 'serialized field' do
18
+ subject { RailsAdmin::AbstractModel.new('User').properties.detect { |f| f.name == :roles } }
19
+
20
+ it 'returns correct values' do
21
+ expect(subject.pretty_name).to eq 'Roles'
22
+ expect(subject.type).to eq :serialized
23
+ expect(subject.length).to eq 255
24
+ expect(subject.nullable?).to be_true
25
+ expect(subject.serial?).to be_false
26
+ end
27
+ end
28
+ end
@@ -7,171 +7,20 @@ describe 'RailsAdmin::Adapters::ActiveRecord', active_record: true do
7
7
  end
8
8
 
9
9
  describe '#associations' do
10
- before :all do
11
- RailsAdmin::AbstractModel.reset_polymorphic_parents
12
-
13
- class ARBlog < ActiveRecord::Base
14
- has_many :a_r_posts
15
- has_many :a_r_comments, as: :commentable
16
- belongs_to :librarian, polymorphic: true
17
- end
18
-
19
- class ARPost < ActiveRecord::Base
20
- belongs_to :a_r_blog
21
- has_and_belongs_to_many :a_r_categories
22
- has_many :a_r_comments, as: :commentable
23
- end
24
-
25
- class ARCategory < ActiveRecord::Base
26
- has_and_belongs_to_many :a_r_posts
27
- belongs_to :librarian, polymorphic: true
28
- end
29
-
30
- class ARUser < ActiveRecord::Base
31
- has_one :a_r_profile
32
- has_many :a_r_categories, as: :librarian
33
- end
34
-
35
- class ARProfile < ActiveRecord::Base
36
- belongs_to :a_r_user
37
- has_many :a_r_blogs, as: :librarian
38
- end
39
-
40
- class ARComment < ActiveRecord::Base
41
- belongs_to :commentable, polymorphic: true
42
- end
43
-
44
- @blog = RailsAdmin::AbstractModel.new(ARBlog)
45
- @post = RailsAdmin::AbstractModel.new(ARPost)
46
- @category = RailsAdmin::AbstractModel.new(ARCategory)
47
- @user = RailsAdmin::AbstractModel.new(ARUser)
48
- @profile = RailsAdmin::AbstractModel.new(ARProfile)
49
- @comment = RailsAdmin::AbstractModel.new(ARComment)
50
- end
51
-
52
- after :all do
53
- RailsAdmin::AbstractModel.reset_polymorphic_parents
54
- end
55
-
56
- it 'lists associations' do
57
- expect(@post.associations.collect { |a|a[:name].to_s }).to match_array %w(a_r_blog a_r_categories a_r_comments)
58
- end
59
-
60
- it 'list associations types in supported [:belongs_to, :has_and_belongs_to_many, :has_many, :has_one]' do
61
- expect((@post.associations + @blog.associations + @user.associations).collect { |a|a[:type] }.uniq.collect(&:to_s)).to match_array %w(belongs_to has_and_belongs_to_many has_many has_one)
62
- end
63
-
64
- it 'has correct parameter of belongs_to association' do
65
- param = @post.associations.select { |a| a[:name] == :a_r_blog }.first
66
- expect(param.reject { |k, v| [:primary_key_proc, :model_proc].include? k }).to eq(
67
- name: :a_r_blog,
68
- pretty_name: 'A r blog',
69
- type: :belongs_to,
70
- foreign_key: :a_r_blog_id,
71
- foreign_type: nil,
72
- as: nil,
73
- polymorphic: false,
74
- inverse_of: nil,
75
- read_only: nil,
76
- nested_form: nil
77
- )
78
- expect(param[:primary_key_proc].call).to eq('id')
79
- expect(param[:model_proc].call).to eq(ARBlog)
80
- end
81
-
82
- it 'has correct parameter of has_many association' do
83
- param = @blog.associations.select { |a| a[:name] == :a_r_posts }.first
84
- expect(param.reject { |k, v| [:primary_key_proc, :model_proc].include? k }).to eq(
85
- name: :a_r_posts,
86
- pretty_name: 'A r posts',
87
- type: :has_many,
88
- foreign_key: :ar_blog_id,
89
- foreign_type: nil,
90
- as: nil,
91
- polymorphic: false,
92
- inverse_of: nil,
93
- read_only: nil,
94
- nested_form: nil
95
- )
96
- expect(param[:primary_key_proc].call).to eq('id')
97
- expect(param[:model_proc].call).to eq(ARPost)
98
- end
99
-
100
- it 'has correct parameter of has_and_belongs_to_many association' do
101
- param = @post.associations.select { |a| a[:name] == :a_r_categories }.first
102
- expect(param.reject { |k, v| [:primary_key_proc, :model_proc].include? k }).to eq(
103
- name: :a_r_categories,
104
- pretty_name: 'A r categories',
105
- type: :has_and_belongs_to_many,
106
- foreign_key: :ar_post_id,
107
- foreign_type: nil,
108
- as: nil,
109
- polymorphic: false,
110
- inverse_of: nil,
111
- read_only: nil,
112
- nested_form: nil
113
- )
114
- expect(param[:primary_key_proc].call).to eq('id')
115
- expect(param[:model_proc].call).to eq(ARCategory)
116
- end
117
-
118
- it 'has correct parameter of polymorphic belongs_to association' do
119
- allow(RailsAdmin::Config).to receive(:models_pool).and_return(%w(ARBlog ARPost ARCategory ARUser ARProfile ARComment))
120
- param = @comment.associations.select { |a| a[:name] == :commentable }.first
121
- expect(param.reject { |k, v| [:primary_key_proc, :model_proc].include? k }).to eq(
122
- name: :commentable,
123
- pretty_name: 'Commentable',
124
- type: :belongs_to,
125
- foreign_key: :commentable_id,
126
- foreign_type: :commentable_type,
127
- as: nil,
128
- polymorphic: true,
129
- inverse_of: nil,
130
- read_only: nil,
131
- nested_form: nil
132
- )
133
- # Should not be called for polymorphic relations.
134
- # TODO: Handle this case
135
- # expect(param[:primary_key_proc].call).to eq('id')
136
- expect(param[:model_proc].call).to eq([ARBlog, ARPost])
137
- end
138
-
139
- it 'has correct parameter of polymorphic inverse has_many association' do
140
- param = @blog.associations.select { |a| a[:name] == :a_r_comments }.first
141
- expect(param.reject { |k, v| [:primary_key_proc, :model_proc].include? k }).to eq(
142
- name: :a_r_comments,
143
- pretty_name: 'A r comments',
144
- type: :has_many,
145
- foreign_key: :commentable_id,
146
- foreign_type: nil,
147
- as: :commentable,
148
- polymorphic: false,
149
- inverse_of: nil,
150
- read_only: nil,
151
- nested_form: nil
152
- )
153
- expect(param[:primary_key_proc].call).to eq('id')
154
- expect(param[:model_proc].call).to eq(ARComment)
155
- end
156
-
157
- it 'has correct opposite model lookup for polymorphic associations' do
158
- allow(RailsAdmin::Config).to receive(:models_pool).and_return(%w(ARBlog ARPost ARCategory ARUser ARProfile ARComment))
159
- expect(@category.associations.detect { |a| a[:name] == :librarian }[:model_proc].call).to eq [ARUser]
160
- expect(@blog.associations.detect { |a| a[:name] == :librarian }[:model_proc].call).to eq [ARProfile]
10
+ it 'returns Association class' do
11
+ expect(RailsAdmin::AbstractModel.new(Player).associations.first).
12
+ to be_a_kind_of RailsAdmin::Adapters::ActiveRecord::Association
161
13
  end
162
14
  end
163
15
 
164
16
  describe '#properties' do
165
- it 'returns parameters of string-type field' do
166
- expect(RailsAdmin::AbstractModel.new('Player').properties.select { |f| f[:name] == :name }).to eq([{:name => :name, :pretty_name => 'Name', :type => :string, :length => 100, :nullable? => false, :serial? => false}])
167
- end
168
-
169
- it 'maps serialized attribute to :serialized field type' do
170
- expect(RailsAdmin::AbstractModel.new('User').properties.detect { |f| f[:name] == :roles }).to eq(:name => :roles, :pretty_name => 'Roles', :length => 255, :nullable? => true, :serial? => false, :type => :serialized)
17
+ it 'returns Property class' do
18
+ expect(RailsAdmin::AbstractModel.new(Player).properties.first).
19
+ to be_a_kind_of RailsAdmin::Adapters::ActiveRecord::Property
171
20
  end
172
21
  end
173
22
 
174
- describe 'data access method' do
23
+ describe 'data access methods' do
175
24
  before do
176
25
  @players = FactoryGirl.create_list(:player, 3)
177
26
  @abstract_model = RailsAdmin::AbstractModel.new('Player')
@@ -252,6 +101,20 @@ describe 'RailsAdmin::Adapters::ActiveRecord', active_record: true do
252
101
  it 'makes correct query' do
253
102
  expect(@abstract_model.all(query: 'foo')).to match_array @teams[1..2]
254
103
  end
104
+
105
+ context "when field's searchable_columns is empty" do
106
+ before do
107
+ RailsAdmin.config do |c|
108
+ c.model Team do
109
+ field :players
110
+ end
111
+ end
112
+ end
113
+
114
+ it 'does not break' do
115
+ expect { @abstract_model.all(query: 'foo') }.not_to raise_error
116
+ end
117
+ end
255
118
  end
256
119
 
257
120
  describe '#filter_conditions' do
@@ -262,7 +125,21 @@ describe 'RailsAdmin::Adapters::ActiveRecord', active_record: true do
262
125
  collect { |h| FactoryGirl.create :team, h }
263
126
  end
264
127
 
265
- it 'makes conrrect query' do
128
+ context 'without configuration' do
129
+ before do
130
+ Rails.configuration.stub(:database_configuration) { nil }
131
+ end
132
+
133
+ after do
134
+ Rails.configuration.unstub(:database_configuration)
135
+ end
136
+
137
+ it 'does not raise error' do
138
+ expect { @abstract_model.all(filters: {'name' => {'0000' => {o: 'like', v: 'foo'}}}) }.to_not raise_error
139
+ end
140
+ end
141
+
142
+ it 'makes correct query' do
266
143
  expect(@abstract_model.all(filters: {'name' => {'0000' => {o: 'like', v: 'foo'}}, 'division' => {'0001' => {o: 'like', v: 'bar'}}}, include: :division)).to eq([@teams[2]])
267
144
  end
268
145
  end
@@ -315,10 +192,10 @@ describe 'RailsAdmin::Adapters::ActiveRecord', active_record: true do
315
192
  end
316
193
 
317
194
  it 'supports boolean type query' do
318
- %w(false f 0).each do |value|
195
+ %w[false f 0].each do |value|
319
196
  expect(@abstract_model.send(:build_statement, :field, :boolean, value, nil)).to eq(['(field IS NULL OR field = ?)', false])
320
197
  end
321
- %w(true t 1).each do |value|
198
+ %w[true t 1].each do |value|
322
199
  expect(@abstract_model.send(:build_statement, :field, :boolean, value, nil)).to eq(['(field = ?)', true])
323
200
  end
324
201
  expect(@abstract_model.send(:build_statement, :field, :boolean, 'word', nil)).to be_nil
@@ -334,7 +211,7 @@ describe 'RailsAdmin::Adapters::ActiveRecord', active_record: true do
334
211
  expect(@abstract_model.send(:build_statement, :field, :integer, ['6', '' , ''], 'default')).to eq(['(field = ?)', 6])
335
212
  expect(@abstract_model.send(:build_statement, :field, :integer, ['7', '10', ''], 'default')).to eq(['(field = ?)', 7])
336
213
  expect(@abstract_model.send(:build_statement, :field, :integer, ['8', '' , '20'], 'default')).to eq(['(field = ?)', 8])
337
- expect(@abstract_model.send(:build_statement, :field, :integer, %w(9 10 20), 'default')).to eq(['(field = ?)', 9])
214
+ expect(@abstract_model.send(:build_statement, :field, :integer, %w[9 10 20], 'default')).to eq(['(field = ?)', 9])
338
215
  end
339
216
 
340
217
  it 'supports integer type range query' do
@@ -343,7 +220,7 @@ describe 'RailsAdmin::Adapters::ActiveRecord', active_record: true do
343
220
  expect(@abstract_model.send(:build_statement, :field, :integer, ['', '3', ''], 'between')).to eq(['(field >= ?)', 3])
344
221
  expect(@abstract_model.send(:build_statement, :field, :integer, ['', '', '5'], 'between')).to eq(['(field <= ?)', 5])
345
222
  expect(@abstract_model.send(:build_statement, :field, :integer, ['' , '10', '20'], 'between')).to eq(['(field BETWEEN ? AND ?)', 10, 20])
346
- expect(@abstract_model.send(:build_statement, :field, :integer, %w(15 10 20), 'between')).to eq(['(field BETWEEN ? AND ?)', 10, 20])
223
+ expect(@abstract_model.send(:build_statement, :field, :integer, %w[15 10 20], 'between')).to eq(['(field BETWEEN ? AND ?)', 10, 20])
347
224
  expect(@abstract_model.send(:build_statement, :field, :integer, ['', 'word1', ''], 'between')).to be_nil
348
225
  expect(@abstract_model.send(:build_statement, :field, :integer, ['', '' , 'word2'], 'between')).to be_nil
349
226
  expect(@abstract_model.send(:build_statement, :field, :integer, ['', 'word3', 'word4'], 'between')).to be_nil
@@ -0,0 +1,278 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'RailsAdmin::Adapters::Mongoid::Association', mongoid: true do
4
+ before :all do
5
+ RailsAdmin::AbstractModel.reset_polymorphic_parents
6
+
7
+ class MongoBlog
8
+ include Mongoid::Document
9
+ has_many :mongo_posts
10
+ has_many :mongo_comments, as: :commentable
11
+ belongs_to :librarian, polymorphic: true
12
+ field :mongo_blog_id
13
+ end
14
+
15
+ class MongoPost
16
+ include Mongoid::Document
17
+ belongs_to :mongo_blog
18
+ has_and_belongs_to_many :mongo_categories
19
+ has_many :mongo_comments, as: :commentable
20
+ embeds_one :mongo_note
21
+ accepts_nested_attributes_for :mongo_note
22
+ end
23
+
24
+ class MongoCategory
25
+ include Mongoid::Document
26
+ has_and_belongs_to_many :mongo_posts
27
+ belongs_to :librarian, polymorphic: true
28
+ end
29
+
30
+ class MongoUser
31
+ include Mongoid::Document
32
+ has_one :mongo_profile
33
+ has_many :mongo_categories, as: :librarian
34
+
35
+ embeds_many :mongo_notes
36
+ accepts_nested_attributes_for :mongo_notes
37
+ field :name, type: String
38
+ field :message, type: String
39
+ field :short_text, type: String
40
+
41
+ validates :short_text, length: {maximum: 255}
42
+ end
43
+
44
+ class MongoProfile
45
+ include Mongoid::Document
46
+ belongs_to :mongo_user
47
+ has_many :mongo_blogs, as: :librarian
48
+ end
49
+
50
+ class MongoComment
51
+ include Mongoid::Document
52
+ belongs_to :commentable, polymorphic: true
53
+ end
54
+
55
+ class MongoNote
56
+ include Mongoid::Document
57
+ embedded_in :mongo_post
58
+ embedded_in :mongo_user
59
+ end
60
+
61
+ @blog = RailsAdmin::AbstractModel.new MongoBlog
62
+ @post = RailsAdmin::AbstractModel.new MongoPost
63
+ @category = RailsAdmin::AbstractModel.new MongoCategory
64
+ @user = RailsAdmin::AbstractModel.new MongoUser
65
+ @profile = RailsAdmin::AbstractModel.new MongoProfile
66
+ @comment = RailsAdmin::AbstractModel.new MongoComment
67
+ end
68
+
69
+ after :all do
70
+ RailsAdmin::AbstractModel.reset_polymorphic_parents
71
+ end
72
+
73
+ it 'lists associations' do
74
+ expect(@post.associations.collect { |a| a.name.to_sym }).to match_array [:mongo_blog, :mongo_categories, :mongo_comments, :mongo_note]
75
+ end
76
+
77
+ it 'reads correct and know types in [:belongs_to, :has_and_belongs_to_many, :has_many, :has_one]' do
78
+ expect((@post.associations + @blog.associations + @user.associations).collect { |a| a.type.to_s }.uniq).to match_array %w[belongs_to has_and_belongs_to_many has_many has_one]
79
+ end
80
+
81
+ describe 'belongs_to association' do
82
+ subject { @post.associations.select { |a| a.name == :mongo_blog }.first }
83
+
84
+ it 'returns correct values' do
85
+ expect(subject.pretty_name).to eq 'Mongo blog'
86
+ expect(subject.type).to eq :belongs_to
87
+ expect(subject.klass).to eq MongoBlog
88
+ expect(subject.primary_key).to eq :_id
89
+ expect(subject.foreign_key).to eq :mongo_blog_id
90
+ expect(subject.foreign_type).to be_nil
91
+ expect(subject.foreign_inverse_of).to be_nil
92
+ expect(subject.as).to be_nil
93
+ expect(subject.polymorphic?).to be_false
94
+ expect(subject.inverse_of).to be_nil
95
+ expect(subject.read_only?).to be_false
96
+ expect(subject.nested_options).to be_nil
97
+ end
98
+
99
+ it 'distinguishes foreign_key column' do
100
+ expect(@post.properties.detect { |f| f.name == :mongo_blog_id }.type).to eq(:bson_object_id)
101
+ expect(@blog.properties.detect { |f| f.name == :mongo_blog_id }.type).to eq(:string)
102
+ end
103
+ end
104
+
105
+ describe 'has_many association' do
106
+ subject { @blog.associations.select { |a| a.name == :mongo_posts }.first }
107
+
108
+ it 'returns correct values' do
109
+ expect(subject.pretty_name).to eq 'Mongo posts'
110
+ expect(subject.type).to eq :has_many
111
+ expect(subject.klass).to eq MongoPost
112
+ expect(subject.primary_key).to eq :_id
113
+ expect(subject.foreign_key).to eq :mongo_blog_id
114
+ expect(subject.foreign_type).to be_nil
115
+ expect(subject.foreign_inverse_of).to be_nil
116
+ expect(subject.as).to be_nil
117
+ expect(subject.polymorphic?).to be_false
118
+ expect(subject.inverse_of).to be_nil
119
+ expect(subject.read_only?).to be_false
120
+ expect(subject.nested_options).to be_nil
121
+ end
122
+ end
123
+
124
+ describe 'has_and_belongs_to_many association' do
125
+ subject { @post.associations.select { |a| a.name == :mongo_categories }.first }
126
+
127
+ it 'returns correct values' do
128
+ expect(subject.pretty_name).to eq 'Mongo categories'
129
+ expect(subject.type).to eq :has_and_belongs_to_many
130
+ expect(subject.klass).to eq MongoCategory
131
+ expect(subject.primary_key).to eq :_id
132
+ expect(subject.foreign_key).to eq :mongo_category_ids
133
+ expect(subject.foreign_type).to be_nil
134
+ expect(subject.foreign_inverse_of).to be_nil
135
+ expect(subject.as).to be_nil
136
+ expect(subject.polymorphic?).to be_false
137
+ expect(subject.inverse_of).to be_nil
138
+ expect(subject.read_only?).to be_false
139
+ expect(subject.nested_options).to be_nil
140
+ end
141
+ end
142
+
143
+ describe 'polymorphic belongs_to association' do
144
+ before { allow(RailsAdmin::Config).to receive(:models_pool).and_return(%w[MongoBlog MongoPost MongoCategory MongoUser MongoProfile MongoComment]) }
145
+ subject { @comment.associations.select { |a| a.name == :commentable }.first }
146
+
147
+ it 'returns correct values' do
148
+ expect(subject.pretty_name).to eq 'Commentable'
149
+ expect(subject.type).to eq :belongs_to
150
+ expect(subject.klass).to eq [MongoBlog, MongoPost]
151
+ expect(subject.primary_key).to eq :_id
152
+ expect(subject.foreign_key).to eq :commentable_id
153
+ expect(subject.foreign_type).to eq :commentable_type
154
+ expect(subject.foreign_inverse_of).to be_nil
155
+ expect(subject.as).to be_nil
156
+ expect(subject.polymorphic?).to be_true
157
+ expect(subject.inverse_of).to be_nil
158
+ expect(subject.read_only?).to be_false
159
+ expect(subject.nested_options).to be_nil
160
+ end
161
+ end
162
+
163
+ describe 'polymorphic inverse has_many association' do
164
+ before { allow(RailsAdmin::Config).to receive(:models_pool).and_return(%w[MongoBlog MongoPost MongoCategory MongoUser MongoProfile MongoComment]) }
165
+ subject { @blog.associations.select { |a| a.name == :mongo_comments }.first }
166
+
167
+ it 'returns correct values' do
168
+ expect(subject.pretty_name).to eq 'Mongo comments'
169
+ expect(subject.type).to eq :has_many
170
+ expect(subject.klass).to eq MongoComment
171
+ expect(subject.primary_key).to eq :_id
172
+ expect(subject.foreign_key).to eq :commentable_id
173
+ expect(subject.foreign_type).to be_nil
174
+ expect(subject.foreign_inverse_of).to be_nil
175
+ expect(subject.as).to eq :commentable
176
+ expect(subject.polymorphic?).to be_false
177
+ expect(subject.inverse_of).to be_nil
178
+ expect(subject.read_only?).to be_false
179
+ expect(subject.nested_options).to be_nil
180
+ end
181
+
182
+ it 'looks up correct inverse model' do
183
+ expect(@category.associations.detect { |a| a.name == :librarian }.klass).to eq [MongoUser]
184
+ expect(@blog.associations.detect { |a| a.name == :librarian }.klass).to eq [MongoProfile]
185
+ end
186
+ end
187
+
188
+ describe 'embeds_one association' do
189
+ subject { @post.associations.select { |a| a.name == :mongo_note }.first }
190
+
191
+ it 'returns correct values' do
192
+ expect(subject.pretty_name).to eq 'Mongo note'
193
+ expect(subject.type).to eq :has_one
194
+ expect(subject.klass).to eq MongoNote
195
+ expect(subject.primary_key).to eq :_id
196
+ expect(subject.foreign_key).to be_nil
197
+ expect(subject.foreign_type).to be_nil
198
+ expect(subject.foreign_inverse_of).to be_nil
199
+ expect(subject.as).to be_nil
200
+ expect(subject.polymorphic?).to be_false
201
+ expect(subject.inverse_of).to be_nil
202
+ expect(subject.read_only?).to be_false
203
+ expect(subject.nested_options).to eq(allow_destroy: false, update_only: false)
204
+ end
205
+ end
206
+
207
+ describe 'embeds_many association' do
208
+ subject { @user.associations.select { |a| a.name == :mongo_notes }.first }
209
+
210
+ it 'returns correct values' do
211
+ expect(subject.pretty_name).to eq 'Mongo notes'
212
+ expect(subject.type).to eq :has_many
213
+ expect(subject.klass).to eq MongoNote
214
+ expect(subject.primary_key).to eq :_id
215
+ expect(subject.foreign_key).to be_nil
216
+ expect(subject.foreign_type).to be_nil
217
+ expect(subject.as).to be_nil
218
+ expect(subject.polymorphic?).to be_false
219
+ expect(subject.inverse_of).to be_nil
220
+ expect(subject.read_only?).to be_false
221
+ expect(subject.nested_options).to eq(allow_destroy: false, update_only: false)
222
+ end
223
+
224
+ it 'raises error when embeds_* is used without accepts_nested_attributes_for' do
225
+ class MongoEmbedsOne
226
+ include Mongoid::Document
227
+ embeds_one :mongo_embedded
228
+ end
229
+
230
+ class MongoEmbedsMany
231
+ include Mongoid::Document
232
+ embeds_many :mongo_embeddeds
233
+ end
234
+
235
+ class MongoEmbedded
236
+ include Mongoid::Document
237
+ embedded_in :mongo_embeds_one
238
+ embedded_in :mongo_embeds_many
239
+ end
240
+
241
+ class MongoRecursivelyEmbedsOne
242
+ include Mongoid::Document
243
+ recursively_embeds_one
244
+ end
245
+
246
+ class MongoRecursivelyEmbedsMany
247
+ include Mongoid::Document
248
+ recursively_embeds_many
249
+ end
250
+
251
+ expect(lambda { RailsAdmin::AbstractModel.new(MongoEmbedsOne).associations.first.nested_options }).to raise_error(RuntimeError,
252
+ "Embbeded association without accepts_nested_attributes_for can't be handled by RailsAdmin,\nbecause embedded model doesn't have top-level access.\nPlease add `accepts_nested_attributes_for :mongo_embedded' line to `MongoEmbedsOne' model.\n"
253
+ )
254
+ expect(lambda { RailsAdmin::AbstractModel.new(MongoEmbedsMany).associations.first.nested_options }).to raise_error(RuntimeError,
255
+ "Embbeded association without accepts_nested_attributes_for can't be handled by RailsAdmin,\nbecause embedded model doesn't have top-level access.\nPlease add `accepts_nested_attributes_for :mongo_embeddeds' line to `MongoEmbedsMany' model.\n"
256
+ )
257
+ expect(lambda { RailsAdmin::AbstractModel.new(MongoRecursivelyEmbedsOne).associations.first.nested_options }).not_to raise_error
258
+ expect(lambda { RailsAdmin::AbstractModel.new(MongoRecursivelyEmbedsMany).associations.first.nested_options }).not_to raise_error
259
+ end
260
+
261
+ it 'works with inherited embeds_many model' do
262
+ class MongoEmbedsParent
263
+ include Mongoid::Document
264
+ embeds_many :mongo_embeddeds
265
+ accepts_nested_attributes_for :mongo_embeddeds
266
+ end
267
+
268
+ class MongoEmbedded
269
+ include Mongoid::Document
270
+ embedded_in :mongo_embeds_many
271
+ end
272
+
273
+ class MongoEmbedsChild < MongoEmbedsParent; end
274
+
275
+ expect(lambda { RailsAdmin::AbstractModel.new(MongoEmbedsChild).associations }).not_to raise_error
276
+ end
277
+ end
278
+ end