raffle_v1 0.0.5 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (418) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +1 -1
  3. data/Rakefile +3 -9
  4. data/app/assets/javascripts/raffle_v1/application.js +6 -5
  5. data/app/assets/stylesheets/raffle_v1/application.css.scss +4 -31
  6. data/app/assets/stylesheets/raffle_v1/framework_and_overrides.css.scss +422 -0
  7. data/app/controllers/raffle_v1/admin/base_controller.rb +11 -0
  8. data/app/controllers/raffle_v1/admin/users_controller.rb +69 -0
  9. data/app/controllers/raffle_v1/application_controller.rb +51 -78
  10. data/app/controllers/raffle_v1/pages_controller.rb +11 -178
  11. data/app/helpers/raffle_v1/application_helper.rb +5 -0
  12. data/app/models/raffle_v1/user.rb +61 -107
  13. data/app/views/layouts/raffle_v1/application.html.erb +28 -5
  14. data/app/views/raffle_v1/admin/base/index.html.erb +39 -0
  15. data/app/views/raffle_v1/admin/users/edit.html.erb +65 -0
  16. data/app/views/raffle_v1/admin/users/index.html.erb +55 -0
  17. data/app/views/raffle_v1/devise/confirmations/new.html.erb +31 -0
  18. data/app/views/raffle_v1/devise/mailer/confirmation_instructions.html.erb +12 -0
  19. data/app/views/raffle_v1/devise/mailer/reset_password_instructions.html.erb +15 -0
  20. data/app/views/raffle_v1/devise/passwords/edit.html.erb +43 -0
  21. data/app/views/raffle_v1/devise/passwords/new.html.erb +31 -0
  22. data/app/views/raffle_v1/devise/registrations/edit.html.erb +63 -0
  23. data/app/views/raffle_v1/devise/registrations/new.html.erb +58 -0
  24. data/app/views/raffle_v1/devise/sessions/new.html.erb +45 -0
  25. data/app/views/raffle_v1/devise/shared/_links.erb +29 -0
  26. data/app/views/raffle_v1/layouts/_footer.html.erb +17 -0
  27. data/app/views/raffle_v1/layouts/_messages.html.erb +9 -0
  28. data/app/views/raffle_v1/layouts/_navigation.html.erb +18 -0
  29. data/app/views/raffle_v1/layouts/_navigation_links.html.erb +13 -0
  30. data/app/views/raffle_v1/layouts/application.html.erb +37 -0
  31. data/app/views/raffle_v1/pages/home.html.erb +3 -0
  32. data/app/views/raffle_v1/pages/inside.html.erb +3 -0
  33. data/config/add_files/date_format.rb +27 -0
  34. data/config/add_files/devise.rb +267 -0
  35. data/config/add_files/filter_parameter_logging.rb +4 -0
  36. data/config/add_files/friendly_id.rb +88 -0
  37. data/config/add_files/kaminari_config.rb +10 -0
  38. data/config/add_files/rafflev1.rb +4 -0
  39. data/config/initializers/rafflev1.rb +1 -6
  40. data/config/locales/devise.en.yml +59 -0
  41. data/config/routes.rb +30 -5
  42. data/db/migrate/20130123214645_devise_create_raffle_v1_users.rb +56 -0
  43. data/db/migrate/{20130123214645_devise_create_users.rb → 20130124004626_devise_create_raffle_v1_admins.rb} +7 -7
  44. data/db/migrate/{20130124231541_create_versions.rb → 20130124231541_create_raffle_v1_versions.rb} +5 -5
  45. data/db/migrate/20140719165853_create_raffle_v1_friendly_id_slugs.rb +15 -0
  46. data/db/seeds.rb +24 -77
  47. data/lib/generators/raffle_v1/install/install_generator.rb +142 -54
  48. data/lib/generators/raffle_v1/install/templates/assets/images/raffle_v1/game.png +0 -0
  49. data/lib/generators/raffle_v1/install/templates/assets/images/raffle_v1/gift.png +0 -0
  50. data/lib/generators/raffle_v1/install/templates/assets/images/raffle_v1/lifesaver.png +0 -0
  51. data/lib/generators/raffle_v1/install/templates/assets/images/raffle_v1/person01.jpg +0 -0
  52. data/lib/generators/raffle_v1/install/templates/assets/javascripts/raffle_v1/application.js +17 -0
  53. data/lib/generators/raffle_v1/install/templates/assets/stylesheets/raffle_v1/application.css.scss +7 -0
  54. data/lib/generators/raffle_v1/install/templates/assets/stylesheets/raffle_v1/framework_and_overrides.css.scss +422 -0
  55. data/lib/generators/raffle_v1/install/templates/config/initializers/date_format.rb +27 -0
  56. data/lib/generators/raffle_v1/install/templates/config/initializers/devise.rb +269 -0
  57. data/lib/generators/raffle_v1/install/templates/config/initializers/filter_parameter_logging.rb +4 -0
  58. data/lib/generators/raffle_v1/install/templates/config/initializers/friendly_id.rb +89 -0
  59. data/lib/generators/raffle_v1/install/templates/config/initializers/kaminari_config.rb +11 -0
  60. data/lib/generators/raffle_v1/install/templates/config/initializers/rafflev1.rb +4 -0
  61. data/lib/generators/raffle_v1/install/templates/db/seeds.rb +28 -0
  62. data/lib/raffle_v1/version.rb +2 -2
  63. data/test/controllers/raffle_v1/locales_controller_test.rb +51 -0
  64. data/test/controllers/raffle_v1/page_layouts_controller_test.rb +51 -0
  65. data/test/controllers/raffle_v1/pages_controller_test.rb +51 -0
  66. data/test/controllers/raffle_v1/program_locales_controller_test.rb +51 -0
  67. data/test/controllers/raffle_v1/program_settings_controller_test.rb +51 -0
  68. data/test/controllers/raffle_v1/programs_controller_test.rb +51 -0
  69. data/test/controllers/raffle_v1/role_users_controller_test.rb +51 -0
  70. data/test/controllers/raffle_v1/roles_controller_test.rb +51 -0
  71. data/test/controllers/raffle_v1/style_sheets_controller_test.rb +51 -0
  72. data/test/dummy/Guardfile +24 -0
  73. data/test/dummy/README.rdoc +15 -248
  74. data/test/dummy/Rakefile +1 -2
  75. data/test/dummy/app/assets/javascripts/application.js +3 -5
  76. data/test/dummy/app/assets/stylesheets/application.css +5 -3
  77. data/test/dummy/app/controllers/application_controller.rb +3 -1
  78. data/test/dummy/app/models/user.rb +4 -0
  79. data/test/dummy/app/views/layouts/application.html.erb +2 -2
  80. data/test/dummy/assets/javascripts/application.js +17 -0
  81. data/test/dummy/assets/stylesheets/application.css.scss +7 -0
  82. data/test/dummy/assets/stylesheets/framework_and_overrides.css.scss +422 -0
  83. data/test/dummy/bin/bundle +3 -0
  84. data/test/dummy/bin/rails +4 -0
  85. data/test/dummy/bin/rake +4 -0
  86. data/test/dummy/config.ru +1 -1
  87. data/test/dummy/config/application.rb +29 -47
  88. data/test/dummy/config/boot.rb +4 -9
  89. data/test/dummy/config/database.yml +48 -13
  90. data/test/dummy/config/environment.rb +3 -3
  91. data/test/dummy/config/environments/development.rb +19 -19
  92. data/test/dummy/config/environments/production.rb +44 -28
  93. data/test/dummy/config/environments/test.rb +17 -15
  94. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  95. data/test/dummy/config/initializers/date_format.rb +27 -0
  96. data/test/dummy/config/initializers/devise.rb +269 -0
  97. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  98. data/test/dummy/config/initializers/friendly_id.rb +89 -0
  99. data/test/dummy/config/initializers/inflections.rb +6 -5
  100. data/test/dummy/config/initializers/kaminari_config.rb +11 -0
  101. data/test/dummy/config/initializers/mime_types.rb +0 -1
  102. data/test/dummy/config/initializers/rafflev1.rb +4 -0
  103. data/test/dummy/config/initializers/session_store.rb +1 -6
  104. data/test/dummy/config/initializers/wrap_parameters.rb +6 -6
  105. data/test/dummy/config/locales/en.yml +20 -2
  106. data/{lib/database_cleaner-0.7.2/examples/db/sqlite_databases_go_here → test/dummy/config/rafflev1.yml} +0 -0
  107. data/test/dummy/config/routes.rb +3 -1
  108. data/test/dummy/config/secrets.yml +22 -0
  109. data/test/dummy/db/migrate/20140719173448_devise_create_raffle_v1_users.raffle_v1.rb +57 -0
  110. data/{db/migrate/20130124004626_devise_create_admins.rb → test/dummy/db/migrate/20140719173449_devise_create_raffle_v1_admins.raffle_v1.rb} +8 -7
  111. data/test/dummy/db/migrate/20140719173450_create_raffle_v1_versions.raffle_v1.rb +19 -0
  112. data/test/dummy/db/migrate/20140719173451_create_raffle_v1_friendly_id_slugs.raffle_v1.rb +16 -0
  113. data/test/dummy/db/schema.rb +72 -12
  114. data/test/dummy/db/seeds.rb +30 -0
  115. data/test/dummy/public/404.html +54 -13
  116. data/test/dummy/public/422.html +54 -13
  117. data/test/dummy/public/500.html +53 -12
  118. data/test/dummy/spec/factories.rb +5 -0
  119. data/test/dummy/spec/models/user_spec.rb +5 -0
  120. data/test/dummy/spec/rails_helper.rb +66 -0
  121. data/test/dummy/spec/spec_helper.rb +78 -0
  122. data/test/dummy/test/factories/users.rb +6 -0
  123. data/test/dummy/vendor/assets/javascripts/all_file.js +0 -0
  124. data/test/dummy/vendor/assets/javascripts/all_raffle_v1.js +7 -0
  125. data/test/dummy/vendor/assets/stylesheets/all_file.css +0 -0
  126. data/test/dummy/vendor/assets/stylesheets/all_raffle_v1.css +9 -0
  127. data/test/fixtures/raffle_v1/abilities.yml +11 -0
  128. data/test/fixtures/raffle_v1/add_name_to_users.yml +11 -0
  129. data/test/fixtures/raffle_v1/admin_abilities.yml +11 -0
  130. data/test/fixtures/raffle_v1/admins.yml +11 -0
  131. data/test/fixtures/raffle_v1/locales.yml +9 -0
  132. data/test/fixtures/raffle_v1/page_layouts.yml +11 -0
  133. data/test/fixtures/raffle_v1/pages.yml +41 -0
  134. data/test/fixtures/raffle_v1/program_locales.yml +9 -0
  135. data/test/fixtures/raffle_v1/program_settings.yml +7 -0
  136. data/test/fixtures/raffle_v1/programs.yml +23 -0
  137. data/test/fixtures/raffle_v1/role_users.yml +9 -0
  138. data/test/fixtures/raffle_v1/roles.yml +7 -0
  139. data/test/fixtures/raffle_v1/style_sheets.yml +17 -0
  140. data/test/fixtures/raffle_v1/stylesheets.yml +11 -0
  141. data/test/fixtures/raffle_v1/terms_and_conditions.yml +11 -0
  142. data/test/fixtures/raffle_v1/testers.yml +11 -0
  143. data/test/fixtures/raffle_v1/translation_keys.yml +11 -0
  144. data/test/fixtures/raffle_v1/translation_objects.yml +11 -0
  145. data/test/fixtures/raffle_v1/translations.yml +11 -0
  146. data/test/fixtures/raffle_v1/users.yml +11 -0
  147. data/test/helpers/raffle_v1/locales_helper_test.rb +6 -0
  148. data/test/helpers/raffle_v1/page_layouts_helper_test.rb +6 -0
  149. data/test/{unit/helpers/raffle_v1/posts_helper_test.rb → helpers/raffle_v1/pages_helper_test.rb} +1 -1
  150. data/test/helpers/raffle_v1/program_locales_helper_test.rb +6 -0
  151. data/test/helpers/raffle_v1/program_settings_helper_test.rb +6 -0
  152. data/test/helpers/raffle_v1/programs_helper_test.rb +6 -0
  153. data/test/helpers/raffle_v1/role_users_helper_test.rb +6 -0
  154. data/test/helpers/raffle_v1/roles_helper_test.rb +6 -0
  155. data/test/helpers/raffle_v1/style_sheets_helper_test.rb +6 -0
  156. data/test/{unit/raffle_v1/comment_test.rb → models/raffle_v1/ability_test.rb} +1 -1
  157. data/test/{functional/raffle_v1/comments_controller_test.rb → models/raffle_v1/add_name_to_user_test.rb} +1 -1
  158. data/test/models/raffle_v1/admin_ability_test.rb +9 -0
  159. data/test/models/raffle_v1/admin_test.rb +9 -0
  160. data/test/models/raffle_v1/locale_test.rb +9 -0
  161. data/test/models/raffle_v1/page_layout_test.rb +9 -0
  162. data/test/{unit/raffle_v1/post_test.rb → models/raffle_v1/page_test.rb} +1 -1
  163. data/test/models/raffle_v1/program_locale_test.rb +9 -0
  164. data/test/models/raffle_v1/program_setting_test.rb +9 -0
  165. data/test/models/raffle_v1/program_test.rb +9 -0
  166. data/test/models/raffle_v1/role_test.rb +9 -0
  167. data/test/models/raffle_v1/role_user_test.rb +9 -0
  168. data/test/models/raffle_v1/style_sheet_test.rb +9 -0
  169. data/test/models/raffle_v1/stylesheet_test.rb +9 -0
  170. data/test/models/raffle_v1/terms_and_condition_test.rb +9 -0
  171. data/test/models/raffle_v1/tester_test.rb +9 -0
  172. data/test/models/raffle_v1/translation_key_test.rb +9 -0
  173. data/test/models/raffle_v1/translation_object_test.rb +9 -0
  174. data/test/models/raffle_v1/translation_test.rb +9 -0
  175. data/test/models/raffle_v1/user_test.rb +9 -0
  176. metadata +409 -278
  177. data/README.md +0 -53
  178. data/app/assets/javascripts/raffle_v1/comments.js +0 -2
  179. data/app/assets/javascripts/raffle_v1/home.js.coffee +0 -3
  180. data/app/assets/javascripts/raffle_v1/locales.js.coffee +0 -3
  181. data/app/assets/javascripts/raffle_v1/page_layouts.js.coffee +0 -3
  182. data/app/assets/javascripts/raffle_v1/pages.js.coffee +0 -3
  183. data/app/assets/javascripts/raffle_v1/posts.js +0 -2
  184. data/app/assets/javascripts/raffle_v1/programs.js.coffee +0 -3
  185. data/app/assets/javascripts/raffle_v1/roles.js.coffee +0 -3
  186. data/app/assets/javascripts/raffle_v1/stylesheets.js.coffee +0 -3
  187. data/app/assets/javascripts/raffle_v1/terms_and_conditions.js.coffee +0 -3
  188. data/app/assets/javascripts/raffle_v1/terms_of_conditions.js.coffee +0 -3
  189. data/app/assets/javascripts/raffle_v1/translation_keys.js.coffee +0 -3
  190. data/app/assets/javascripts/raffle_v1/translation_objects.js.coffee +0 -3
  191. data/app/assets/javascripts/raffle_v1/user.js.coffee +0 -3
  192. data/app/assets/javascripts/raffle_v1/versions.js.coffee +0 -3
  193. data/app/assets/stylesheets/raffle_v1/TableTools.css +0 -264
  194. data/app/assets/stylesheets/raffle_v1/TableTools.css.scss +0 -264
  195. data/app/assets/stylesheets/raffle_v1/TableTools_JUI.css +0 -182
  196. data/app/assets/stylesheets/raffle_v1/TableTools_JUI.css.scss +0 -183
  197. data/app/assets/stylesheets/raffle_v1/_custom.css.scss +0 -3310
  198. data/app/assets/stylesheets/raffle_v1/_variable.scss +0 -122
  199. data/app/assets/stylesheets/raffle_v1/_variable_defaults.scss +0 -83
  200. data/app/assets/stylesheets/raffle_v1/application.css +0 -13
  201. data/app/assets/stylesheets/raffle_v1/application.css.scss.erb +0 -32
  202. data/app/assets/stylesheets/raffle_v1/bootstrap-responsive.css +0 -570
  203. data/app/assets/stylesheets/raffle_v1/bootstrap-responsive.css.scss +0 -570
  204. data/app/assets/stylesheets/raffle_v1/bootstrap.css +0 -4226
  205. data/app/assets/stylesheets/raffle_v1/bootstrap.css.scss +0 -4226
  206. data/app/assets/stylesheets/raffle_v1/colorbox.css +0 -88
  207. data/app/assets/stylesheets/raffle_v1/colorbox.css.scss +0 -88
  208. data/app/assets/stylesheets/raffle_v1/comments.css +0 -4
  209. data/app/assets/stylesheets/raffle_v1/grid.css.scss +0 -258
  210. data/app/assets/stylesheets/raffle_v1/hierarchy.css.scss +0 -16
  211. data/app/assets/stylesheets/raffle_v1/home.css.scss +0 -18
  212. data/app/assets/stylesheets/raffle_v1/jquery.dataTables.css +0 -83
  213. data/app/assets/stylesheets/raffle_v1/jquery.dataTables.css.scss +0 -83
  214. data/app/assets/stylesheets/raffle_v1/jquery.jcarousel.css +0 -206
  215. data/app/assets/stylesheets/raffle_v1/jquery.wysiwyg.css +0 -57
  216. data/app/assets/stylesheets/raffle_v1/jquery.wysiwyg.css.scss +0 -57
  217. data/app/assets/stylesheets/raffle_v1/jqueryui/jquery.ui.core.css +0 -38
  218. data/app/assets/stylesheets/raffle_v1/jqueryui/jquery.ui.core.css.scss +0 -38
  219. data/app/assets/stylesheets/raffle_v1/jqueryui/jquery.ui.dialog.css +0 -21
  220. data/app/assets/stylesheets/raffle_v1/jqueryui/jquery.ui.dialog.css.scss +0 -21
  221. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  222. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  223. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-bg_flat_10_000000_40x100.png +0 -0
  224. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  225. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  226. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  227. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  228. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  229. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  230. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-icons_222222_256x240.png +0 -0
  231. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-icons_228ef1_256x240.png +0 -0
  232. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-icons_ef8c08_256x240.png +0 -0
  233. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-icons_ffd27a_256x240.png +0 -0
  234. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/images/ui-icons_ffffff_256x240.png +0 -0
  235. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/jquery-ui-1.8.18.custom.css +0 -563
  236. data/app/assets/stylesheets/raffle_v1/jqueryui/ui-lightness/jquery-ui-1.8.18.custom.css.scss +0 -563
  237. data/app/assets/stylesheets/raffle_v1/locales.css.scss +0 -3
  238. data/app/assets/stylesheets/raffle_v1/page_layouts.css.scss +0 -3
  239. data/app/assets/stylesheets/raffle_v1/pages.css.scss +0 -3
  240. data/app/assets/stylesheets/raffle_v1/posts.css +0 -4
  241. data/app/assets/stylesheets/raffle_v1/programs.css.scss +0 -3
  242. data/app/assets/stylesheets/raffle_v1/reset.css.scss +0 -96
  243. data/app/assets/stylesheets/raffle_v1/roles.css.scss +0 -3
  244. data/app/assets/stylesheets/raffle_v1/scaffolds.css.scss +0 -42
  245. data/app/assets/stylesheets/raffle_v1/stylesheets.css.scss +0 -3
  246. data/app/assets/stylesheets/raffle_v1/terms_and_conditions.css.scss +0 -3
  247. data/app/assets/stylesheets/raffle_v1/terms_of_conditions.css.scss +0 -4
  248. data/app/assets/stylesheets/raffle_v1/translation_keys.css.scss +0 -3
  249. data/app/assets/stylesheets/raffle_v1/translation_objects.css.scss +0 -3
  250. data/app/assets/stylesheets/raffle_v1/ui.multiselect.css +0 -33
  251. data/app/assets/stylesheets/raffle_v1/ui.multiselect.css.scss +0 -33
  252. data/app/assets/stylesheets/raffle_v1/user.css.scss +0 -3
  253. data/app/assets/stylesheets/raffle_v1/versions.css.scss +0 -3
  254. data/app/assets/stylesheets/scaffold.css +0 -56
  255. data/app/controllers/raffle_v1/comments_controller.rb +0 -30
  256. data/app/controllers/raffle_v1/home_controller.rb +0 -15
  257. data/app/controllers/raffle_v1/locales_controller.rb +0 -87
  258. data/app/controllers/raffle_v1/page_layouts_controller.rb +0 -87
  259. data/app/controllers/raffle_v1/posts_controller.rb +0 -87
  260. data/app/controllers/raffle_v1/programs_controller.rb +0 -140
  261. data/app/controllers/raffle_v1/roles_controller.rb +0 -87
  262. data/app/controllers/raffle_v1/stylesheets_controller.rb +0 -19
  263. data/app/controllers/raffle_v1/terms_and_conditions_controller.rb +0 -118
  264. data/app/controllers/raffle_v1/translation_keys_controller.rb +0 -119
  265. data/app/controllers/raffle_v1/translation_objects_controller.rb +0 -87
  266. data/app/controllers/raffle_v1/user_controller.rb +0 -138
  267. data/app/controllers/raffle_v1/versions_controller.rb +0 -15
  268. data/app/helpers/raffle_v1/comments_helper.rb +0 -4
  269. data/app/helpers/raffle_v1/posts_helper.rb +0 -4
  270. data/app/models/raffle_v1/ability.rb +0 -30
  271. data/app/models/raffle_v1/admin.rb +0 -35
  272. data/app/models/raffle_v1/admin_ability.rb +0 -28
  273. data/app/models/raffle_v1/comment.rb +0 -7
  274. data/app/models/raffle_v1/locale.rb +0 -29
  275. data/app/models/raffle_v1/page.rb +0 -26
  276. data/app/models/raffle_v1/page_layout.rb +0 -6
  277. data/app/models/raffle_v1/post.rb +0 -7
  278. data/app/models/raffle_v1/program.rb +0 -84
  279. data/app/models/raffle_v1/program_locale.rb +0 -11
  280. data/app/models/raffle_v1/program_setting.rb +0 -5
  281. data/app/models/raffle_v1/role.rb +0 -5
  282. data/app/models/raffle_v1/roles_users.rb +0 -5
  283. data/app/models/raffle_v1/stylesheet.rb +0 -9
  284. data/app/models/raffle_v1/terms_and_condition.rb +0 -17
  285. data/app/models/raffle_v1/translation.rb +0 -29
  286. data/app/models/raffle_v1/translation_key.rb +0 -35
  287. data/app/models/raffle_v1/translation_object.rb +0 -11
  288. data/app/views/raffle_v1/comments/_comment.html.erb +0 -1
  289. data/app/views/raffle_v1/comments/_form.html.erb +0 -8
  290. data/app/views/raffle_v1/comments/index.html.erb +0 -13
  291. data/app/views/raffle_v1/posts/_form.html.erb +0 -25
  292. data/app/views/raffle_v1/posts/edit.html.erb +0 -6
  293. data/app/views/raffle_v1/posts/index.html.erb +0 -25
  294. data/app/views/raffle_v1/posts/new.html.erb +0 -5
  295. data/app/views/raffle_v1/posts/show.html.erb +0 -19
  296. data/config/rafflev1.rb +0 -6
  297. data/db/migrate/20130127235347_create_programs.rb +0 -9
  298. data/db/migrate/20130129155515_add_domain_fields_to_programs.rb +0 -6
  299. data/db/migrate/20130129160949_create_terms_and_conditions.rb +0 -18
  300. data/db/migrate/20130129183112_add_program_to_users.rb +0 -5
  301. data/db/migrate/20130129204204_add_username_to_users.rb +0 -6
  302. data/db/migrate/20130129211205_create_roles.rb +0 -9
  303. data/db/migrate/20130129212302_create_roles_users.rb +0 -12
  304. data/db/migrate/20130130013315_create_locales.rb +0 -11
  305. data/db/migrate/20130130154500_create_program_locales.rb +0 -8
  306. data/db/migrate/20130130223342_add_settings_to_users.rb +0 -5
  307. data/db/migrate/20130130223609_add_locale_available_to_program.rb +0 -5
  308. data/db/migrate/20130130223810_add_locales_to_versions.rb +0 -5
  309. data/db/migrate/20130130224141_add_locale_name_to_program.rb +0 -5
  310. data/db/migrate/20130130224327_add_admin_type_to_admins.rb +0 -5
  311. data/db/migrate/20130130225223_add_deleted_at_to_models.rb +0 -9
  312. data/db/migrate/20130130230516_create_translations.rb +0 -13
  313. data/db/migrate/20130131005653_add_timeout_field_to_program.rb +0 -7
  314. data/db/migrate/20130131144951_create_stylesheets.rb +0 -14
  315. data/db/migrate/20130202132442_add_tos_to_program.rb +0 -5
  316. data/db/migrate/20130202133149_add_programid_to_terms.rb +0 -23
  317. data/db/migrate/20130202193646_add_akm_to_terms_and_conditions.rb +0 -5
  318. data/db/migrate/20130203035054_create_translation_keys.rb +0 -10
  319. data/db/migrate/20130203214314_create_program_settings.rb +0 -9
  320. data/db/migrate/20130204025824_add_translationkey_to_translation.rb +0 -5
  321. data/db/migrate/20130204030555_create_translation_objects.rb +0 -39
  322. data/db/migrate/20130205203152_create_pages.rb +0 -25
  323. data/db/migrate/20130208042652_add_fields_to_page.rb +0 -6
  324. data/db/migrate/20130208043123_create_page_layouts.rb +0 -12
  325. data/db/migrate/20130208051925_add_statusitem_to_page.rb +0 -5
  326. data/db/migrate/20130306012135_add_fields_to_user.rb +0 -40
  327. data/db/migrate/20130306162357_change_bad_fields_on_user.rb +0 -11
  328. data/db/migrate/20130306163554_add_password_created_at_to_user.rb +0 -6
  329. data/db/migrate/20130306165455_add_confirmable_to_user.rb +0 -14
  330. data/db/migrate/20130306211253_add_username_index_to_user.rb +0 -41
  331. data/db/migrate/20130313011833_add_field_to_user.rb +0 -5
  332. data/db/migrate/20130326135125_create_raffle_v1_posts.rb +0 -10
  333. data/db/migrate/20130326174121_create_raffle_v1_comments.rb +0 -10
  334. data/lib/database_cleaner-0.7.2/Gemfile.lock +0 -163
  335. data/lib/database_cleaner-0.7.2/History.txt +0 -209
  336. data/lib/database_cleaner-0.7.2/LICENSE +0 -20
  337. data/lib/database_cleaner-0.7.2/README.textile +0 -223
  338. data/lib/database_cleaner-0.7.2/Rakefile +0 -65
  339. data/lib/database_cleaner-0.7.2/TODO +0 -3
  340. data/lib/database_cleaner-0.7.2/VERSION.yml +0 -5
  341. data/lib/database_cleaner-0.7.2/cucumber.yml +0 -1
  342. data/lib/database_cleaner-0.7.2/examples/Gemfile +0 -49
  343. data/lib/database_cleaner-0.7.2/examples/Gemfile.lock +0 -163
  344. data/lib/database_cleaner-0.7.2/examples/config/database.yml.example +0 -8
  345. data/lib/database_cleaner-0.7.2/examples/features/example.feature +0 -11
  346. data/lib/database_cleaner-0.7.2/examples/features/example_multiple_db.feature +0 -23
  347. data/lib/database_cleaner-0.7.2/examples/features/example_multiple_orm.feature +0 -22
  348. data/lib/database_cleaner-0.7.2/examples/features/step_definitions/activerecord_steps.rb +0 -31
  349. data/lib/database_cleaner-0.7.2/examples/features/step_definitions/couchpotato_steps.rb +0 -31
  350. data/lib/database_cleaner-0.7.2/examples/features/step_definitions/datamapper_steps.rb +0 -37
  351. data/lib/database_cleaner-0.7.2/examples/features/step_definitions/mongoid_steps.rb +0 -23
  352. data/lib/database_cleaner-0.7.2/examples/features/step_definitions/mongomapper_steps.rb +0 -31
  353. data/lib/database_cleaner-0.7.2/examples/features/step_definitions/translation_steps.rb +0 -55
  354. data/lib/database_cleaner-0.7.2/examples/features/support/env.rb +0 -62
  355. data/lib/database_cleaner-0.7.2/examples/lib/activerecord_models.rb +0 -41
  356. data/lib/database_cleaner-0.7.2/examples/lib/couchpotato_models.rb +0 -61
  357. data/lib/database_cleaner-0.7.2/examples/lib/datamapper_models.rb +0 -50
  358. data/lib/database_cleaner-0.7.2/examples/lib/mongoid_models.rb +0 -49
  359. data/lib/database_cleaner-0.7.2/examples/lib/mongomapper_models.rb +0 -51
  360. data/lib/database_cleaner-0.7.2/features/cleaning.feature +0 -22
  361. data/lib/database_cleaner-0.7.2/features/cleaning_default_strategy.feature +0 -19
  362. data/lib/database_cleaner-0.7.2/features/cleaning_multiple_dbs.feature +0 -21
  363. data/lib/database_cleaner-0.7.2/features/cleaning_multiple_orms.feature +0 -29
  364. data/lib/database_cleaner-0.7.2/features/step_definitions/database_cleaner_steps.rb +0 -32
  365. data/lib/database_cleaner-0.7.2/features/support/env.rb +0 -7
  366. data/lib/database_cleaner-0.7.2/features/support/feature_runner.rb +0 -39
  367. data/lib/database_cleaner-0.7.2/lib/database_cleaner.rb +0 -3
  368. data/lib/database_cleaner-0.7.2/lib/database_cleaner/active_record/base.rb +0 -53
  369. data/lib/database_cleaner-0.7.2/lib/database_cleaner/active_record/deletion.rb +0 -69
  370. data/lib/database_cleaner-0.7.2/lib/database_cleaner/active_record/transaction.rb +0 -28
  371. data/lib/database_cleaner-0.7.2/lib/database_cleaner/active_record/truncation.rb +0 -151
  372. data/lib/database_cleaner-0.7.2/lib/database_cleaner/base.rb +0 -138
  373. data/lib/database_cleaner-0.7.2/lib/database_cleaner/configuration.rb +0 -94
  374. data/lib/database_cleaner-0.7.2/lib/database_cleaner/couch_potato/base.rb +0 -7
  375. data/lib/database_cleaner-0.7.2/lib/database_cleaner/couch_potato/truncation.rb +0 -28
  376. data/lib/database_cleaner-0.7.2/lib/database_cleaner/cucumber.rb +0 -11
  377. data/lib/database_cleaner-0.7.2/lib/database_cleaner/data_mapper/base.rb +0 -21
  378. data/lib/database_cleaner-0.7.2/lib/database_cleaner/data_mapper/transaction.rb +0 -26
  379. data/lib/database_cleaner-0.7.2/lib/database_cleaner/data_mapper/truncation.rb +0 -175
  380. data/lib/database_cleaner-0.7.2/lib/database_cleaner/generic/base.rb +0 -20
  381. data/lib/database_cleaner-0.7.2/lib/database_cleaner/generic/truncation.rb +0 -37
  382. data/lib/database_cleaner-0.7.2/lib/database_cleaner/mongo/truncation.rb +0 -22
  383. data/lib/database_cleaner-0.7.2/lib/database_cleaner/mongo_mapper/base.rb +0 -20
  384. data/lib/database_cleaner-0.7.2/lib/database_cleaner/mongo_mapper/truncation.rb +0 -19
  385. data/lib/database_cleaner-0.7.2/lib/database_cleaner/mongoid/base.rb +0 -20
  386. data/lib/database_cleaner-0.7.2/lib/database_cleaner/mongoid/truncation.rb +0 -20
  387. data/lib/database_cleaner-0.7.2/lib/database_cleaner/null_strategy.rb +0 -15
  388. data/lib/database_cleaner-0.7.2/lib/database_cleaner/sequel/base.rb +0 -22
  389. data/lib/database_cleaner-0.7.2/lib/database_cleaner/sequel/transaction.rb +0 -25
  390. data/lib/database_cleaner-0.7.2/lib/database_cleaner/sequel/truncation.rb +0 -50
  391. data/lib/database_cleaner-0.7.2/spec/database_cleaner/active_record/base_spec.rb +0 -144
  392. data/lib/database_cleaner-0.7.2/spec/database_cleaner/active_record/transaction_spec.rb +0 -77
  393. data/lib/database_cleaner-0.7.2/spec/database_cleaner/active_record/truncation_spec.rb +0 -76
  394. data/lib/database_cleaner-0.7.2/spec/database_cleaner/base_spec.rb +0 -493
  395. data/lib/database_cleaner-0.7.2/spec/database_cleaner/configuration_spec.rb +0 -294
  396. data/lib/database_cleaner-0.7.2/spec/database_cleaner/couch_potato/truncation_spec.rb +0 -41
  397. data/lib/database_cleaner-0.7.2/spec/database_cleaner/data_mapper/base_spec.rb +0 -30
  398. data/lib/database_cleaner-0.7.2/spec/database_cleaner/data_mapper/transaction_spec.rb +0 -23
  399. data/lib/database_cleaner-0.7.2/spec/database_cleaner/data_mapper/truncation_spec.rb +0 -11
  400. data/lib/database_cleaner-0.7.2/spec/database_cleaner/generic/base_spec.rb +0 -22
  401. data/lib/database_cleaner-0.7.2/spec/database_cleaner/generic/truncation_spec.rb +0 -78
  402. data/lib/database_cleaner-0.7.2/spec/database_cleaner/mongo_mapper/base_spec.rb +0 -33
  403. data/lib/database_cleaner-0.7.2/spec/database_cleaner/mongo_mapper/mongo_examples.rb +0 -8
  404. data/lib/database_cleaner-0.7.2/spec/database_cleaner/mongo_mapper/truncation_spec.rb +0 -74
  405. data/lib/database_cleaner-0.7.2/spec/database_cleaner/sequel/base_spec.rb +0 -32
  406. data/lib/database_cleaner-0.7.2/spec/database_cleaner/sequel/transaction_spec.rb +0 -21
  407. data/lib/database_cleaner-0.7.2/spec/database_cleaner/sequel/truncation_spec.rb +0 -13
  408. data/lib/database_cleaner-0.7.2/spec/database_cleaner/shared_strategy_spec.rb +0 -13
  409. data/lib/database_cleaner-0.7.2/spec/rcov.opts +0 -1
  410. data/lib/database_cleaner-0.7.2/spec/spec.opts +0 -7
  411. data/lib/database_cleaner-0.7.2/spec/spec_helper.rb +0 -19
  412. data/lib/generators/raffle_v1/install/USAGE +0 -8
  413. data/test/dummy/config/initializers/secret_token.rb +0 -7
  414. data/test/dummy/script/rails +0 -6
  415. data/test/fixtures/raffle_v1/comments.yml +0 -9
  416. data/test/fixtures/raffle_v1/posts.yml +0 -9
  417. data/test/functional/raffle_v1/posts_controller_test.rb +0 -51
  418. data/test/unit/helpers/raffle_v1/comments_helper_test.rb +0 -6
@@ -1,138 +0,0 @@
1
- require 'database_cleaner/null_strategy'
2
- module DatabaseCleaner
3
- class Base
4
-
5
- def initialize(desired_orm = nil,opts = {})
6
- if [:autodetect, nil, "autodetect"].include?(desired_orm)
7
- autodetect
8
- else
9
- self.orm = desired_orm
10
- end
11
- self.db = opts[:connection] if opts.has_key? :connection
12
- set_default_orm_strategy
13
- end
14
-
15
- def db=(desired_db)
16
- self.strategy_db = desired_db
17
- @db = desired_db
18
- end
19
-
20
- def strategy_db=(desired_db)
21
- if strategy.respond_to? :db=
22
- strategy.db = desired_db
23
- elsif desired_db!= :default
24
- raise ArgumentError, "You must provide a strategy object that supports non default databases when you specify a database"
25
- end
26
- end
27
-
28
- def db
29
- @db || :default
30
- end
31
-
32
- def create_strategy(*args)
33
- strategy, *strategy_args = args
34
- orm_strategy(strategy).new(*strategy_args)
35
- end
36
-
37
- def clean_with(*args)
38
- strategy = create_strategy(*args)
39
- strategy.clean
40
- strategy
41
- end
42
-
43
- alias clean_with! clean_with
44
-
45
- def strategy=(args)
46
- strategy, *strategy_args = args
47
- if strategy.is_a?(Symbol)
48
- @strategy = create_strategy(*args)
49
- elsif strategy_args.empty?
50
- @strategy = strategy
51
- else
52
- raise ArgumentError, "You must provide a strategy object, or a symbol for a known strategy along with initialization params."
53
- end
54
-
55
- self.strategy_db = self.db
56
-
57
- @strategy
58
- end
59
-
60
- def strategy
61
- @strategy || NullStrategy
62
- end
63
-
64
- def orm=(desired_orm)
65
- @orm = desired_orm.to_sym
66
- end
67
-
68
- def orm
69
- @orm || autodetect
70
- end
71
-
72
- def start
73
- strategy.start
74
- end
75
-
76
- def clean
77
- strategy.clean
78
- end
79
-
80
- alias clean! clean
81
-
82
- def auto_detected?
83
- !!@autodetected
84
- end
85
-
86
- #TODO make strategies directly comparable
87
- def ==(other)
88
- self.orm == other.orm && self.db == other.db && self.strategy.class == other.strategy.class
89
- end
90
-
91
- private
92
-
93
- def orm_module
94
- ::DatabaseCleaner.orm_module(orm)
95
- end
96
-
97
- def orm_strategy(strategy)
98
- require "database_cleaner/#{orm.to_s}/#{strategy.to_s}"
99
- orm_module.const_get(strategy.to_s.capitalize)
100
- rescue LoadError => e
101
- if orm_module.respond_to? :available_strategies
102
- raise UnknownStrategySpecified, "The '#{strategy}' strategy does not exist for the #{orm} ORM! Available strategies: #{orm_module.available_strategies.join(', ')}"
103
- else
104
- raise UnknownStrategySpecified, "The '#{strategy}' strategy does not exist for the #{orm} ORM!"
105
- end
106
- end
107
-
108
- def autodetect
109
- @orm ||= begin
110
- @autodetected = true
111
- if defined? ::ActiveRecord
112
- :active_record
113
- elsif defined? ::DataMapper
114
- :data_mapper
115
- elsif defined? ::MongoMapper
116
- :mongo_mapper
117
- elsif defined? ::Mongoid
118
- :mongoid
119
- elsif defined? ::CouchPotato
120
- :couch_potato
121
- elsif defined? ::Sequel
122
- :sequel
123
- else
124
- raise NoORMDetected, "No known ORM was detected! Is ActiveRecord, DataMapper, Sequel, MongoMapper, Mongoid, or CouchPotato loaded?"
125
- end
126
- end
127
- end
128
-
129
- def set_default_orm_strategy
130
- case orm
131
- when :active_record, :data_mapper, :sequel
132
- self.strategy = :transaction
133
- when :mongo_mapper, :mongoid, :couch_potato
134
- self.strategy = :truncation
135
- end
136
- end
137
- end
138
- end
@@ -1,94 +0,0 @@
1
- require 'database_cleaner/base'
2
-
3
- module DatabaseCleaner
4
-
5
- class NoORMDetected < StandardError; end
6
- class UnknownStrategySpecified < ArgumentError; end
7
-
8
- class << self
9
- def [](orm,opts = {})
10
- raise NoORMDetected unless orm
11
- @connections ||= []
12
- cleaner = DatabaseCleaner::Base.new(orm,opts)
13
- connections.push cleaner
14
- cleaner
15
- end
16
-
17
- def app_root=(desired_root)
18
- @app_root = desired_root
19
- end
20
-
21
- def app_root
22
- @app_root || Dir.pwd
23
- end
24
-
25
- def connections
26
- @connections ||= [::DatabaseCleaner::Base.new]
27
- end
28
-
29
- def logger=(log_source)
30
- @logger = log_source
31
- end
32
-
33
- def logger
34
- return @logger if @logger
35
-
36
- @logger = Logger.new(STDOUT)
37
- @logger.level = Logger::ERROR
38
- @logger
39
- end
40
-
41
- def strategy=(stratagem)
42
- connections.each { |connect| connect.strategy = stratagem }
43
- remove_duplicates
44
- end
45
-
46
- def orm=(orm)
47
- connections.each { |connect| connect.orm = orm }
48
- remove_duplicates
49
- end
50
-
51
- def start
52
- connections.each { |connection| connection.start }
53
- end
54
-
55
- def clean
56
- connections.each { |connection| connection.clean }
57
- end
58
-
59
- alias clean! clean
60
-
61
- def clean_with(*args)
62
- connections.each { |connection| connection.clean_with(*args) }
63
- end
64
-
65
- alias clean_with! clean_with
66
-
67
- def remove_duplicates
68
- temp = []
69
- connections.each do |connect|
70
- temp.push connect unless temp.include? connect
71
- end
72
- @connections = temp
73
- end
74
-
75
- def orm_module(symbol)
76
- case symbol
77
- when :active_record
78
- DatabaseCleaner::ActiveRecord
79
- when :data_mapper
80
- DatabaseCleaner::DataMapper
81
- when :mongo
82
- DatabaseCleaner::Mongo
83
- when :mongoid
84
- DatabaseCleaner::Mongoid
85
- when :mongo_mapper
86
- DatabaseCleaner::MongoMapper
87
- when :couch_potato
88
- DatabaseCleaner::CouchPotato
89
- when :sequel
90
- DatabaseCleaner::Sequel
91
- end
92
- end
93
- end
94
- end
@@ -1,7 +0,0 @@
1
- module DatabaseCleaner
2
- module CouchPotato
3
- def self.available_strategies
4
- %w[truncation]
5
- end
6
- end
7
- end
@@ -1,28 +0,0 @@
1
- require 'database_cleaner/generic/truncation'
2
-
3
- module DatabaseCleaner
4
- module CouchPotato
5
- class Truncation
6
- include ::DatabaseCleaner::Generic::Truncation
7
-
8
- def initialize(options = {})
9
- if options.has_key?(:only) || options.has_key?(:except)
10
- raise ArgumentError, "The :only and :except options are not available for use with CouchPotato/CouchDB."
11
- elsif !options.empty?
12
- raise ArgumentError, "Unsupported option. You specified #{options.keys.join(',')}."
13
- end
14
- super
15
- end
16
-
17
- def clean
18
- database.recreate!
19
- end
20
-
21
- private
22
-
23
- def database
24
- ::CouchPotato.couchrest_database
25
- end
26
- end
27
- end
28
- end
@@ -1,11 +0,0 @@
1
- Before do
2
- DatabaseCleaner.start
3
- end
4
-
5
- After do
6
- begin
7
- DatabaseCleaner.clean
8
- rescue Exception => e
9
- DatabaseCleaner.logger.error "Exception encountered by DatabaseCleaner in Cucumber After block: #{e}"
10
- end
11
- end
@@ -1,21 +0,0 @@
1
- require 'database_cleaner/generic/base'
2
- module DatabaseCleaner
3
- module DataMapper
4
- def self.available_strategies
5
- %w[truncation transaction]
6
- end
7
-
8
- module Base
9
- include ::DatabaseCleaner::Generic::Base
10
-
11
- def db=(desired_db)
12
- @db = desired_db
13
- end
14
-
15
- def db
16
- @db || :default
17
- end
18
-
19
- end
20
- end
21
- end
@@ -1,26 +0,0 @@
1
- require 'database_cleaner/data_mapper/base'
2
-
3
- module DatabaseCleaner::DataMapper
4
- class Transaction
5
- include ::DatabaseCleaner::DataMapper::Base
6
-
7
- def start(repository = self.db)
8
- ::DataMapper.repository(repository) do |r|
9
- transaction = DataMapper::Transaction.new(r)
10
- transaction.begin
11
- r.adapter.push_transaction(transaction)
12
- end
13
- end
14
-
15
- def clean(repository = self.db)
16
- ::DataMapper.repository(repository) do |r|
17
- adapter = r.adapter
18
- while adapter.current_transaction
19
- adapter.current_transaction.rollback
20
- adapter.pop_transaction
21
- end
22
- end
23
- end
24
-
25
- end
26
- end
@@ -1,175 +0,0 @@
1
- require "database_cleaner/generic/truncation"
2
- require 'database_cleaner/data_mapper/base'
3
-
4
- module DataMapper
5
- module Adapters
6
-
7
- class DataObjectsAdapter
8
-
9
- def storage_names(repository = :default)
10
- raise NotImplementedError
11
- end
12
-
13
- end
14
-
15
- class MysqlAdapter < DataObjectsAdapter
16
-
17
- # taken from http://github.com/godfat/dm-mapping/tree/master
18
- def storage_names(repository = :default)
19
- select 'SHOW TABLES'
20
- end
21
-
22
- def truncate_table(table_name)
23
- execute("TRUNCATE TABLE #{quote_name(table_name)};")
24
- end
25
-
26
- # copied from activerecord
27
- def disable_referential_integrity
28
- old = select("SELECT @@FOREIGN_KEY_CHECKS;")
29
- begin
30
- execute("SET FOREIGN_KEY_CHECKS = 0;")
31
- yield
32
- ensure
33
- execute("SET FOREIGN_KEY_CHECKS = ?", *old)
34
- end
35
- end
36
-
37
- end
38
-
39
-
40
- class Sqlite3Adapter < DataObjectsAdapter
41
-
42
- # taken from http://github.com/godfat/dm-mapping/tree/master
43
- def storage_names(repository = :default)
44
- # activerecord-2.1.0/lib/active_record/connection_adapters/sqlite_adapter.rb: 177
45
- sql = <<-SQL
46
- SELECT name
47
- FROM sqlite_master
48
- WHERE type = 'table' AND NOT name = 'sqlite_sequence'
49
- SQL
50
- # activerecord-2.1.0/lib/active_record/connection_adapters/sqlite_adapter.rb: 181
51
- select(sql)
52
- end
53
-
54
- def truncate_table(table_name)
55
- execute("DELETE FROM #{quote_name(table_name)};")
56
- execute("DELETE FROM sqlite_sequence where name = '#{table_name}';")
57
- end
58
-
59
- # this is a no-op copied from activerecord
60
- # i didn't find out if/how this is possible
61
- # activerecord also doesn't do more here
62
- def disable_referential_integrity
63
- yield
64
- end
65
-
66
- end
67
-
68
- class SqliteAdapter < DataObjectsAdapter
69
- # taken from http://github.com/godfat/dm-mapping/tree/master
70
- def storage_names(repository = :default)
71
- # activerecord-2.1.0/lib/active_record/connection_adapters/sqlite_adapter.rb: 177
72
- sql = <<-SQL
73
- SELECT name
74
- FROM sqlite_master
75
- WHERE type = 'table' AND NOT name = 'sqlite_sequence'
76
- SQL
77
- # activerecord-2.1.0/lib/active_record/connection_adapters/sqlite_adapter.rb: 181
78
- select(sql)
79
- end
80
-
81
- def truncate_table(table_name)
82
- execute("DELETE FROM #{quote_name(table_name)};")
83
- execute("DELETE FROM sqlite_sequence where name = '#{table_name}';")
84
- end
85
-
86
- # this is a no-op copied from activerecord
87
- # i didn't find out if/how this is possible
88
- # activerecord also doesn't do more here
89
- def disable_referential_integrity
90
- yield
91
- end
92
-
93
- end
94
-
95
- # FIXME
96
- # i don't know if this works
97
- # i basically just copied activerecord code to get a rough idea what they do.
98
- # i don't have postgres available, so i won't be the one to write this.
99
- # maybe codes below gets some postgres/datamapper user going, though.
100
- class PostgresAdapter < DataObjectsAdapter
101
-
102
- # taken from http://github.com/godfat/dm-mapping/tree/master
103
- def storage_names(repository = :default)
104
- sql = <<-SQL
105
- SELECT table_name FROM "information_schema"."tables"
106
- WHERE table_schema = current_schema() and table_type = 'BASE TABLE'
107
- SQL
108
- select(sql)
109
- end
110
-
111
- def truncate_table(table_name)
112
- execute("TRUNCATE TABLE #{quote_name(table_name)} RESTART IDENTITY CASCADE;")
113
- end
114
-
115
- # FIXME
116
- # copied from activerecord
117
- def supports_disable_referential_integrity?
118
- version = select("SHOW server_version")[0][0].split('.')
119
- (version[0].to_i >= 8 && version[1].to_i >= 1) ? true : false
120
- rescue
121
- return false
122
- end
123
-
124
- # FIXME
125
- # copied unchanged from activerecord
126
- def disable_referential_integrity(repository = :default)
127
- if supports_disable_referential_integrity? then
128
- execute(storage_names(repository).collect do |name|
129
- "ALTER TABLE #{quote_name(name)} DISABLE TRIGGER ALL"
130
- end.join(";"))
131
- end
132
- yield
133
- ensure
134
- if supports_disable_referential_integrity? then
135
- execute(storage_names(repository).collect do |name|
136
- "ALTER TABLE #{quote_name(name)} ENABLE TRIGGER ALL"
137
- end.join(";"))
138
- end
139
- end
140
-
141
- end
142
-
143
- end
144
- end
145
-
146
-
147
- module DatabaseCleaner
148
- module DataMapper
149
- class Truncation
150
- include ::DatabaseCleaner::DataMapper::Base
151
- include ::DatabaseCleaner::Generic::Truncation
152
-
153
- def clean(repository = self.db)
154
- adapter = ::DataMapper.repository(repository).adapter
155
- adapter.disable_referential_integrity do
156
- tables_to_truncate(repository).each do |table_name|
157
- adapter.truncate_table table_name
158
- end
159
- end
160
- end
161
-
162
- private
163
-
164
- def tables_to_truncate(repository = self.db)
165
- (@only || ::DataMapper.repository(repository).adapter.storage_names(repository)) - @tables_to_exclude
166
- end
167
-
168
- # overwritten
169
- def migration_storage_name
170
- 'migration_info'
171
- end
172
-
173
- end
174
- end
175
- end