radiant 0.6.9 → 0.7.0

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

Potentially problematic release.


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

Files changed (2127) hide show
  1. data/CHANGELOG +105 -3
  2. data/CONTRIBUTORS +29 -0
  3. data/INSTALL +4 -2
  4. data/LICENSE +1 -1
  5. data/README +4 -0
  6. data/app/controllers/admin/abstract_model_controller.rb +4 -0
  7. data/app/controllers/admin/extensions_controller.rb +5 -0
  8. data/app/controllers/admin/layouts_controller.rb +6 -0
  9. data/app/controllers/admin/page_parts_controller.rb +9 -0
  10. data/app/controllers/admin/pages_controller.rb +56 -0
  11. data/app/controllers/admin/preferences_controller.rb +46 -0
  12. data/app/controllers/admin/references_controller.rb +7 -0
  13. data/app/controllers/admin/resource_controller.rb +180 -0
  14. data/app/controllers/admin/snippets_controller.rb +2 -0
  15. data/app/controllers/admin/users_controller.rb +21 -0
  16. data/app/controllers/admin/welcome_controller.rb +1 -1
  17. data/app/controllers/application.rb +7 -3
  18. data/app/controllers/site_controller.rb +0 -7
  19. data/app/helpers/admin/extensions_helper.rb +2 -0
  20. data/app/helpers/admin/layouts_helper.rb +2 -0
  21. data/app/helpers/admin/pages_helper.rb +59 -0
  22. data/app/helpers/admin/preferences_helper.rb +2 -0
  23. data/app/helpers/admin/references_helper.rb +42 -0
  24. data/app/helpers/admin/snippets_helper.rb +2 -0
  25. data/app/helpers/admin/users_helper.rb +8 -0
  26. data/app/helpers/application_helper.rb +12 -8
  27. data/app/models/page.rb +33 -3
  28. data/app/models/page_part.rb +5 -1
  29. data/app/models/radiant/config.rb +3 -3
  30. data/app/models/response_cache.rb +20 -12
  31. data/app/models/standard_tags.rb +285 -180
  32. data/app/models/user.rb +5 -1
  33. data/app/views/admin/extensions/index.html.haml +40 -0
  34. data/app/views/admin/layouts/_form.html.haml +36 -0
  35. data/app/views/admin/layouts/edit.html.haml +7 -0
  36. data/app/views/admin/layouts/index.html.haml +34 -0
  37. data/app/views/admin/layouts/new.html.haml +5 -0
  38. data/app/views/admin/layouts/remove.html.haml +16 -0
  39. data/app/views/admin/page_parts/_page_part.html.haml +15 -0
  40. data/app/views/admin/pages/_edit_styles.html.haml +15 -0
  41. data/app/views/admin/pages/_fields.html.haml +60 -0
  42. data/app/views/admin/pages/_meta_row.html.haml +6 -0
  43. data/app/views/admin/pages/_node.html.haml +25 -0
  44. data/app/views/admin/pages/_popups.html.haml +30 -0
  45. data/app/views/admin/pages/children.html.haml +2 -0
  46. data/app/views/admin/pages/edit.html.haml +9 -0
  47. data/app/views/admin/pages/index.html.haml +28 -0
  48. data/app/views/admin/pages/new.html.haml +9 -0
  49. data/app/views/admin/pages/remove.html.haml +21 -0
  50. data/app/views/admin/preferences/edit.html.haml +36 -0
  51. data/app/views/admin/references/_tag_reference.haml +3 -0
  52. data/app/views/admin/references/filters.js.erb +5 -0
  53. data/app/views/admin/references/tags.js.erb +5 -0
  54. data/app/views/admin/snippets/_form.html.haml +29 -0
  55. data/app/views/admin/snippets/edit.html.haml +5 -0
  56. data/app/views/admin/snippets/index.html.haml +30 -0
  57. data/app/views/admin/snippets/new.html.haml +5 -0
  58. data/app/views/admin/snippets/remove.html.haml +19 -0
  59. data/app/views/admin/users/_form.html.haml +74 -0
  60. data/app/views/admin/users/edit.html.haml +5 -0
  61. data/app/views/admin/users/index.html.haml +35 -0
  62. data/app/views/admin/users/new.html.haml +5 -0
  63. data/app/views/admin/users/remove.html.haml +18 -0
  64. data/app/views/layouts/application.html.haml +5 -5
  65. data/config/boot.rb +24 -7
  66. data/config/environment.rb +7 -3
  67. data/config/environments/development.rb +0 -1
  68. data/config/environments/test.rb +1 -5
  69. data/config/routes.rb +21 -49
  70. data/db/migrate/20081203140407_add_indexes.rb +19 -0
  71. data/db/schema.rb +10 -3
  72. data/db/templates/roasters.yml +1210 -0
  73. data/lib/generators/extension/templates/extension.rb +4 -2
  74. data/lib/generators/extension/templates/spec_helper.rb +2 -3
  75. data/lib/generators/extension/templates/tasks.rake +1 -1
  76. data/lib/generators/extension_controller/extension_controller_generator.rb +11 -3
  77. data/lib/generators/extension_controller/templates/controller.rb +0 -4
  78. data/lib/generators/extension_controller/templates/functional_test.rb +1 -7
  79. data/lib/generators/extension_controller/templates/{view.rhtml → view.html.erb} +0 -0
  80. data/lib/generators/extension_mailer/USAGE +17 -0
  81. data/lib/generators/extension_mailer/extension_mailer_generator.rb +68 -0
  82. data/lib/generators/extension_mailer/templates/fixture.erb +3 -0
  83. data/lib/generators/extension_mailer/templates/mailer.rb +15 -0
  84. data/lib/generators/extension_mailer/templates/unit_test.rb +21 -0
  85. data/lib/generators/extension_mailer/templates/view.erb +3 -0
  86. data/lib/generators/extension_migration/USAGE +34 -0
  87. data/lib/generators/extension_migration/extension_migration_generator.rb +25 -0
  88. data/lib/generators/extension_migration/templates/migration.rb +11 -0
  89. data/lib/generators/extension_model/extension_model_generator.rb +10 -2
  90. data/lib/generators/extension_model/templates/fixtures.yml +11 -3
  91. data/lib/generators/extension_model/templates/migration.rb +4 -1
  92. data/lib/generators/extension_model/templates/unit_test.rb +2 -4
  93. data/lib/generators/generator_base_extension.rb +0 -7
  94. data/lib/generators/instance/templates/instance_boot.rb +27 -7
  95. data/lib/generators/instance/templates/instance_environment.rb +1 -2
  96. data/lib/generators/instance/templates/instance_generate +2 -0
  97. data/lib/local_time.rb +2 -2
  98. data/lib/login_system.rb +18 -31
  99. data/lib/plugins/active_record_extensions/lib/active_record_extensions.rb +30 -1
  100. data/lib/plugins/extension_patches/lib/mailer_view_paths_extension.rb +1 -1
  101. data/lib/plugins/string_extensions/lib/string_extensions.rb +7 -0
  102. data/lib/radiant.rb +2 -2
  103. data/lib/radiant/admin_ui.rb +41 -3
  104. data/lib/radiant/compat.rb +10 -0
  105. data/lib/radiant/extension.rb +9 -10
  106. data/lib/radiant/extension/script.rb +103 -7
  107. data/lib/radiant/extension_loader.rb +1 -1
  108. data/lib/radiant/extension_migrator.rb +77 -38
  109. data/lib/radiant/initializer.rb +13 -1
  110. data/lib/radiant/legacy_routes.rb +72 -0
  111. data/lib/radiant/resource_responses.rb +115 -0
  112. data/lib/radiant/taggable.rb +17 -0
  113. data/lib/tasks/database.rake +0 -42
  114. data/lib/tasks/extensions.rake +1 -23
  115. data/lib/tasks/framework.rake +3 -1
  116. data/lib/tasks/instance.rake +7 -10
  117. data/lib/tasks/release.rake +22 -8
  118. data/lib/tasks/rspec.rake +173 -0
  119. data/lib/tasks/undefine.rake +1 -1
  120. data/public/javascripts/admin/admin.js +14 -16
  121. data/public/javascripts/admin/sitemap.js +1 -1
  122. data/public/javascripts/controls.js +4 -6
  123. data/public/javascripts/dragdrop.js +1 -3
  124. data/public/javascripts/effects.js +1 -3
  125. data/public/javascripts/prototype.js +132 -91
  126. data/public/stylesheets/admin/main.css +13 -1
  127. data/script/autospec +5 -0
  128. data/script/dbconsole +3 -0
  129. data/script/generate +2 -2
  130. data/script/performance/request +3 -0
  131. data/script/spec +3 -10
  132. data/script/spec_server +22 -5
  133. data/spec/controllers/admin/export_controller_spec.rb +1 -1
  134. data/spec/controllers/admin/extensions_controller_spec.rb +21 -0
  135. data/spec/controllers/admin/layouts_controller_spec.rb +56 -0
  136. data/spec/controllers/admin/pages_controller_spec.rb +187 -0
  137. data/spec/controllers/admin/preferences_controller_spec.rb +38 -0
  138. data/spec/controllers/admin/references_controller_spec.rb +15 -0
  139. data/spec/controllers/admin/snippets_controller_spec.rb +51 -0
  140. data/spec/controllers/admin/users_controller_spec.rb +48 -0
  141. data/spec/controllers/admin/welcome_controller_spec.rb +2 -2
  142. data/spec/controllers/application_controller_spec.rb +7 -3
  143. data/spec/controllers/site_controller_spec.rb +5 -38
  144. data/spec/datasets/file_not_found_dataset.rb +22 -0
  145. data/spec/datasets/home_page_dataset.rb +64 -0
  146. data/spec/datasets/layouts_dataset.rb +58 -0
  147. data/spec/datasets/markup_pages_dataset.rb +13 -0
  148. data/spec/datasets/pages_dataset.rb +56 -0
  149. data/spec/datasets/pages_with_layouts_dataset.rb +10 -0
  150. data/spec/datasets/snippets_dataset.rb +38 -0
  151. data/spec/datasets/users_and_pages_dataset.rb +9 -0
  152. data/spec/datasets/users_dataset.rb +43 -0
  153. data/spec/fixtures/example_extension/README +3 -0
  154. data/spec/fixtures/example_extension/Rakefile +120 -0
  155. data/spec/fixtures/example_extension/example_extension.rb +21 -0
  156. data/spec/fixtures/example_extension/lib/tasks/example_extension_tasks.rake +28 -0
  157. data/spec/fixtures/example_extension/spec/spec.opts +6 -0
  158. data/spec/fixtures/example_extension/spec/spec_helper.rb +36 -0
  159. data/spec/generators/extension_controller_generator_spec.rb +85 -0
  160. data/spec/generators/extension_generator_spec.rb +172 -0
  161. data/spec/generators/extension_generators_spec_helper.rb +139 -0
  162. data/spec/generators/extension_mailer_generator_spec.rb +60 -0
  163. data/spec/generators/extension_migration_generator_spec.rb +21 -0
  164. data/spec/generators/extension_model_generator_spec.rb +61 -0
  165. data/spec/helpers/admin/extensions_helper_spec.rb +4 -0
  166. data/spec/helpers/admin/layouts_helper_spec.rb +4 -0
  167. data/spec/helpers/admin/node_helper_spec.rb +33 -31
  168. data/spec/helpers/admin/pages_helper_spec.rb +63 -0
  169. data/spec/helpers/admin/preferences_helper_spec.rb +11 -0
  170. data/spec/helpers/admin/regions_helper_spec.rb +16 -13
  171. data/spec/helpers/admin/snippets_helper_spec.rb +4 -0
  172. data/spec/helpers/admin/users_helper_spec.rb +11 -0
  173. data/spec/helpers/application_helper_spec.rb +75 -61
  174. data/spec/integration/admin/content_negotiation_spec.rb +27 -0
  175. data/spec/integration/admin/pages_integration_spec.rb +118 -0
  176. data/spec/integration/admin/permission_integration_spec.rb +24 -0
  177. data/spec/integration/admin/snippets_integration_spec.rb +73 -0
  178. data/spec/integration/admin/user_management_integration_spec.rb +80 -0
  179. data/spec/integration/admin/user_preferences_integration_spec.rb +19 -0
  180. data/spec/integration/page_serving_spec.rb +37 -0
  181. data/spec/lib/autotest_spec.rb +1 -1
  182. data/spec/lib/core_ext/string_ext_spec.rb +10 -0
  183. data/spec/lib/login_system_spec.rb +143 -135
  184. data/spec/lib/radiant/admin_ui_spec.rb +33 -1
  185. data/spec/lib/radiant/extension/script_spec.rb +111 -4
  186. data/spec/lib/radiant/extension_migrator_spec.rb +31 -2
  187. data/spec/lib/radiant/extension_spec.rb +5 -1
  188. data/spec/lib/radiant/legacy_routes_spec.rb +14 -0
  189. data/spec/lib/radiant/resource_responses_spec.rb +207 -0
  190. data/spec/lib/radiant/taggable_spec.rb +38 -2
  191. data/{vendor/plugins/rspec/spec → spec/matchers}/autotest_matchers.rb +0 -0
  192. data/spec/matchers/generator_matchers.rb +237 -0
  193. data/spec/matchers/login_system_matcher.rb +1 -1
  194. data/spec/matchers/render_form_errors_matcher.rb +62 -0
  195. data/spec/matchers/render_matcher.rb +2 -2
  196. data/spec/models/file_not_found_page_spec.rb +1 -1
  197. data/spec/models/layout_spec.rb +1 -1
  198. data/spec/models/page_context_spec.rb +2 -4
  199. data/spec/models/page_part_spec.rb +24 -4
  200. data/spec/models/page_spec.rb +162 -110
  201. data/spec/models/radiant/exporter_spec.rb +1 -1
  202. data/spec/models/response_cache_spec.rb +28 -1
  203. data/spec/models/snippet_spec.rb +1 -1
  204. data/spec/models/standard_tags_spec.rb +52 -8
  205. data/spec/models/user_action_observer_spec.rb +1 -1
  206. data/spec/models/user_spec.rb +3 -3
  207. data/spec/spec.opts +1 -0
  208. data/spec/spec_helper.rb +45 -2
  209. data/test/fixtures/extensions/01_basic/basic_extension.rb +1 -1
  210. data/test/fixtures/extensions/01_basic/db/migrate/200812131420_create_initial_schema.rb +10 -0
  211. data/test/fixtures/extensions/01_basic/db/migrate/200812131421_modify_initial_schema.rb +10 -0
  212. data/test/fixtures/extensions/03_upgrading/db/migrate/01_first.rb +7 -0
  213. data/test/fixtures/extensions/03_upgrading/db/migrate/02_second.rb +7 -0
  214. data/test/fixtures/extensions/03_upgrading/db/migrate/03_pending.rb +7 -0
  215. data/test/fixtures/extensions/03_upgrading/db/migrate/04_dont_run.rb +7 -0
  216. data/test/fixtures/extensions/03_upgrading/upgrading_extension.rb +2 -0
  217. data/test/fixtures/extensions/special_characters/db/migrate/001_create_initial_schema.rb +10 -0
  218. data/test/fixtures/extensions/special_characters/special_characters_extension.rb +3 -0
  219. data/test/helpers/page_test_helper.rb +3 -1
  220. data/vendor/extensions/archive/spec/datasets/archive_dataset.rb +51 -0
  221. data/vendor/extensions/archive/spec/models/archive_day_index_page_spec.rb +1 -1
  222. data/vendor/extensions/archive/spec/models/archive_month_index_page_spec.rb +1 -1
  223. data/vendor/extensions/archive/spec/models/archive_page_spec.rb +1 -1
  224. data/vendor/extensions/archive/spec/models/archive_year_index_page_spec.rb +1 -1
  225. data/vendor/extensions/archive/spec/spec_helper.rb +2 -3
  226. data/vendor/extensions/markdown_filter/lib/markdown_filter.rb +5 -4
  227. data/vendor/extensions/markdown_filter/lib/markdown_tags.rb +33 -0
  228. data/vendor/extensions/markdown_filter/lib/smarty_pants_filter.rb +0 -2
  229. data/vendor/extensions/markdown_filter/markdown_filter_extension.rb +18 -1
  230. data/vendor/extensions/markdown_filter/spec/models/markdown_filter_spec.rb +11 -4
  231. data/vendor/extensions/markdown_filter/spec/models/smarty_pants_filter_spec.rb +8 -1
  232. data/vendor/extensions/markdown_filter/spec/spec_helper.rb +2 -3
  233. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/CHANGES +0 -0
  234. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/LICENSE +0 -0
  235. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/README +0 -0
  236. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/bin/bluecloth +0 -0
  237. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/install.rb +0 -0
  238. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/lib/bluecloth.rb +0 -0
  239. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/test.rb +0 -0
  240. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/tests/00_Class.tests.rb +0 -0
  241. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/tests/05_Markdown.tests.rb +0 -0
  242. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/tests/10_Bug.tests.rb +0 -0
  243. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/tests/15_Contrib.tests.rb +0 -0
  244. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/tests/bctestcase.rb +0 -0
  245. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/tests/data/antsugar.txt +0 -0
  246. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/tests/data/ml-announce.txt +0 -0
  247. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/tests/data/re-overflow.txt +0 -0
  248. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/tests/data/re-overflow2.txt +0 -0
  249. data/vendor/{bluecloth → extensions/markdown_filter/vendor/bluecloth}/utils.rb +0 -0
  250. data/vendor/{rubypants → extensions/markdown_filter/vendor/rubypants}/README +0 -0
  251. data/vendor/{rubypants → extensions/markdown_filter/vendor/rubypants}/Rakefile +0 -0
  252. data/vendor/{rubypants → extensions/markdown_filter/vendor/rubypants}/install.rb +0 -0
  253. data/vendor/{rubypants → extensions/markdown_filter/vendor/rubypants}/rubypants.rb +0 -0
  254. data/vendor/{rubypants → extensions/markdown_filter/vendor/rubypants}/test_rubypants.rb +0 -0
  255. data/vendor/extensions/textile_filter/lib/textile_filter.rb +0 -2
  256. data/vendor/extensions/textile_filter/lib/textile_tags.rb +24 -0
  257. data/vendor/extensions/textile_filter/spec/models/textile_filter_spec.rb +9 -1
  258. data/vendor/extensions/textile_filter/spec/spec_helper.rb +2 -3
  259. data/vendor/extensions/textile_filter/textile_filter_extension.rb +3 -2
  260. data/vendor/plugins/dataset/History.txt +9 -0
  261. data/vendor/plugins/dataset/LICENSE +19 -0
  262. data/vendor/plugins/dataset/Manifest.txt +21 -0
  263. data/vendor/plugins/dataset/README.txt +111 -0
  264. data/vendor/plugins/dataset/Rakefile +20 -0
  265. data/vendor/plugins/dataset/TODO +19 -0
  266. data/vendor/plugins/dataset/lib/dataset.rb +123 -0
  267. data/vendor/plugins/dataset/lib/dataset/base.rb +157 -0
  268. data/vendor/plugins/dataset/lib/dataset/collection.rb +19 -0
  269. data/vendor/plugins/dataset/lib/dataset/database/base.rb +30 -0
  270. data/vendor/plugins/dataset/lib/dataset/database/mysql.rb +34 -0
  271. data/vendor/plugins/dataset/lib/dataset/database/postgresql.rb +34 -0
  272. data/vendor/plugins/dataset/lib/dataset/database/sqlite3.rb +32 -0
  273. data/vendor/plugins/dataset/lib/dataset/extensions/rspec.rb +21 -0
  274. data/vendor/plugins/dataset/lib/dataset/extensions/test_unit.rb +60 -0
  275. data/vendor/plugins/dataset/lib/dataset/instance_methods.rb +10 -0
  276. data/vendor/plugins/dataset/lib/dataset/load.rb +47 -0
  277. data/vendor/plugins/dataset/lib/dataset/record/fixture.rb +54 -0
  278. data/vendor/plugins/dataset/lib/dataset/record/meta.rb +42 -0
  279. data/vendor/plugins/dataset/lib/dataset/record/model.rb +41 -0
  280. data/vendor/plugins/dataset/lib/dataset/resolver.rb +110 -0
  281. data/vendor/plugins/dataset/lib/dataset/session.rb +51 -0
  282. data/vendor/plugins/dataset/lib/dataset/session_binding.rb +299 -0
  283. data/vendor/plugins/dataset/lib/dataset/version.rb +9 -0
  284. data/vendor/plugins/dataset/spec/dataset/database/base_spec.rb +21 -0
  285. data/vendor/plugins/dataset/spec/dataset/resolver_spec.rb +110 -0
  286. data/vendor/plugins/dataset/spec/dataset/rspec_spec.rb +137 -0
  287. data/vendor/plugins/dataset/spec/dataset/session_binding_spec.rb +160 -0
  288. data/vendor/plugins/dataset/spec/dataset/session_spec.rb +299 -0
  289. data/vendor/plugins/dataset/spec/dataset/test_unit_spec.rb +209 -0
  290. data/vendor/plugins/{rspec/spec/spec/runner/empty_file.txt → dataset/spec/fixtures/datasets/constant_not_defined.rb} +0 -0
  291. data/vendor/plugins/dataset/spec/fixtures/datasets/ending_with_dataset.rb +2 -0
  292. data/vendor/plugins/dataset/spec/fixtures/datasets/exact_name.rb +2 -0
  293. data/vendor/plugins/dataset/spec/fixtures/datasets/not_a_dataset_base.rb +2 -0
  294. data/vendor/plugins/dataset/spec/fixtures/more_datasets/in_another_directory.rb +2 -0
  295. data/vendor/plugins/dataset/spec/models.rb +6 -0
  296. data/vendor/plugins/dataset/spec/schema.rb +24 -0
  297. data/vendor/plugins/{scenarios → dataset}/spec/spec.opts +0 -0
  298. data/vendor/plugins/dataset/spec/spec_helper.rb +49 -0
  299. data/vendor/plugins/dataset/tasks/dataset.rake +19 -0
  300. data/vendor/plugins/{scenarios → spec_integration}/LICENSE +0 -0
  301. data/vendor/plugins/spec_integration/README +117 -0
  302. data/vendor/plugins/spec_integration/Rakefile +10 -0
  303. data/vendor/plugins/spec_integration/lib/spec/integration.rb +10 -0
  304. data/vendor/plugins/spec_integration/lib/spec/integration/dsl.rb +11 -0
  305. data/vendor/plugins/spec_integration/lib/spec/integration/dsl/form.rb +157 -0
  306. data/vendor/plugins/spec_integration/lib/spec/integration/dsl/integration_example_group.rb +97 -0
  307. data/vendor/plugins/spec_integration/lib/spec/integration/dsl/navigation.rb +102 -0
  308. data/vendor/plugins/spec_integration/lib/spec/integration/extensions.rb +8 -0
  309. data/vendor/plugins/spec_integration/lib/spec/integration/extensions/action_controller.rb +25 -0
  310. data/vendor/plugins/spec_integration/lib/spec/integration/extensions/hash.rb +48 -0
  311. data/vendor/plugins/spec_integration/lib/spec/integration/matchers.rb +1 -0
  312. data/vendor/plugins/spec_integration/lib/spec/integration/matchers/display_object.rb +41 -0
  313. data/vendor/plugins/spec_integration/lib/spec/integration/matchers/have_link_to.rb +35 -0
  314. data/vendor/plugins/spec_integration/lib/spec/integration/matchers/navigate_successfully.rb +60 -0
  315. data/vendor/plugins/spec_integration/lib/spec/integration/matchers/showing.rb +44 -0
  316. data/vendor/plugins/spec_integration/spec/application.rb +3 -0
  317. data/vendor/plugins/spec_integration/spec/dispatcher.rb +24 -0
  318. data/vendor/plugins/spec_integration/spec/dsl/form_spec.rb +130 -0
  319. data/vendor/plugins/spec_integration/spec/dsl/integration_spec_spec.rb +38 -0
  320. data/vendor/plugins/spec_integration/spec/dsl/navigation_spec.rb +35 -0
  321. data/vendor/plugins/spec_integration/spec/integration_dsl_controller.rb +5 -0
  322. data/vendor/plugins/spec_integration/spec/spec.opts +7 -0
  323. data/vendor/plugins/spec_integration/spec/spec_helper.rb +10 -0
  324. data/vendor/plugins/spec_integration/tasks/integration.rake +14 -0
  325. data/vendor/plugins/vizres/CHANGELOG +15 -0
  326. data/vendor/plugins/vizres/MIT-LICENSE +16 -0
  327. data/vendor/plugins/vizres/README +80 -0
  328. data/vendor/plugins/vizres/Rakefile +22 -0
  329. data/vendor/plugins/vizres/init.rb +1 -0
  330. data/vendor/plugins/vizres/lib/vizres.rb +33 -0
  331. data/vendor/plugins/vizres/lib/vizres/browser.rb +36 -0
  332. data/vendor/plugins/vizres/lib/vizres/scm.rb +27 -0
  333. data/vendor/plugins/vizres/test/vizres/browser_test.rb +76 -0
  334. data/vendor/plugins/vizres/test/vizres/scm_test.rb +41 -0
  335. data/vendor/plugins/vizres/test/vizres_test.rb +55 -0
  336. data/vendor/plugins/vizres/vizres.gemspec +26 -0
  337. data/vendor/rails/actionmailer/CHANGELOG +21 -0
  338. data/vendor/rails/actionmailer/MIT-LICENSE +1 -1
  339. data/vendor/rails/actionmailer/README +14 -10
  340. data/vendor/rails/actionmailer/Rakefile +8 -4
  341. data/vendor/rails/actionmailer/lib/action_mailer.rb +1 -1
  342. data/vendor/rails/actionmailer/lib/action_mailer/adv_attr_accessor.rb +1 -1
  343. data/vendor/rails/actionmailer/lib/action_mailer/base.rb +145 -101
  344. data/vendor/rails/actionmailer/lib/action_mailer/helpers.rb +7 -7
  345. data/vendor/rails/actionmailer/lib/action_mailer/part.rb +2 -2
  346. data/vendor/rails/actionmailer/lib/action_mailer/quoting.rb +3 -1
  347. data/vendor/rails/actionmailer/lib/action_mailer/test_case.rb +15 -10
  348. data/vendor/rails/actionmailer/lib/action_mailer/vendor.rb +2 -2
  349. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail.rb +5 -0
  350. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/address.rb +426 -0
  351. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/attachments.rb +46 -0
  352. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/base64.rb +46 -0
  353. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/compat.rb +41 -0
  354. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/config.rb +67 -0
  355. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/core_extensions.rb +63 -0
  356. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/encode.rb +581 -0
  357. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/header.rb +960 -0
  358. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/index.rb +9 -0
  359. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/interface.rb +1130 -0
  360. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/loader.rb +3 -0
  361. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/mail.rb +578 -0
  362. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/mailbox.rb +495 -0
  363. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/main.rb +6 -0
  364. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/mbox.rb +3 -0
  365. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/net.rb +248 -0
  366. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/obsolete.rb +132 -0
  367. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/parser.rb +1476 -0
  368. data/vendor/rails/actionmailer/lib/action_mailer/vendor/{tmail-1.1.0 → tmail-1.2.3}/tmail/port.rb +0 -0
  369. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/quoting.rb +118 -0
  370. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/require_arch.rb +58 -0
  371. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/scanner.rb +49 -0
  372. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/scanner_r.rb +261 -0
  373. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/stringio.rb +280 -0
  374. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/utils.rb +337 -0
  375. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.2.3/tmail/version.rb +39 -0
  376. data/vendor/rails/actionmailer/lib/action_mailer/version.rb +1 -1
  377. data/vendor/rails/actionmailer/test/abstract_unit.rb +13 -6
  378. data/vendor/rails/actionmailer/test/delivery_method_test.rb +1 -1
  379. data/vendor/rails/actionmailer/test/mail_helper_test.rb +1 -1
  380. data/vendor/rails/actionmailer/test/mail_render_test.rb +1 -1
  381. data/vendor/rails/actionmailer/test/mail_service_test.rb +50 -10
  382. data/vendor/rails/actionmailer/test/quoting_test.rb +19 -32
  383. data/vendor/rails/actionmailer/test/test_helper_test.rb +14 -2
  384. data/vendor/rails/actionmailer/test/tmail_test.rb +1 -1
  385. data/vendor/rails/actionmailer/test/url_test.rb +2 -2
  386. data/vendor/rails/actionpack/CHANGELOG +216 -0
  387. data/vendor/rails/actionpack/MIT-LICENSE +1 -1
  388. data/vendor/rails/actionpack/README +1 -1
  389. data/vendor/rails/actionpack/Rakefile +13 -8
  390. data/vendor/rails/actionpack/lib/action_controller.rb +2 -2
  391. data/vendor/rails/actionpack/lib/action_controller/assertions/model_assertions.rb +2 -1
  392. data/vendor/rails/actionpack/lib/action_controller/assertions/response_assertions.rb +8 -2
  393. data/vendor/rails/actionpack/lib/action_controller/assertions/routing_assertions.rb +8 -5
  394. data/vendor/rails/actionpack/lib/action_controller/assertions/selector_assertions.rb +56 -73
  395. data/vendor/rails/actionpack/lib/action_controller/assertions/tag_assertions.rb +3 -3
  396. data/vendor/rails/actionpack/lib/action_controller/base.rb +115 -136
  397. data/vendor/rails/actionpack/lib/action_controller/benchmarking.rb +3 -3
  398. data/vendor/rails/actionpack/lib/action_controller/caching.rb +41 -652
  399. data/vendor/rails/actionpack/lib/action_controller/caching/actions.rb +144 -0
  400. data/vendor/rails/actionpack/lib/action_controller/caching/fragments.rb +138 -0
  401. data/vendor/rails/actionpack/lib/action_controller/caching/pages.rb +154 -0
  402. data/vendor/rails/actionpack/lib/action_controller/caching/sql_cache.rb +18 -0
  403. data/vendor/rails/actionpack/lib/action_controller/caching/sweeping.rb +97 -0
  404. data/vendor/rails/actionpack/lib/action_controller/cgi_ext/cookie.rb +28 -24
  405. data/vendor/rails/actionpack/lib/action_controller/cgi_ext/stdinput.rb +1 -0
  406. data/vendor/rails/actionpack/lib/action_controller/cgi_process.rb +6 -4
  407. data/vendor/rails/actionpack/lib/action_controller/components.rb +7 -6
  408. data/vendor/rails/actionpack/lib/action_controller/cookies.rb +31 -19
  409. data/vendor/rails/actionpack/lib/action_controller/dispatcher.rb +51 -84
  410. data/vendor/rails/actionpack/lib/action_controller/filters.rb +294 -419
  411. data/vendor/rails/actionpack/lib/action_controller/flash.rb +1 -6
  412. data/vendor/rails/actionpack/lib/action_controller/headers.rb +31 -0
  413. data/vendor/rails/actionpack/lib/action_controller/helpers.rb +26 -9
  414. data/vendor/rails/actionpack/lib/action_controller/http_authentication.rb +3 -5
  415. data/vendor/rails/actionpack/lib/action_controller/integration.rb +68 -15
  416. data/vendor/rails/actionpack/lib/action_controller/layout.rb +38 -54
  417. data/vendor/rails/actionpack/lib/action_controller/mime_responds.rb +7 -3
  418. data/vendor/rails/actionpack/lib/action_controller/mime_type.rb +26 -7
  419. data/vendor/rails/actionpack/lib/action_controller/mime_types.rb +1 -1
  420. data/vendor/rails/actionpack/lib/action_controller/polymorphic_routes.rb +123 -20
  421. data/vendor/rails/actionpack/lib/action_controller/record_identifier.rb +30 -17
  422. data/vendor/rails/actionpack/lib/action_controller/request.rb +79 -45
  423. data/vendor/rails/actionpack/lib/action_controller/request_forgery_protection.rb +48 -40
  424. data/vendor/rails/actionpack/lib/action_controller/request_profiler.rb +44 -13
  425. data/vendor/rails/actionpack/lib/action_controller/rescue.rb +24 -24
  426. data/vendor/rails/actionpack/lib/action_controller/resources.rb +66 -23
  427. data/vendor/rails/actionpack/lib/action_controller/response.rb +2 -2
  428. data/vendor/rails/actionpack/lib/action_controller/routing.rb +120 -1232
  429. data/vendor/rails/actionpack/lib/action_controller/routing/builder.rb +203 -0
  430. data/vendor/rails/actionpack/lib/action_controller/routing/optimisations.rb +120 -0
  431. data/vendor/rails/actionpack/lib/action_controller/routing/recognition_optimisation.rb +162 -0
  432. data/vendor/rails/actionpack/lib/action_controller/routing/route.rb +240 -0
  433. data/vendor/rails/actionpack/lib/action_controller/routing/route_set.rb +436 -0
  434. data/vendor/rails/actionpack/lib/action_controller/routing/routing_ext.rb +46 -0
  435. data/vendor/rails/actionpack/lib/action_controller/routing/segments.rb +283 -0
  436. data/vendor/rails/actionpack/lib/action_controller/session/active_record_store.rb +18 -14
  437. data/vendor/rails/actionpack/lib/action_controller/session/cookie_store.rb +22 -20
  438. data/vendor/rails/actionpack/lib/action_controller/session_management.rb +10 -3
  439. data/vendor/rails/actionpack/lib/action_controller/streaming.rb +45 -31
  440. data/vendor/rails/actionpack/lib/action_controller/templates/rescues/_trace.erb +5 -5
  441. data/vendor/rails/actionpack/lib/action_controller/templates/rescues/layout.erb +1 -1
  442. data/vendor/rails/actionpack/lib/action_controller/test_case.rb +41 -11
  443. data/vendor/rails/actionpack/lib/action_controller/test_process.rb +46 -40
  444. data/vendor/rails/actionpack/lib/action_controller/url_rewriter.rb +44 -37
  445. data/vendor/rails/actionpack/lib/action_controller/vendor/html-scanner/html/document.rb +1 -1
  446. data/vendor/rails/actionpack/lib/action_controller/vendor/html-scanner/html/sanitizer.rb +2 -2
  447. data/vendor/rails/actionpack/lib/action_controller/vendor/html-scanner/html/tokenizer.rb +1 -1
  448. data/vendor/rails/actionpack/lib/action_controller/verification.rb +73 -57
  449. data/vendor/rails/actionpack/lib/action_pack.rb +1 -1
  450. data/vendor/rails/actionpack/lib/action_pack/version.rb +1 -1
  451. data/vendor/rails/actionpack/lib/action_view.rb +11 -3
  452. data/vendor/rails/actionpack/lib/action_view/base.rb +86 -381
  453. data/vendor/rails/actionpack/lib/action_view/helpers/active_record_helper.rb +84 -63
  454. data/vendor/rails/actionpack/lib/action_view/helpers/asset_tag_helper.rb +126 -60
  455. data/vendor/rails/actionpack/lib/action_view/helpers/atom_feed_helper.rb +50 -18
  456. data/vendor/rails/actionpack/lib/action_view/helpers/benchmark_helper.rb +5 -3
  457. data/vendor/rails/actionpack/lib/action_view/helpers/cache_helper.rb +3 -2
  458. data/vendor/rails/actionpack/lib/action_view/helpers/capture_helper.rb +1 -2
  459. data/vendor/rails/actionpack/lib/action_view/helpers/date_helper.rb +107 -85
  460. data/vendor/rails/actionpack/lib/action_view/helpers/form_helper.rb +156 -78
  461. data/vendor/rails/actionpack/lib/action_view/helpers/form_options_helper.rb +57 -24
  462. data/vendor/rails/actionpack/lib/action_view/helpers/form_tag_helper.rb +47 -21
  463. data/vendor/rails/actionpack/lib/action_view/helpers/javascript_helper.rb +4 -4
  464. data/vendor/rails/actionpack/lib/action_view/helpers/javascripts/controls.js +1 -1
  465. data/vendor/rails/actionpack/lib/action_view/helpers/javascripts/dragdrop.js +1 -1
  466. data/vendor/rails/actionpack/lib/action_view/helpers/javascripts/effects.js +1 -1
  467. data/vendor/rails/actionpack/lib/action_view/helpers/number_helper.rb +11 -4
  468. data/vendor/rails/actionpack/lib/action_view/helpers/prototype_helper.rb +69 -37
  469. data/vendor/rails/actionpack/lib/action_view/helpers/record_tag_helper.rb +3 -3
  470. data/vendor/rails/actionpack/lib/action_view/helpers/sanitize_helper.rb +23 -17
  471. data/vendor/rails/actionpack/lib/action_view/helpers/scriptaculous_helper.rb +86 -60
  472. data/vendor/rails/actionpack/lib/action_view/helpers/tag_helper.rb +4 -3
  473. data/vendor/rails/actionpack/lib/action_view/helpers/text_helper.rb +153 -125
  474. data/vendor/rails/actionpack/lib/action_view/helpers/url_helper.rb +90 -41
  475. data/vendor/rails/actionpack/lib/action_view/inline_template.rb +20 -0
  476. data/vendor/rails/actionpack/lib/action_view/partial_template.rb +70 -0
  477. data/vendor/rails/actionpack/lib/action_view/partials.rb +31 -73
  478. data/vendor/rails/actionpack/lib/action_view/template.rb +127 -0
  479. data/vendor/rails/actionpack/lib/action_view/template_error.rb +18 -10
  480. data/vendor/rails/actionpack/lib/action_view/template_finder.rb +177 -0
  481. data/vendor/rails/actionpack/lib/action_view/template_handler.rb +18 -1
  482. data/vendor/rails/actionpack/lib/action_view/template_handlers/builder.rb +10 -2
  483. data/vendor/rails/actionpack/lib/action_view/template_handlers/compilable.rb +128 -0
  484. data/vendor/rails/actionpack/lib/action_view/template_handlers/erb.rb +37 -2
  485. data/vendor/rails/actionpack/lib/action_view/template_handlers/rjs.rb +14 -1
  486. data/vendor/rails/actionpack/lib/action_view/test_case.rb +58 -0
  487. data/vendor/rails/actionpack/test/abstract_unit.rb +1 -1
  488. data/vendor/rails/actionpack/test/active_record_unit.rb +3 -6
  489. data/vendor/rails/actionpack/test/activerecord/active_record_store_test.rb +2 -3
  490. data/vendor/rails/actionpack/test/activerecord/render_partial_with_record_identification_test.rb +158 -41
  491. data/vendor/rails/actionpack/test/adv_attr_test.rb +20 -0
  492. data/vendor/rails/actionpack/test/controller/action_pack_assertions_test.rb +57 -6
  493. data/vendor/rails/actionpack/test/controller/addresses_render_test.rb +1 -1
  494. data/vendor/rails/actionpack/test/controller/assert_select_test.rb +19 -7
  495. data/vendor/rails/actionpack/test/controller/base_test.rb +88 -3
  496. data/vendor/rails/actionpack/test/controller/benchmark_test.rb +1 -2
  497. data/vendor/rails/actionpack/test/controller/caching_test.rb +282 -21
  498. data/vendor/rails/actionpack/test/controller/capture_test.rb +1 -1
  499. data/vendor/rails/actionpack/test/controller/cgi_test.rb +5 -4
  500. data/vendor/rails/actionpack/test/controller/components_test.rb +1 -1
  501. data/vendor/rails/actionpack/test/controller/content_type_test.rb +2 -2
  502. data/vendor/rails/actionpack/test/controller/cookie_test.rb +13 -2
  503. data/vendor/rails/actionpack/test/controller/custom_handler_test.rb +14 -10
  504. data/vendor/rails/actionpack/test/controller/deprecation/deprecated_base_methods_test.rb +1 -1
  505. data/vendor/rails/actionpack/test/controller/dispatcher_test.rb +33 -51
  506. data/vendor/rails/actionpack/test/controller/fake_controllers.rb +17 -0
  507. data/vendor/rails/actionpack/test/controller/fake_models.rb +6 -0
  508. data/vendor/rails/actionpack/test/controller/filter_params_test.rb +14 -8
  509. data/vendor/rails/actionpack/test/controller/filters_test.rb +44 -19
  510. data/vendor/rails/actionpack/test/controller/flash_test.rb +2 -2
  511. data/vendor/rails/actionpack/test/controller/header_test.rb +14 -0
  512. data/vendor/rails/actionpack/test/controller/helper_test.rb +19 -15
  513. data/vendor/rails/actionpack/test/controller/html-scanner/document_test.rb +26 -2
  514. data/vendor/rails/actionpack/test/controller/html-scanner/node_test.rb +1 -2
  515. data/vendor/rails/actionpack/test/controller/html-scanner/sanitizer_test.rb +15 -6
  516. data/vendor/rails/actionpack/test/controller/html-scanner/tag_node_test.rb +1 -2
  517. data/vendor/rails/actionpack/test/controller/html-scanner/text_node_test.rb +2 -3
  518. data/vendor/rails/actionpack/test/controller/html-scanner/tokenizer_test.rb +8 -2
  519. data/vendor/rails/actionpack/test/controller/http_authentication_test.rb +1 -1
  520. data/vendor/rails/actionpack/test/controller/integration_test.rb +14 -17
  521. data/vendor/rails/actionpack/test/controller/integration_upload_test.rb +43 -0
  522. data/vendor/rails/actionpack/test/controller/layout_test.rb +26 -6
  523. data/vendor/rails/actionpack/test/controller/mime_responds_test.rb +39 -7
  524. data/vendor/rails/actionpack/test/controller/mime_type_test.rb +34 -5
  525. data/vendor/rails/actionpack/test/controller/new_render_test.rb +150 -37
  526. data/vendor/rails/actionpack/test/controller/polymorphic_routes_test.rb +153 -77
  527. data/vendor/rails/actionpack/test/controller/record_identifier_test.rb +38 -2
  528. data/vendor/rails/actionpack/test/controller/redirect_test.rb +32 -1
  529. data/vendor/rails/actionpack/test/controller/render_test.rb +78 -15
  530. data/vendor/rails/actionpack/test/controller/request_forgery_protection_test.rb +101 -5
  531. data/vendor/rails/actionpack/test/controller/request_test.rb +103 -11
  532. data/vendor/rails/actionpack/test/controller/rescue_test.rb +22 -6
  533. data/vendor/rails/actionpack/test/controller/resources_test.rb +117 -31
  534. data/vendor/rails/actionpack/test/controller/routing_test.rb +286 -25
  535. data/vendor/rails/actionpack/test/controller/selector_test.rb +2 -2
  536. data/vendor/rails/actionpack/test/controller/send_file_test.rb +14 -3
  537. data/vendor/rails/actionpack/test/controller/session/cookie_store_test.rb +16 -4
  538. data/vendor/rails/actionpack/test/controller/session/mem_cache_store_test.rb +3 -4
  539. data/vendor/rails/actionpack/test/controller/session_fixation_test.rb +1 -1
  540. data/vendor/rails/actionpack/test/controller/session_management_test.rb +23 -1
  541. data/vendor/rails/actionpack/test/controller/test_test.rb +82 -10
  542. data/vendor/rails/actionpack/test/controller/url_rewriter_test.rb +69 -5
  543. data/vendor/rails/actionpack/test/controller/verification_test.rb +35 -18
  544. data/vendor/rails/actionpack/test/controller/view_paths_test.rb +15 -12
  545. data/vendor/rails/actionpack/test/controller/webservice_test.rb +48 -3
  546. data/vendor/rails/actionpack/test/fixtures/bad_customers/_bad_customer.html.erb +1 -0
  547. data/vendor/rails/actionpack/test/fixtures/company.rb +1 -0
  548. data/vendor/rails/actionpack/test/fixtures/customers/_customer.html.erb +1 -0
  549. data/vendor/rails/actionpack/test/fixtures/db_definitions/sqlite.sql +6 -0
  550. data/vendor/rails/actionpack/test/fixtures/functional_caching/_partial.erb +3 -0
  551. data/vendor/rails/actionpack/test/fixtures/functional_caching/fragment_cached.html.erb +2 -0
  552. data/vendor/rails/actionpack/test/fixtures/functional_caching/html_fragment_cached_with_partial.html.erb +1 -0
  553. data/vendor/rails/actionpack/test/fixtures/functional_caching/js_fragment_cached_with_partial.js.rjs +1 -0
  554. data/vendor/rails/actionpack/test/fixtures/good_customers/_good_customer.html.erb +1 -0
  555. data/vendor/rails/actionpack/test/fixtures/layouts/block_with_layout.erb +3 -0
  556. data/vendor/rails/actionpack/test/fixtures/layouts/partial_with_layout.erb +3 -0
  557. data/vendor/rails/actionpack/test/fixtures/mascot.rb +3 -0
  558. data/vendor/rails/actionpack/test/fixtures/mascots.yml +4 -0
  559. data/vendor/rails/actionpack/test/fixtures/mascots/_mascot.html.erb +1 -0
  560. data/vendor/rails/actionpack/test/fixtures/multipart/boundary_problem_file +10 -0
  561. data/vendor/rails/actionpack/test/fixtures/public/javascripts/application.js +1 -0
  562. data/vendor/rails/actionpack/test/fixtures/public/javascripts/controls.js +1 -0
  563. data/vendor/rails/actionpack/test/fixtures/public/javascripts/dragdrop.js +1 -0
  564. data/vendor/rails/actionpack/test/fixtures/public/javascripts/effects.js +1 -0
  565. data/vendor/rails/actionpack/test/fixtures/public/javascripts/prototype.js +1 -0
  566. data/vendor/rails/actionpack/test/fixtures/public/javascripts/version.1.0.js +1 -0
  567. data/vendor/rails/actionpack/test/fixtures/public/stylesheets/version.1.0.css +1 -0
  568. data/vendor/rails/actionpack/test/fixtures/reply.rb +1 -0
  569. data/vendor/rails/actionpack/test/fixtures/shared.html.erb +1 -0
  570. data/vendor/rails/actionpack/test/fixtures/symlink_parent/symlinked_layout.erb +5 -0
  571. data/vendor/rails/actionpack/test/fixtures/test/_customer_counter.erb +1 -0
  572. data/vendor/rails/actionpack/test/fixtures/test/_form.erb +1 -0
  573. data/vendor/rails/actionpack/test/fixtures/test/_labelling_form.erb +1 -0
  574. data/vendor/rails/actionpack/test/fixtures/test/_raise.html.erb +1 -0
  575. data/vendor/rails/actionpack/test/fixtures/test/greeting.js.rjs +1 -0
  576. data/vendor/rails/actionpack/test/fixtures/test/render_file_from_template.html.erb +1 -0
  577. data/vendor/rails/actionpack/test/fixtures/topics/_topic.html.erb +1 -0
  578. data/vendor/rails/actionpack/test/template/active_record_helper_test.rb +25 -8
  579. data/vendor/rails/actionpack/test/template/asset_tag_helper_test.rb +117 -30
  580. data/vendor/rails/actionpack/test/template/atom_feed_helper_test.rb +81 -3
  581. data/vendor/rails/actionpack/test/template/benchmark_helper_test.rb +10 -22
  582. data/vendor/rails/actionpack/test/template/date_helper_test.rb +515 -162
  583. data/vendor/rails/actionpack/test/template/deprecated_erb_variable_test.rb +9 -0
  584. data/vendor/rails/actionpack/test/template/erb_util_test.rb +10 -42
  585. data/vendor/rails/actionpack/test/template/form_helper_test.rb +192 -66
  586. data/vendor/rails/actionpack/test/template/form_options_helper_test.rb +514 -477
  587. data/vendor/rails/actionpack/test/template/form_tag_helper_test.rb +42 -8
  588. data/vendor/rails/actionpack/test/template/javascript_helper_test.rb +10 -13
  589. data/vendor/rails/actionpack/test/template/number_helper_test.rb +7 -3
  590. data/vendor/rails/actionpack/test/template/prototype_helper_test.rb +41 -46
  591. data/vendor/rails/actionpack/test/template/record_tag_helper_test.rb +54 -0
  592. data/vendor/rails/actionpack/test/template/sanitize_helper_test.rb +5 -6
  593. data/vendor/rails/actionpack/test/template/scriptaculous_helper_test.rb +7 -13
  594. data/vendor/rails/actionpack/test/template/tag_helper_test.rb +3 -6
  595. data/vendor/rails/actionpack/test/template/template_finder_test.rb +73 -0
  596. data/vendor/rails/actionpack/test/template/template_object_test.rb +95 -0
  597. data/vendor/rails/actionpack/test/template/test_test.rb +56 -0
  598. data/vendor/rails/actionpack/test/template/text_helper_test.rb +75 -43
  599. data/vendor/rails/actionpack/test/template/url_helper_test.rb +20 -12
  600. data/vendor/rails/actionpack/test/testing_sandbox.rb +8 -4
  601. data/vendor/rails/activerecord/CHANGELOG +235 -2
  602. data/vendor/rails/activerecord/README +27 -22
  603. data/vendor/rails/activerecord/RUNNING_UNIT_TESTS +7 -4
  604. data/vendor/rails/activerecord/Rakefile +27 -26
  605. data/vendor/rails/activerecord/lib/active_record.rb +16 -12
  606. data/vendor/rails/activerecord/lib/active_record/aggregations.rb +21 -12
  607. data/vendor/rails/activerecord/lib/active_record/association_preload.rb +285 -0
  608. data/vendor/rails/activerecord/lib/active_record/associations.rb +696 -453
  609. data/vendor/rails/activerecord/lib/active_record/associations/association_collection.rb +167 -39
  610. data/vendor/rails/activerecord/lib/active_record/associations/association_proxy.rb +73 -13
  611. data/vendor/rails/activerecord/lib/active_record/associations/belongs_to_association.rb +5 -3
  612. data/vendor/rails/activerecord/lib/active_record/associations/belongs_to_polymorphic_association.rb +5 -6
  613. data/vendor/rails/activerecord/lib/active_record/associations/has_and_belongs_to_many_association.rb +26 -79
  614. data/vendor/rails/activerecord/lib/active_record/associations/has_many_association.rb +19 -72
  615. data/vendor/rails/activerecord/lib/active_record/associations/has_many_through_association.rb +90 -120
  616. data/vendor/rails/activerecord/lib/active_record/associations/has_one_association.rb +9 -7
  617. data/vendor/rails/activerecord/lib/active_record/associations/has_one_through_association.rb +32 -0
  618. data/vendor/rails/activerecord/lib/active_record/attribute_methods.rb +73 -22
  619. data/vendor/rails/activerecord/lib/active_record/base.rb +581 -308
  620. data/vendor/rails/activerecord/lib/active_record/calculations.rb +52 -27
  621. data/vendor/rails/activerecord/lib/active_record/callbacks.rb +9 -38
  622. data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb +4 -3
  623. data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb +9 -4
  624. data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb +6 -0
  625. data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb +248 -56
  626. data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb +159 -37
  627. data/vendor/rails/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb +10 -13
  628. data/vendor/rails/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb +99 -36
  629. data/vendor/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb +204 -57
  630. data/vendor/rails/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb +1 -1
  631. data/vendor/rails/activerecord/lib/active_record/connection_adapters/sqlite_adapter.rb +43 -16
  632. data/vendor/rails/activerecord/lib/active_record/dirty.rb +165 -0
  633. data/vendor/rails/activerecord/lib/active_record/fixtures.rb +144 -181
  634. data/vendor/rails/activerecord/lib/active_record/locking/optimistic.rb +15 -11
  635. data/vendor/rails/activerecord/lib/active_record/locking/pessimistic.rb +2 -2
  636. data/vendor/rails/activerecord/lib/active_record/migration.rb +187 -81
  637. data/vendor/rails/activerecord/lib/active_record/named_scope.rb +168 -0
  638. data/vendor/rails/activerecord/lib/active_record/observer.rb +24 -8
  639. data/vendor/rails/activerecord/lib/active_record/reflection.rb +38 -14
  640. data/vendor/rails/activerecord/lib/active_record/schema.rb +7 -14
  641. data/vendor/rails/activerecord/lib/active_record/schema_dumper.rb +4 -4
  642. data/vendor/rails/activerecord/lib/active_record/serialization.rb +5 -5
  643. data/vendor/rails/activerecord/lib/active_record/serializers/json_serializer.rb +37 -28
  644. data/vendor/rails/activerecord/lib/active_record/serializers/xml_serializer.rb +52 -29
  645. data/vendor/rails/activerecord/lib/active_record/test_case.rb +47 -0
  646. data/vendor/rails/activerecord/lib/active_record/timestamp.rb +4 -4
  647. data/vendor/rails/activerecord/lib/active_record/transactions.rb +6 -8
  648. data/vendor/rails/activerecord/lib/active_record/validations.rb +201 -255
  649. data/vendor/rails/activerecord/lib/active_record/version.rb +1 -1
  650. data/vendor/rails/activerecord/test/{fixtures → assets}/example.log +0 -0
  651. data/vendor/rails/activerecord/test/{fixtures → assets}/flowers.jpg +0 -0
  652. data/vendor/rails/activerecord/test/cases/aaa_create_tables_test.rb +24 -0
  653. data/vendor/rails/activerecord/test/cases/active_schema_test_mysql.rb +95 -0
  654. data/vendor/rails/activerecord/test/cases/active_schema_test_postgresql.rb +24 -0
  655. data/vendor/rails/activerecord/test/cases/adapter_test.rb +127 -0
  656. data/vendor/rails/activerecord/test/cases/adapter_test_sqlserver.rb +95 -0
  657. data/vendor/rails/activerecord/test/cases/aggregations_test.rb +128 -0
  658. data/vendor/rails/activerecord/test/cases/ar_schema_test.rb +33 -0
  659. data/vendor/rails/activerecord/test/cases/associations/belongs_to_associations_test.rb +431 -0
  660. data/vendor/rails/activerecord/test/cases/associations/callbacks_test.rb +161 -0
  661. data/vendor/rails/activerecord/test/cases/associations/cascaded_eager_loading_test.rb +123 -0
  662. data/vendor/rails/activerecord/test/cases/associations/eager_load_includes_full_sti_class_test.rb +36 -0
  663. data/vendor/rails/activerecord/test/cases/associations/eager_load_nested_include_test.rb +83 -0
  664. data/vendor/rails/activerecord/test/cases/associations/eager_singularization_test.rb +145 -0
  665. data/vendor/rails/activerecord/test/cases/associations/eager_test.rb +643 -0
  666. data/vendor/rails/activerecord/test/cases/associations/extension_test.rb +62 -0
  667. data/vendor/rails/activerecord/test/cases/associations/has_and_belongs_to_many_associations_test.rb +706 -0
  668. data/vendor/rails/activerecord/test/cases/associations/has_many_associations_test.rb +1034 -0
  669. data/vendor/rails/activerecord/test/cases/associations/has_many_through_associations_test.rb +200 -0
  670. data/vendor/rails/activerecord/test/cases/associations/has_one_associations_test.rb +345 -0
  671. data/vendor/rails/activerecord/test/cases/associations/has_one_through_associations_test.rb +113 -0
  672. data/vendor/rails/activerecord/test/cases/associations/inner_join_association_test.rb +88 -0
  673. data/vendor/rails/activerecord/test/cases/associations/join_model_test.rb +714 -0
  674. data/vendor/rails/activerecord/test/cases/associations_test.rb +262 -0
  675. data/vendor/rails/activerecord/test/cases/attribute_methods_test.rb +238 -0
  676. data/vendor/rails/activerecord/test/cases/base_test.rb +2015 -0
  677. data/vendor/rails/activerecord/test/cases/binary_test.rb +34 -0
  678. data/vendor/rails/activerecord/test/cases/calculations_test.rb +323 -0
  679. data/vendor/rails/activerecord/test/cases/callbacks_test.rb +400 -0
  680. data/vendor/rails/activerecord/test/cases/class_inheritable_attributes_test.rb +32 -0
  681. data/vendor/rails/activerecord/test/cases/column_alias_test.rb +17 -0
  682. data/vendor/rails/activerecord/test/cases/column_definition_test.rb +36 -0
  683. data/vendor/rails/activerecord/test/cases/connection_test_firebird.rb +8 -0
  684. data/vendor/rails/activerecord/test/cases/connection_test_mysql.rb +30 -0
  685. data/vendor/rails/activerecord/test/cases/copy_table_test_sqlite.rb +69 -0
  686. data/vendor/rails/activerecord/test/cases/database_statements_test.rb +12 -0
  687. data/vendor/rails/activerecord/test/cases/datatype_test_postgresql.rb +203 -0
  688. data/vendor/rails/activerecord/test/cases/date_time_test.rb +37 -0
  689. data/vendor/rails/activerecord/test/cases/default_test_firebird.rb +16 -0
  690. data/vendor/rails/activerecord/test/cases/defaults_test.rb +69 -0
  691. data/vendor/rails/activerecord/test/cases/deprecated_finder_test.rb +30 -0
  692. data/vendor/rails/activerecord/test/cases/dirty_test.rb +257 -0
  693. data/vendor/rails/activerecord/test/cases/finder_respond_to_test.rb +76 -0
  694. data/vendor/rails/activerecord/test/cases/finder_test.rb +898 -0
  695. data/vendor/rails/activerecord/test/cases/fixtures_test.rb +626 -0
  696. data/vendor/rails/activerecord/test/cases/helper.rb +47 -0
  697. data/vendor/rails/activerecord/test/cases/inheritance_test.rb +262 -0
  698. data/vendor/rails/activerecord/test/cases/invalid_date_test.rb +24 -0
  699. data/vendor/rails/activerecord/test/cases/json_serialization_test.rb +205 -0
  700. data/vendor/rails/activerecord/test/cases/lifecycle_test.rb +193 -0
  701. data/vendor/rails/activerecord/test/cases/locking_test.rb +309 -0
  702. data/vendor/rails/activerecord/test/cases/method_scoping_test.rb +462 -0
  703. data/vendor/rails/activerecord/test/cases/migration_test.rb +1444 -0
  704. data/vendor/rails/activerecord/test/cases/migration_test_firebird.rb +124 -0
  705. data/vendor/rails/activerecord/test/cases/mixin_test.rb +96 -0
  706. data/vendor/rails/activerecord/test/cases/modules_test.rb +39 -0
  707. data/vendor/rails/activerecord/test/cases/multiple_db_test.rb +60 -0
  708. data/vendor/rails/activerecord/test/cases/named_scope_test.rb +206 -0
  709. data/vendor/rails/activerecord/test/cases/pk_test.rb +101 -0
  710. data/vendor/rails/activerecord/test/cases/query_cache_test.rb +127 -0
  711. data/vendor/rails/activerecord/test/cases/readonly_test.rb +107 -0
  712. data/vendor/rails/activerecord/test/cases/reflection_test.rb +176 -0
  713. data/vendor/rails/activerecord/test/cases/reserved_word_test_mysql.rb +176 -0
  714. data/vendor/rails/activerecord/test/cases/schema_authorization_test_postgresql.rb +75 -0
  715. data/vendor/rails/activerecord/test/cases/schema_dumper_test.rb +184 -0
  716. data/vendor/rails/activerecord/test/cases/schema_test_postgresql.rb +102 -0
  717. data/vendor/rails/activerecord/test/cases/serialization_test.rb +47 -0
  718. data/vendor/rails/activerecord/test/cases/synonym_test_oracle.rb +17 -0
  719. data/vendor/rails/activerecord/test/cases/table_name_test_sqlserver.rb +23 -0
  720. data/vendor/rails/activerecord/test/cases/threaded_connections_test.rb +48 -0
  721. data/vendor/rails/activerecord/test/cases/transactions_test.rb +307 -0
  722. data/vendor/rails/activerecord/test/cases/unconnected_test.rb +32 -0
  723. data/vendor/rails/activerecord/test/cases/validations_test.rb +1541 -0
  724. data/vendor/rails/activerecord/test/cases/xml_serialization_test.rb +202 -0
  725. data/vendor/rails/activerecord/test/config.rb +5 -0
  726. data/vendor/rails/activerecord/test/connections/native_db2/connection.rb +1 -1
  727. data/vendor/rails/activerecord/test/connections/native_firebird/connection.rb +1 -1
  728. data/vendor/rails/activerecord/test/connections/native_frontbase/connection.rb +1 -1
  729. data/vendor/rails/activerecord/test/connections/native_mysql/connection.rb +1 -1
  730. data/vendor/rails/activerecord/test/connections/native_openbase/connection.rb +1 -1
  731. data/vendor/rails/activerecord/test/connections/native_oracle/connection.rb +1 -1
  732. data/vendor/rails/activerecord/test/connections/native_postgresql/connection.rb +1 -3
  733. data/vendor/rails/activerecord/test/connections/native_sqlite/connection.rb +2 -2
  734. data/vendor/rails/activerecord/test/connections/native_sqlite3/connection.rb +2 -2
  735. data/vendor/rails/activerecord/test/connections/native_sqlite3/in_memory_connection.rb +3 -3
  736. data/vendor/rails/activerecord/test/connections/native_sybase/connection.rb +1 -1
  737. data/vendor/rails/activerecord/test/fixtures/author_addresses.yml +5 -0
  738. data/vendor/rails/activerecord/test/fixtures/authors.yml +2 -0
  739. data/vendor/rails/activerecord/test/fixtures/clubs.yml +6 -0
  740. data/vendor/rails/activerecord/test/fixtures/jobs.yml +7 -0
  741. data/vendor/rails/activerecord/test/fixtures/members.yml +4 -0
  742. data/vendor/rails/activerecord/test/fixtures/memberships.yml +20 -0
  743. data/vendor/rails/activerecord/test/fixtures/owners.yml +7 -0
  744. data/vendor/rails/activerecord/test/fixtures/people.yml +4 -1
  745. data/vendor/rails/activerecord/test/fixtures/pets.yml +14 -0
  746. data/vendor/rails/activerecord/test/fixtures/posts.yml +1 -0
  747. data/vendor/rails/activerecord/test/fixtures/price_estimates.yml +7 -0
  748. data/vendor/rails/activerecord/test/fixtures/readers.yml +5 -0
  749. data/vendor/rails/activerecord/test/fixtures/references.yml +17 -0
  750. data/vendor/rails/activerecord/test/fixtures/sponsors.yml +9 -0
  751. data/vendor/rails/activerecord/test/fixtures/subscribers.yml +7 -0
  752. data/vendor/rails/activerecord/test/fixtures/subscriptions.yml +12 -0
  753. data/vendor/rails/activerecord/test/fixtures/taggings.yml +4 -1
  754. data/vendor/rails/activerecord/test/fixtures/topics.yml +22 -2
  755. data/vendor/rails/activerecord/test/fixtures/warehouse-things.yml +3 -0
  756. data/vendor/rails/activerecord/test/{fixtures/migrations_with_decimal → migrations/decimal}/1_give_me_big_numbers.rb +0 -0
  757. data/vendor/rails/activerecord/test/migrations/duplicate/1_people_have_last_names.rb +9 -0
  758. data/vendor/rails/activerecord/test/migrations/duplicate/2_we_need_reminders.rb +12 -0
  759. data/vendor/rails/activerecord/test/{fixtures/migrations_with_duplicate → migrations/duplicate}/3_foo.rb +0 -0
  760. data/vendor/rails/activerecord/test/{fixtures/migrations → migrations/duplicate}/3_innocent_jointable.rb +0 -0
  761. data/vendor/rails/activerecord/test/migrations/duplicate_names/20080507052938_chunky.rb +7 -0
  762. data/vendor/rails/activerecord/test/migrations/duplicate_names/20080507053028_chunky.rb +7 -0
  763. data/vendor/rails/activerecord/test/{fixtures/migrations_with_duplicate → migrations/interleaved/pass_1}/3_innocent_jointable.rb +0 -0
  764. data/vendor/rails/activerecord/test/migrations/interleaved/pass_2/1_people_have_last_names.rb +9 -0
  765. data/vendor/rails/activerecord/test/{fixtures/migrations_with_missing_versions/4_innocent_jointable.rb → migrations/interleaved/pass_2/3_innocent_jointable.rb} +0 -0
  766. data/vendor/rails/activerecord/test/migrations/interleaved/pass_3/1_people_have_last_names.rb +9 -0
  767. data/vendor/rails/activerecord/test/migrations/interleaved/pass_3/2_i_raise_on_down.rb +8 -0
  768. data/vendor/rails/activerecord/test/migrations/interleaved/pass_3/3_innocent_jointable.rb +12 -0
  769. data/vendor/rails/activerecord/test/migrations/missing/1000_people_have_middle_names.rb +9 -0
  770. data/vendor/rails/activerecord/test/migrations/missing/1_people_have_last_names.rb +9 -0
  771. data/vendor/rails/activerecord/test/migrations/missing/3_we_need_reminders.rb +12 -0
  772. data/vendor/rails/activerecord/test/migrations/missing/4_innocent_jointable.rb +12 -0
  773. data/vendor/rails/activerecord/test/migrations/valid/1_people_have_last_names.rb +9 -0
  774. data/vendor/rails/activerecord/test/migrations/valid/2_we_need_reminders.rb +12 -0
  775. data/vendor/rails/activerecord/test/migrations/valid/3_innocent_jointable.rb +12 -0
  776. data/vendor/rails/activerecord/test/models/author.rb +137 -0
  777. data/vendor/rails/activerecord/test/{fixtures → models}/auto_id.rb +0 -0
  778. data/vendor/rails/activerecord/test/{fixtures → models}/binary.rb +0 -0
  779. data/vendor/rails/activerecord/test/{fixtures → models}/book.rb +0 -0
  780. data/vendor/rails/activerecord/test/{fixtures → models}/categorization.rb +0 -0
  781. data/vendor/rails/activerecord/test/models/category.rb +30 -0
  782. data/vendor/rails/activerecord/test/{fixtures → models}/citation.rb +0 -0
  783. data/vendor/rails/activerecord/test/models/club.rb +7 -0
  784. data/vendor/rails/activerecord/test/{fixtures → models}/column_name.rb +0 -0
  785. data/vendor/rails/activerecord/test/models/comment.rb +25 -0
  786. data/vendor/rails/activerecord/test/models/company.rb +132 -0
  787. data/vendor/rails/activerecord/test/models/company_in_module.rb +61 -0
  788. data/vendor/rails/activerecord/test/models/computer.rb +3 -0
  789. data/vendor/rails/activerecord/test/models/contact.rb +16 -0
  790. data/vendor/rails/activerecord/test/{fixtures → models}/course.rb +0 -0
  791. data/vendor/rails/activerecord/test/models/customer.rb +55 -0
  792. data/vendor/rails/activerecord/test/{fixtures → models}/default.rb +0 -0
  793. data/vendor/rails/activerecord/test/models/developer.rb +79 -0
  794. data/vendor/rails/activerecord/test/{fixtures → models}/edge.rb +0 -0
  795. data/vendor/rails/activerecord/test/{fixtures → models}/entrant.rb +0 -0
  796. data/vendor/rails/activerecord/test/models/guid.rb +2 -0
  797. data/vendor/rails/activerecord/test/{fixtures → models}/item.rb +0 -0
  798. data/vendor/rails/activerecord/test/models/job.rb +5 -0
  799. data/vendor/rails/activerecord/test/{fixtures → models}/joke.rb +0 -0
  800. data/vendor/rails/activerecord/test/{fixtures → models}/keyboard.rb +0 -0
  801. data/vendor/rails/activerecord/test/{fixtures → models}/legacy_thing.rb +0 -0
  802. data/vendor/rails/activerecord/test/{fixtures → models}/matey.rb +0 -0
  803. data/vendor/rails/activerecord/test/models/member.rb +9 -0
  804. data/vendor/rails/activerecord/test/models/membership.rb +9 -0
  805. data/vendor/rails/activerecord/test/{fixtures → models}/minimalistic.rb +0 -0
  806. data/vendor/rails/activerecord/test/{fixtures → models}/mixed_case_monkey.rb +0 -0
  807. data/vendor/rails/activerecord/test/{fixtures → models}/movie.rb +0 -0
  808. data/vendor/rails/activerecord/test/models/order.rb +4 -0
  809. data/vendor/rails/activerecord/test/models/owner.rb +4 -0
  810. data/vendor/rails/activerecord/test/{fixtures → models}/parrot.rb +0 -0
  811. data/vendor/rails/activerecord/test/models/person.rb +10 -0
  812. data/vendor/rails/activerecord/test/models/pet.rb +4 -0
  813. data/vendor/rails/activerecord/test/models/pirate.rb +9 -0
  814. data/vendor/rails/activerecord/test/models/post.rb +85 -0
  815. data/vendor/rails/activerecord/test/models/price_estimate.rb +3 -0
  816. data/vendor/rails/activerecord/test/models/project.rb +29 -0
  817. data/vendor/rails/activerecord/test/{fixtures → models}/reader.rb +0 -0
  818. data/vendor/rails/activerecord/test/models/reference.rb +4 -0
  819. data/vendor/rails/activerecord/test/models/reply.rb +39 -0
  820. data/vendor/rails/activerecord/test/{fixtures → models}/ship.rb +0 -0
  821. data/vendor/rails/activerecord/test/models/sponsor.rb +4 -0
  822. data/vendor/rails/activerecord/test/{fixtures → models}/subject.rb +0 -0
  823. data/vendor/rails/activerecord/test/models/subscriber.rb +8 -0
  824. data/vendor/rails/activerecord/test/models/subscription.rb +4 -0
  825. data/vendor/rails/activerecord/test/{fixtures → models}/tag.rb +0 -0
  826. data/vendor/rails/activerecord/test/{fixtures → models}/tagging.rb +0 -0
  827. data/vendor/rails/activerecord/test/{fixtures → models}/task.rb +0 -0
  828. data/vendor/rails/activerecord/test/models/topic.rb +66 -0
  829. data/vendor/rails/activerecord/test/models/treasure.rb +6 -0
  830. data/vendor/rails/activerecord/test/{fixtures → models}/vertex.rb +0 -0
  831. data/vendor/rails/activerecord/test/models/warehouse_thing.rb +5 -0
  832. data/vendor/rails/activerecord/test/schema/mysql_specific_schema.rb +12 -0
  833. data/vendor/rails/activerecord/test/schema/postgresql_specific_schema.rb +103 -0
  834. data/vendor/rails/activerecord/test/schema/schema.rb +429 -0
  835. data/vendor/rails/activerecord/test/schema/schema2.rb +6 -0
  836. data/vendor/rails/activerecord/test/schema/sqlite_specific_schema.rb +25 -0
  837. data/vendor/rails/activerecord/test/schema/sqlserver_specific_schema.rb +5 -0
  838. data/vendor/rails/activeresource/CHANGELOG +33 -0
  839. data/vendor/rails/activeresource/Rakefile +9 -5
  840. data/vendor/rails/activeresource/lib/active_resource.rb +1 -1
  841. data/vendor/rails/activeresource/lib/active_resource/base.rb +309 -160
  842. data/vendor/rails/activeresource/lib/active_resource/connection.rb +41 -6
  843. data/vendor/rails/activeresource/lib/active_resource/custom_methods.rb +58 -44
  844. data/vendor/rails/activeresource/lib/active_resource/formats/xml_format.rb +1 -1
  845. data/vendor/rails/activeresource/lib/active_resource/http_mock.rb +82 -12
  846. data/vendor/rails/activeresource/lib/active_resource/validations.rb +2 -2
  847. data/vendor/rails/activeresource/lib/active_resource/version.rb +1 -1
  848. data/vendor/rails/activeresource/test/abstract_unit.rb +17 -1
  849. data/vendor/rails/activeresource/test/authorization_test.rb +45 -5
  850. data/vendor/rails/activeresource/test/base/custom_methods_test.rb +6 -3
  851. data/vendor/rails/activeresource/test/base/equality_test.rb +1 -1
  852. data/vendor/rails/activeresource/test/base/load_test.rb +36 -1
  853. data/vendor/rails/activeresource/test/base_errors_test.rb +1 -1
  854. data/vendor/rails/activeresource/test/base_test.rb +422 -28
  855. data/vendor/rails/activeresource/test/connection_test.rb +22 -2
  856. data/vendor/rails/activeresource/test/fixtures/customer.rb +3 -0
  857. data/vendor/rails/activeresource/test/format_test.rb +43 -2
  858. data/vendor/rails/activeresource/test/setter_trap.rb +1 -1
  859. data/vendor/rails/activesupport/CHANGELOG +214 -2
  860. data/vendor/rails/activesupport/lib/active_support.rb +13 -1
  861. data/vendor/rails/activesupport/lib/active_support/base64.rb +22 -0
  862. data/vendor/rails/activesupport/lib/active_support/basic_object.rb +23 -4
  863. data/vendor/rails/activesupport/lib/active_support/buffered_logger.rb +17 -3
  864. data/vendor/rails/activesupport/lib/active_support/cache.rb +147 -0
  865. data/vendor/rails/activesupport/lib/active_support/cache/compressed_mem_cache_store.rb +15 -0
  866. data/vendor/rails/activesupport/lib/active_support/cache/drb_store.rb +15 -0
  867. data/vendor/rails/activesupport/lib/active_support/cache/file_store.rb +70 -0
  868. data/vendor/rails/activesupport/lib/active_support/cache/mem_cache_store.rb +100 -0
  869. data/vendor/rails/activesupport/lib/active_support/cache/memory_store.rb +38 -0
  870. data/vendor/rails/activesupport/lib/active_support/callbacks.rb +275 -0
  871. data/vendor/rails/activesupport/lib/active_support/core_ext/array/access.rb +2 -4
  872. data/vendor/rails/activesupport/lib/active_support/core_ext/array/conversions.rb +89 -5
  873. data/vendor/rails/activesupport/lib/active_support/core_ext/array/extract_options.rb +2 -1
  874. data/vendor/rails/activesupport/lib/active_support/core_ext/array/grouping.rb +3 -8
  875. data/vendor/rails/activesupport/lib/active_support/core_ext/array/random_access.rb +1 -1
  876. data/vendor/rails/activesupport/lib/active_support/core_ext/base64.rb +4 -0
  877. data/vendor/rails/activesupport/lib/active_support/core_ext/base64/encoding.rb +13 -0
  878. data/vendor/rails/activesupport/lib/active_support/core_ext/benchmark.rb +12 -0
  879. data/vendor/rails/activesupport/lib/active_support/core_ext/bigdecimal.rb +4 -0
  880. data/vendor/rails/activesupport/lib/active_support/core_ext/bigdecimal/conversions.rb +39 -4
  881. data/vendor/rails/activesupport/lib/active_support/core_ext/blank.rb +5 -2
  882. data/vendor/rails/activesupport/lib/active_support/core_ext/class/attribute_accessors.rb +7 -1
  883. data/vendor/rails/activesupport/lib/active_support/core_ext/class/delegating_attributes.rb +7 -1
  884. data/vendor/rails/activesupport/lib/active_support/core_ext/class/inheritable_attributes.rb +1 -1
  885. data/vendor/rails/activesupport/lib/active_support/core_ext/class/removal.rb +26 -0
  886. data/vendor/rails/activesupport/lib/active_support/core_ext/date/behavior.rb +26 -0
  887. data/vendor/rails/activesupport/lib/active_support/core_ext/date/calculations.rb +28 -1
  888. data/vendor/rails/activesupport/lib/active_support/core_ext/date/conversions.rb +13 -4
  889. data/vendor/rails/activesupport/lib/active_support/core_ext/date_time.rb +2 -0
  890. data/vendor/rails/activesupport/lib/active_support/core_ext/date_time/calculations.rb +37 -2
  891. data/vendor/rails/activesupport/lib/active_support/core_ext/date_time/conversions.rb +41 -19
  892. data/vendor/rails/activesupport/lib/active_support/core_ext/enumerable.rb +19 -13
  893. data/vendor/rails/activesupport/lib/active_support/core_ext/exception.rb +8 -0
  894. data/vendor/rails/activesupport/lib/active_support/core_ext/file.rb +6 -6
  895. data/vendor/rails/activesupport/lib/active_support/core_ext/hash/conversions.rb +27 -10
  896. data/vendor/rails/activesupport/lib/active_support/core_ext/hash/except.rb +4 -3
  897. data/vendor/rails/activesupport/lib/active_support/core_ext/hash/indifferent_access.rb +35 -0
  898. data/vendor/rails/activesupport/lib/active_support/core_ext/hash/keys.rb +6 -8
  899. data/vendor/rails/activesupport/lib/active_support/core_ext/hash/reverse_merge.rb +4 -1
  900. data/vendor/rails/activesupport/lib/active_support/core_ext/hash/slice.rb +3 -1
  901. data/vendor/rails/activesupport/lib/active_support/core_ext/integer/even_odd.rb +10 -5
  902. data/vendor/rails/activesupport/lib/active_support/core_ext/integer/inflections.rb +0 -1
  903. data/vendor/rails/activesupport/lib/active_support/core_ext/kernel/daemonizing.rb +2 -10
  904. data/vendor/rails/activesupport/lib/active_support/core_ext/kernel/reporting.rb +8 -0
  905. data/vendor/rails/activesupport/lib/active_support/core_ext/module.rb +5 -0
  906. data/vendor/rails/activesupport/lib/active_support/core_ext/module/attr_internal.rb +4 -3
  907. data/vendor/rails/activesupport/lib/active_support/core_ext/module/attribute_accessors.rb +11 -1
  908. data/vendor/rails/activesupport/lib/active_support/core_ext/module/delegation.rb +5 -3
  909. data/vendor/rails/activesupport/lib/active_support/core_ext/module/inclusion.rb +19 -0
  910. data/vendor/rails/activesupport/lib/active_support/core_ext/module/introspection.rb +56 -16
  911. data/vendor/rails/activesupport/lib/active_support/core_ext/module/loading.rb +10 -0
  912. data/vendor/rails/activesupport/lib/active_support/core_ext/module/model_naming.rb +22 -0
  913. data/vendor/rails/activesupport/lib/active_support/core_ext/numeric.rb +3 -1
  914. data/vendor/rails/activesupport/lib/active_support/core_ext/numeric/conversions.rb +19 -0
  915. data/vendor/rails/activesupport/lib/active_support/core_ext/object/instance_variables.rb +52 -0
  916. data/vendor/rails/activesupport/lib/active_support/core_ext/object/misc.rb +1 -1
  917. data/vendor/rails/activesupport/lib/active_support/core_ext/process.rb +1 -0
  918. data/vendor/rails/activesupport/lib/active_support/core_ext/process/daemon.rb +25 -0
  919. data/vendor/rails/activesupport/lib/active_support/core_ext/range/blockless_step.rb +16 -6
  920. data/vendor/rails/activesupport/lib/active_support/core_ext/range/conversions.rb +5 -1
  921. data/vendor/rails/activesupport/lib/active_support/core_ext/range/include_range.rb +8 -0
  922. data/vendor/rails/activesupport/lib/active_support/core_ext/range/overlaps.rb +3 -0
  923. data/vendor/rails/activesupport/lib/active_support/core_ext/rexml.rb +36 -0
  924. data/vendor/rails/activesupport/lib/active_support/core_ext/string.rb +5 -10
  925. data/vendor/rails/activesupport/lib/active_support/core_ext/string/access.rb +72 -48
  926. data/vendor/rails/activesupport/lib/active_support/core_ext/string/conversions.rb +4 -4
  927. data/vendor/rails/activesupport/lib/active_support/core_ext/string/filters.rb +26 -0
  928. data/vendor/rails/activesupport/lib/active_support/core_ext/string/inflections.rb +58 -63
  929. data/vendor/rails/activesupport/lib/active_support/core_ext/string/iterators.rb +4 -0
  930. data/vendor/rails/activesupport/lib/active_support/core_ext/string/starts_ends_with.rb +12 -4
  931. data/vendor/rails/activesupport/lib/active_support/core_ext/string/unicode.rb +54 -30
  932. data/vendor/rails/activesupport/lib/active_support/core_ext/symbol.rb +1 -1
  933. data/vendor/rails/activesupport/lib/active_support/core_ext/test/unit/assertions.rb +5 -3
  934. data/vendor/rails/activesupport/lib/active_support/core_ext/time.rb +24 -1
  935. data/vendor/rails/activesupport/lib/active_support/core_ext/time/calculations.rb +75 -23
  936. data/vendor/rails/activesupport/lib/active_support/core_ext/time/conversions.rb +33 -38
  937. data/vendor/rails/activesupport/lib/active_support/core_ext/time/zones.rb +86 -0
  938. data/vendor/rails/activesupport/lib/active_support/dependencies.rb +418 -405
  939. data/vendor/rails/activesupport/lib/active_support/deprecation.rb +29 -10
  940. data/vendor/rails/activesupport/lib/active_support/duration.rb +4 -4
  941. data/vendor/rails/activesupport/lib/active_support/gzip.rb +25 -0
  942. data/vendor/rails/activesupport/lib/active_support/inflections.rb +51 -49
  943. data/vendor/rails/activesupport/lib/active_support/inflector.rb +267 -236
  944. data/vendor/rails/activesupport/lib/active_support/json.rb +17 -25
  945. data/vendor/rails/activesupport/lib/active_support/json/decoding.rb +9 -6
  946. data/vendor/rails/activesupport/lib/active_support/json/encoders/date.rb +11 -2
  947. data/vendor/rails/activesupport/lib/active_support/json/encoders/date_time.rb +11 -2
  948. data/vendor/rails/activesupport/lib/active_support/json/encoders/enumerable.rb +2 -2
  949. data/vendor/rails/activesupport/lib/active_support/json/encoders/hash.rb +3 -6
  950. data/vendor/rails/activesupport/lib/active_support/json/encoders/object.rb +1 -1
  951. data/vendor/rails/activesupport/lib/active_support/json/encoders/string.rb +8 -2
  952. data/vendor/rails/activesupport/lib/active_support/json/encoders/time.rb +11 -2
  953. data/vendor/rails/activesupport/lib/active_support/json/encoding.rb +0 -1
  954. data/vendor/rails/activesupport/lib/active_support/multibyte/chars.rb +10 -14
  955. data/vendor/rails/activesupport/lib/active_support/multibyte/handlers/utf8_handler.rb +11 -11
  956. data/vendor/rails/activesupport/lib/active_support/ordered_hash.rb +43 -0
  957. data/vendor/rails/activesupport/lib/active_support/ordered_options.rb +13 -43
  958. data/vendor/rails/activesupport/lib/active_support/string_inquirer.rb +11 -0
  959. data/vendor/rails/activesupport/lib/active_support/test_case.rb +10 -2
  960. data/vendor/rails/activesupport/lib/active_support/testing/default.rb +3 -6
  961. data/vendor/rails/activesupport/lib/active_support/testing/setup_and_teardown.rb +93 -0
  962. data/vendor/rails/activesupport/lib/active_support/time_with_zone.rb +304 -0
  963. data/vendor/rails/activesupport/lib/active_support/values/time_zone.rb +378 -163
  964. data/vendor/rails/activesupport/lib/active_support/vendor.rb +12 -0
  965. data/vendor/rails/activesupport/lib/active_support/vendor/memcache-client-1.5.0/memcache.rb +849 -0
  966. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo.rb +33 -0
  967. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/data_timezone.rb +47 -0
  968. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/data_timezone_info.rb +228 -0
  969. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Africa/Algiers.rb +55 -0
  970. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Africa/Cairo.rb +219 -0
  971. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Africa/Casablanca.rb +40 -0
  972. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Africa/Harare.rb +18 -0
  973. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Africa/Johannesburg.rb +25 -0
  974. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Africa/Monrovia.rb +22 -0
  975. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Africa/Nairobi.rb +23 -0
  976. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Argentina/Buenos_Aires.rb +166 -0
  977. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Argentina/San_Juan.rb +170 -0
  978. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Bogota.rb +23 -0
  979. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Caracas.rb +23 -0
  980. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Chicago.rb +283 -0
  981. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Chihuahua.rb +136 -0
  982. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Denver.rb +204 -0
  983. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Godthab.rb +161 -0
  984. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Guatemala.rb +27 -0
  985. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Halifax.rb +274 -0
  986. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Indiana/Indianapolis.rb +149 -0
  987. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Juneau.rb +194 -0
  988. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/La_Paz.rb +22 -0
  989. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Lima.rb +35 -0
  990. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Los_Angeles.rb +232 -0
  991. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Mazatlan.rb +139 -0
  992. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Mexico_City.rb +144 -0
  993. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Monterrey.rb +131 -0
  994. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/New_York.rb +282 -0
  995. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Phoenix.rb +30 -0
  996. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Regina.rb +74 -0
  997. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Santiago.rb +205 -0
  998. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Sao_Paulo.rb +171 -0
  999. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/St_Johns.rb +288 -0
  1000. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/America/Tijuana.rb +196 -0
  1001. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Almaty.rb +67 -0
  1002. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Baghdad.rb +73 -0
  1003. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Baku.rb +161 -0
  1004. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Bangkok.rb +20 -0
  1005. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Chongqing.rb +33 -0
  1006. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Dhaka.rb +27 -0
  1007. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Hong_Kong.rb +87 -0
  1008. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Irkutsk.rb +165 -0
  1009. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Jakarta.rb +30 -0
  1010. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Jerusalem.rb +163 -0
  1011. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Kabul.rb +20 -0
  1012. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Kamchatka.rb +163 -0
  1013. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Karachi.rb +30 -0
  1014. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Katmandu.rb +20 -0
  1015. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Kolkata.rb +25 -0
  1016. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Krasnoyarsk.rb +163 -0
  1017. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Kuala_Lumpur.rb +31 -0
  1018. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Kuwait.rb +18 -0
  1019. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Magadan.rb +163 -0
  1020. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Muscat.rb +18 -0
  1021. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Novosibirsk.rb +164 -0
  1022. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Rangoon.rb +24 -0
  1023. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Riyadh.rb +18 -0
  1024. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Seoul.rb +34 -0
  1025. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Shanghai.rb +35 -0
  1026. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Singapore.rb +33 -0
  1027. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Taipei.rb +59 -0
  1028. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Tashkent.rb +47 -0
  1029. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Tbilisi.rb +78 -0
  1030. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Tehran.rb +121 -0
  1031. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Tokyo.rb +30 -0
  1032. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Ulaanbaatar.rb +65 -0
  1033. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Urumqi.rb +33 -0
  1034. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Vladivostok.rb +164 -0
  1035. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Yakutsk.rb +163 -0
  1036. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Yekaterinburg.rb +165 -0
  1037. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Asia/Yerevan.rb +165 -0
  1038. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Atlantic/Azores.rb +270 -0
  1039. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Atlantic/Cape_Verde.rb +23 -0
  1040. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Atlantic/South_Georgia.rb +18 -0
  1041. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Australia/Adelaide.rb +187 -0
  1042. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Australia/Brisbane.rb +35 -0
  1043. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Australia/Darwin.rb +29 -0
  1044. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Australia/Hobart.rb +193 -0
  1045. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Australia/Melbourne.rb +185 -0
  1046. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Australia/Perth.rb +37 -0
  1047. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Australia/Sydney.rb +185 -0
  1048. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Etc/UTC.rb +16 -0
  1049. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Amsterdam.rb +228 -0
  1050. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Athens.rb +185 -0
  1051. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Belgrade.rb +163 -0
  1052. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Berlin.rb +188 -0
  1053. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Bratislava.rb +13 -0
  1054. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Brussels.rb +232 -0
  1055. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Bucharest.rb +181 -0
  1056. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Budapest.rb +197 -0
  1057. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Copenhagen.rb +179 -0
  1058. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Dublin.rb +276 -0
  1059. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Helsinki.rb +163 -0
  1060. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Istanbul.rb +218 -0
  1061. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Kiev.rb +168 -0
  1062. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Lisbon.rb +268 -0
  1063. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Ljubljana.rb +13 -0
  1064. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/London.rb +288 -0
  1065. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Madrid.rb +211 -0
  1066. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Minsk.rb +170 -0
  1067. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Moscow.rb +181 -0
  1068. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Paris.rb +232 -0
  1069. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Prague.rb +187 -0
  1070. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Riga.rb +176 -0
  1071. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Rome.rb +215 -0
  1072. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Sarajevo.rb +13 -0
  1073. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Skopje.rb +13 -0
  1074. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Sofia.rb +173 -0
  1075. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Stockholm.rb +165 -0
  1076. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Tallinn.rb +172 -0
  1077. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Vienna.rb +183 -0
  1078. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Vilnius.rb +170 -0
  1079. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Warsaw.rb +212 -0
  1080. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Europe/Zagreb.rb +13 -0
  1081. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Pacific/Auckland.rb +202 -0
  1082. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Pacific/Fiji.rb +23 -0
  1083. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Pacific/Guam.rb +22 -0
  1084. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Pacific/Honolulu.rb +28 -0
  1085. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Pacific/Majuro.rb +20 -0
  1086. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Pacific/Midway.rb +25 -0
  1087. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Pacific/Noumea.rb +25 -0
  1088. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Pacific/Pago_Pago.rb +26 -0
  1089. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Pacific/Port_Moresby.rb +20 -0
  1090. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/definitions/Pacific/Tongatapu.rb +27 -0
  1091. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/info_timezone.rb +52 -0
  1092. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/linked_timezone.rb +51 -0
  1093. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/linked_timezone_info.rb +44 -0
  1094. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/offset_rationals.rb +98 -0
  1095. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/ruby_core_support.rb +56 -0
  1096. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/time_or_datetime.rb +292 -0
  1097. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/timezone.rb +508 -0
  1098. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/timezone_definition.rb +56 -0
  1099. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/timezone_info.rb +40 -0
  1100. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/timezone_offset_info.rb +94 -0
  1101. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/timezone_period.rb +198 -0
  1102. data/vendor/rails/activesupport/lib/active_support/vendor/tzinfo-0.3.11/tzinfo/timezone_transition_info.rb +129 -0
  1103. data/vendor/rails/activesupport/lib/active_support/version.rb +1 -1
  1104. data/vendor/rails/activesupport/lib/active_support/whiny_nil.rb +30 -10
  1105. data/vendor/rails/railties/CHANGELOG +148 -0
  1106. data/vendor/rails/railties/MIT-LICENSE +1 -1
  1107. data/vendor/rails/railties/README +67 -14
  1108. data/vendor/rails/railties/Rakefile +15 -21
  1109. data/vendor/rails/railties/bin/about +2 -1
  1110. data/vendor/rails/railties/bin/dbconsole +3 -0
  1111. data/vendor/rails/railties/builtin/rails_info/rails/info.rb +22 -20
  1112. data/vendor/rails/railties/builtin/rails_info/rails/info_controller.rb +1 -1
  1113. data/vendor/rails/railties/configs/databases/frontbase.yml +2 -2
  1114. data/vendor/rails/railties/configs/databases/mysql.yml +2 -2
  1115. data/vendor/rails/railties/configs/databases/oracle.yml +3 -3
  1116. data/vendor/rails/railties/configs/databases/postgresql.yml +2 -2
  1117. data/vendor/rails/railties/configs/databases/sqlite2.yml +2 -2
  1118. data/vendor/rails/railties/configs/databases/sqlite3.yml +2 -2
  1119. data/vendor/rails/railties/configs/initializers/inflections.rb +1 -1
  1120. data/vendor/rails/railties/configs/initializers/new_rails_defaults.rb +17 -0
  1121. data/vendor/rails/railties/configs/routes.rb +8 -0
  1122. data/vendor/rails/railties/dispatches/gateway.cgi +2 -2
  1123. data/vendor/rails/railties/environments/boot.rb +6 -6
  1124. data/vendor/rails/railties/environments/development.rb +0 -1
  1125. data/vendor/rails/railties/environments/environment.rb +15 -7
  1126. data/vendor/rails/railties/environments/production.rb +3 -0
  1127. data/vendor/rails/railties/environments/test.rb +1 -1
  1128. data/vendor/rails/railties/helpers/application.rb +5 -0
  1129. data/vendor/rails/railties/html/images/rails.png +0 -0
  1130. data/vendor/rails/railties/html/index.html +6 -9
  1131. data/vendor/rails/railties/html/javascripts/controls.js +1 -1
  1132. data/vendor/rails/railties/html/javascripts/dragdrop.js +1 -1
  1133. data/vendor/rails/railties/html/javascripts/effects.js +1 -1
  1134. data/vendor/rails/railties/lib/commands/about.rb +1 -0
  1135. data/vendor/rails/railties/lib/commands/console.rb +5 -5
  1136. data/vendor/rails/railties/lib/commands/dbconsole.rb +67 -0
  1137. data/vendor/rails/railties/lib/commands/performance/profiler.rb +1 -1
  1138. data/vendor/rails/railties/lib/commands/plugin.rb +30 -3
  1139. data/vendor/rails/railties/lib/commands/server.rb +2 -2
  1140. data/vendor/rails/railties/lib/commands/servers/lighttpd.rb +1 -1
  1141. data/vendor/rails/railties/lib/commands/servers/mongrel.rb +9 -9
  1142. data/vendor/rails/railties/lib/commands/servers/new_mongrel.rb +16 -0
  1143. data/vendor/rails/railties/lib/commands/servers/webrick.rb +1 -1
  1144. data/vendor/rails/railties/lib/console_app.rb +2 -2
  1145. data/vendor/rails/railties/lib/console_sandbox.rb +2 -2
  1146. data/vendor/rails/railties/lib/console_with_helpers.rb +1 -1
  1147. data/vendor/rails/railties/lib/dispatcher.rb +1 -1
  1148. data/vendor/rails/railties/lib/fcgi_handler.rb +32 -16
  1149. data/vendor/rails/railties/lib/initializer.rb +303 -70
  1150. data/vendor/rails/railties/lib/rails/gem_builder.rb +21 -0
  1151. data/vendor/rails/railties/lib/rails/gem_dependency.rb +129 -0
  1152. data/vendor/rails/railties/lib/rails/mongrel_server/commands.rb +342 -0
  1153. data/vendor/rails/railties/lib/rails/mongrel_server/handler.rb +55 -0
  1154. data/vendor/rails/railties/lib/rails/plugin.rb +51 -19
  1155. data/vendor/rails/railties/lib/rails/plugin/loader.rb +4 -2
  1156. data/vendor/rails/railties/lib/rails/plugin/locator.rb +24 -2
  1157. data/vendor/rails/railties/lib/rails/version.rb +1 -1
  1158. data/vendor/rails/railties/lib/rails_generator/base.rb +1 -1
  1159. data/vendor/rails/railties/lib/rails_generator/commands.rb +85 -54
  1160. data/vendor/rails/railties/lib/rails_generator/generators/applications/app/app_generator.rb +9 -10
  1161. data/vendor/rails/railties/lib/rails_generator/generators/components/controller/templates/controller.rb +1 -4
  1162. data/vendor/rails/railties/lib/rails_generator/generators/components/controller/templates/functional_test.rb +1 -1
  1163. data/vendor/rails/railties/lib/rails_generator/generators/components/integration_test/templates/integration_test.rb +1 -1
  1164. data/vendor/rails/railties/lib/rails_generator/generators/components/mailer/mailer_generator.rb +2 -6
  1165. data/vendor/rails/railties/lib/rails_generator/generators/components/mailer/templates/mailer.rb +8 -6
  1166. data/vendor/rails/railties/lib/rails_generator/generators/components/mailer/templates/unit_test.rb +1 -1
  1167. data/vendor/rails/railties/lib/rails_generator/generators/components/migration/USAGE +4 -4
  1168. data/vendor/rails/railties/lib/rails_generator/generators/components/model/templates/unit_test.rb +1 -1
  1169. data/vendor/rails/railties/lib/rails_generator/generators/components/observer/templates/unit_test.rb +2 -2
  1170. data/vendor/rails/railties/lib/rails_generator/generators/components/resource/templates/functional_test.rb +1 -1
  1171. data/vendor/rails/railties/lib/rails_generator/generators/components/scaffold/scaffold_generator.rb +4 -3
  1172. data/vendor/rails/railties/lib/rails_generator/generators/components/scaffold/templates/functional_test.rb +1 -1
  1173. data/vendor/rails/railties/lib/rails_generator/generators/components/scaffold/templates/style.css +0 -20
  1174. data/vendor/rails/railties/lib/rails_generator/generators/components/scaffold/templates/view_edit.html.erb +3 -4
  1175. data/vendor/rails/railties/lib/rails_generator/generators/components/scaffold/templates/view_new.html.erb +3 -4
  1176. data/vendor/rails/railties/lib/rails_generator/lookup.rb +9 -4
  1177. data/vendor/rails/railties/lib/rails_generator/options.rb +7 -0
  1178. data/vendor/rails/railties/lib/rails_generator/scripts.rb +8 -5
  1179. data/vendor/rails/railties/lib/rails_generator/secret_key_generator.rb +12 -8
  1180. data/vendor/rails/railties/lib/source_annotation_extractor.rb +40 -0
  1181. data/vendor/rails/railties/lib/tasks/databases.rake +81 -55
  1182. data/vendor/rails/railties/lib/tasks/documentation.rake +4 -4
  1183. data/vendor/rails/railties/lib/tasks/framework.rake +23 -27
  1184. data/vendor/rails/railties/lib/tasks/gems.rake +64 -0
  1185. data/vendor/rails/railties/lib/tasks/misc.rake +47 -0
  1186. data/vendor/rails/railties/lib/tasks/rails.rb +1 -1
  1187. data/vendor/rails/railties/lib/tasks/testing.rake +3 -3
  1188. data/vendor/rails/railties/lib/test_help.rb +8 -0
  1189. metadata +788 -1204
  1190. data/app/controllers/admin/extension_controller.rb +0 -5
  1191. data/app/controllers/admin/layout_controller.rb +0 -21
  1192. data/app/controllers/admin/page_controller.rb +0 -115
  1193. data/app/controllers/admin/snippet_controller.rb +0 -3
  1194. data/app/controllers/admin/user_controller.rb +0 -44
  1195. data/app/helpers/admin/extension_helper.rb +0 -2
  1196. data/app/helpers/admin/layout_helper.rb +0 -2
  1197. data/app/helpers/admin/page_helper.rb +0 -69
  1198. data/app/helpers/admin/snippet_helper.rb +0 -2
  1199. data/app/helpers/admin/user_helper.rb +0 -8
  1200. data/app/models/radiant/extension_meta.rb +0 -5
  1201. data/app/views/admin/extension/index.html.haml +0 -28
  1202. data/app/views/admin/layout/edit.html.haml +0 -44
  1203. data/app/views/admin/layout/index.html.haml +0 -25
  1204. data/app/views/admin/layout/remove.html.haml +0 -16
  1205. data/app/views/admin/page/_meta_row.html.haml +0 -6
  1206. data/app/views/admin/page/_node.html.haml +0 -25
  1207. data/app/views/admin/page/_part.html.haml +0 -17
  1208. data/app/views/admin/page/_tag_reference.html.haml +0 -3
  1209. data/app/views/admin/page/children.html.haml +0 -2
  1210. data/app/views/admin/page/edit.html.haml +0 -115
  1211. data/app/views/admin/page/filter_reference.rjs +0 -5
  1212. data/app/views/admin/page/index.html.haml +0 -28
  1213. data/app/views/admin/page/remove.html.haml +0 -20
  1214. data/app/views/admin/page/tag_reference.rjs +0 -5
  1215. data/app/views/admin/snippet/edit.html.haml +0 -36
  1216. data/app/views/admin/snippet/index.html.haml +0 -20
  1217. data/app/views/admin/snippet/remove.html.haml +0 -19
  1218. data/app/views/admin/user/edit.html.haml +0 -80
  1219. data/app/views/admin/user/index.html.haml +0 -23
  1220. data/app/views/admin/user/preferences.html.haml +0 -28
  1221. data/app/views/admin/user/remove.html.haml +0 -18
  1222. data/lib/plugins/dependencies_fix/init.rb +0 -6
  1223. data/lib/plugins/string_io/init.rb +0 -2
  1224. data/spec/controllers/admin/abstract_model_controller_spec.rb +0 -265
  1225. data/spec/controllers/admin/extension_controller_spec.rb +0 -21
  1226. data/spec/controllers/admin/layout_controller_spec.rb +0 -42
  1227. data/spec/controllers/admin/page_controller_spec.rb +0 -287
  1228. data/spec/controllers/admin/snippet_controller_spec.rb +0 -27
  1229. data/spec/controllers/admin/user_controller_spec.rb +0 -72
  1230. data/spec/helpers/admin/extension_helper_spec.rb +0 -4
  1231. data/spec/helpers/admin/layout_helper_spec.rb +0 -4
  1232. data/spec/helpers/admin/page_helper_spec.rb +0 -45
  1233. data/spec/helpers/admin/snippet_helper_spec.rb +0 -4
  1234. data/spec/helpers/admin/user_helper_spec.rb +0 -11
  1235. data/spec/scenarios/file_not_found_scenario.rb +0 -19
  1236. data/spec/scenarios/home_page_scenario.rb +0 -64
  1237. data/spec/scenarios/layouts_scenario.rb +0 -58
  1238. data/spec/scenarios/markup_pages_scenario.rb +0 -13
  1239. data/spec/scenarios/pages_scenario.rb +0 -56
  1240. data/spec/scenarios/pages_with_layouts_scenario.rb +0 -10
  1241. data/spec/scenarios/snippets_scenario.rb +0 -38
  1242. data/spec/scenarios/users_and_pages_scenario.rb +0 -9
  1243. data/spec/scenarios/users_scenario.rb +0 -43
  1244. data/test/fixtures/extensions/01_basic/db/migrate/001_create_initial_schema.rb +0 -8
  1245. data/test/fixtures/extensions/01_basic/db/migrate/002_modify_initial_schema.rb +0 -8
  1246. data/test/fixtures/layouts.yml +0 -26
  1247. data/test/fixtures/page_parts.yml +0 -119
  1248. data/test/fixtures/pages.yml +0 -353
  1249. data/test/fixtures/sample.txt +0 -1
  1250. data/test/fixtures/snippets.yml +0 -26
  1251. data/test/fixtures/users.yml +0 -35
  1252. data/test/helpers/caching_test_helper.rb +0 -42
  1253. data/test/helpers/difference_test_helper.rb +0 -13
  1254. data/test/helpers/extension_fixture_test_helper.rb +0 -40
  1255. data/test/helpers/extension_tag_test_helper.rb +0 -17
  1256. data/test/helpers/layout_test_helper.rb +0 -35
  1257. data/test/helpers/logging_test_helper.rb +0 -20
  1258. data/test/helpers/login_test_helper.rb +0 -23
  1259. data/test/helpers/page_part_test_helper.rb +0 -49
  1260. data/test/helpers/routing_test_helper.rb +0 -19
  1261. data/test/helpers/snippet_test_helper.rb +0 -32
  1262. data/vendor/extensions/archive/spec/scenarios/archive_scenario.rb +0 -51
  1263. data/vendor/plugins/rspec/CHANGES +0 -1079
  1264. data/vendor/plugins/rspec/MIT-LICENSE +0 -20
  1265. data/vendor/plugins/rspec/README +0 -71
  1266. data/vendor/plugins/rspec/Rakefile +0 -279
  1267. data/vendor/plugins/rspec/TODO +0 -2
  1268. data/vendor/plugins/rspec/UPGRADE +0 -31
  1269. data/vendor/plugins/rspec/bin/spec +0 -4
  1270. data/vendor/plugins/rspec/bin/spec_translator +0 -8
  1271. data/vendor/plugins/rspec/examples/pure/autogenerated_docstrings_example.rb +0 -19
  1272. data/vendor/plugins/rspec/examples/pure/before_and_after_example.rb +0 -40
  1273. data/vendor/plugins/rspec/examples/pure/behave_as_example.rb +0 -45
  1274. data/vendor/plugins/rspec/examples/pure/custom_expectation_matchers.rb +0 -54
  1275. data/vendor/plugins/rspec/examples/pure/custom_formatter.rb +0 -12
  1276. data/vendor/plugins/rspec/examples/pure/dynamic_spec.rb +0 -9
  1277. data/vendor/plugins/rspec/examples/pure/file_accessor.rb +0 -19
  1278. data/vendor/plugins/rspec/examples/pure/file_accessor_spec.rb +0 -38
  1279. data/vendor/plugins/rspec/examples/pure/greeter_spec.rb +0 -31
  1280. data/vendor/plugins/rspec/examples/pure/helper_method_example.rb +0 -14
  1281. data/vendor/plugins/rspec/examples/pure/io_processor.rb +0 -8
  1282. data/vendor/plugins/rspec/examples/pure/io_processor_spec.rb +0 -21
  1283. data/vendor/plugins/rspec/examples/pure/legacy_spec.rb +0 -11
  1284. data/vendor/plugins/rspec/examples/pure/mocking_example.rb +0 -27
  1285. data/vendor/plugins/rspec/examples/pure/multi_threaded_behaviour_runner.rb +0 -28
  1286. data/vendor/plugins/rspec/examples/pure/nested_classes_example.rb +0 -36
  1287. data/vendor/plugins/rspec/examples/pure/partial_mock_example.rb +0 -28
  1288. data/vendor/plugins/rspec/examples/pure/pending_example.rb +0 -20
  1289. data/vendor/plugins/rspec/examples/pure/predicate_example.rb +0 -27
  1290. data/vendor/plugins/rspec/examples/pure/priority.txt +0 -1
  1291. data/vendor/plugins/rspec/examples/pure/shared_example_group_example.rb +0 -81
  1292. data/vendor/plugins/rspec/examples/pure/shared_stack_examples.rb +0 -38
  1293. data/vendor/plugins/rspec/examples/pure/spec_helper.rb +0 -3
  1294. data/vendor/plugins/rspec/examples/pure/stack.rb +0 -36
  1295. data/vendor/plugins/rspec/examples/pure/stack_spec.rb +0 -63
  1296. data/vendor/plugins/rspec/examples/pure/stack_spec_with_nested_example_groups.rb +0 -67
  1297. data/vendor/plugins/rspec/examples/pure/stubbing_example.rb +0 -69
  1298. data/vendor/plugins/rspec/examples/stories/adder.rb +0 -13
  1299. data/vendor/plugins/rspec/examples/stories/addition +0 -34
  1300. data/vendor/plugins/rspec/examples/stories/addition.rb +0 -9
  1301. data/vendor/plugins/rspec/examples/stories/calculator.rb +0 -65
  1302. data/vendor/plugins/rspec/examples/stories/game-of-life/README.txt +0 -21
  1303. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/everything.rb +0 -6
  1304. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/examples/examples.rb +0 -3
  1305. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/examples/game_behaviour.rb +0 -35
  1306. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/examples/grid_behaviour.rb +0 -66
  1307. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/CellsWithLessThanTwoNeighboursDie.story +0 -21
  1308. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/CellsWithMoreThanThreeNeighboursDie.story +0 -21
  1309. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/EmptySpacesWithThreeNeighboursCreateACell.story +0 -42
  1310. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/ICanCreateACell.story +0 -42
  1311. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/ICanKillACell.story +0 -17
  1312. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/TheGridWraps.story +0 -53
  1313. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/create_a_cell.rb +0 -52
  1314. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/helper.rb +0 -6
  1315. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/kill_a_cell.rb +0 -26
  1316. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/steps.rb +0 -5
  1317. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/stories.rb +0 -3
  1318. data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/stories.txt +0 -22
  1319. data/vendor/plugins/rspec/examples/stories/game-of-life/life.rb +0 -3
  1320. data/vendor/plugins/rspec/examples/stories/game-of-life/life/game.rb +0 -23
  1321. data/vendor/plugins/rspec/examples/stories/game-of-life/life/grid.rb +0 -43
  1322. data/vendor/plugins/rspec/examples/stories/helper.rb +0 -9
  1323. data/vendor/plugins/rspec/examples/stories/steps/addition_steps.rb +0 -18
  1324. data/vendor/plugins/rspec/failing_examples/README.txt +0 -7
  1325. data/vendor/plugins/rspec/failing_examples/diffing_spec.rb +0 -36
  1326. data/vendor/plugins/rspec/failing_examples/failing_autogenerated_docstrings_example.rb +0 -19
  1327. data/vendor/plugins/rspec/failing_examples/failure_in_setup.rb +0 -10
  1328. data/vendor/plugins/rspec/failing_examples/failure_in_teardown.rb +0 -10
  1329. data/vendor/plugins/rspec/failing_examples/mocking_example.rb +0 -40
  1330. data/vendor/plugins/rspec/failing_examples/mocking_with_flexmock.rb +0 -26
  1331. data/vendor/plugins/rspec/failing_examples/mocking_with_mocha.rb +0 -25
  1332. data/vendor/plugins/rspec/failing_examples/mocking_with_rr.rb +0 -27
  1333. data/vendor/plugins/rspec/failing_examples/partial_mock_example.rb +0 -20
  1334. data/vendor/plugins/rspec/failing_examples/predicate_example.rb +0 -29
  1335. data/vendor/plugins/rspec/failing_examples/raising_example.rb +0 -47
  1336. data/vendor/plugins/rspec/failing_examples/spec_helper.rb +0 -3
  1337. data/vendor/plugins/rspec/failing_examples/syntax_error_example.rb +0 -7
  1338. data/vendor/plugins/rspec/failing_examples/team_spec.rb +0 -44
  1339. data/vendor/plugins/rspec/failing_examples/timeout_behaviour.rb +0 -7
  1340. data/vendor/plugins/rspec/init.rb +0 -9
  1341. data/vendor/plugins/rspec/lib/autotest/discover.rb +0 -3
  1342. data/vendor/plugins/rspec/lib/autotest/rspec.rb +0 -72
  1343. data/vendor/plugins/rspec/lib/spec.rb +0 -30
  1344. data/vendor/plugins/rspec/lib/spec/example.rb +0 -12
  1345. data/vendor/plugins/rspec/lib/spec/example/configuration.rb +0 -144
  1346. data/vendor/plugins/rspec/lib/spec/example/errors.rb +0 -9
  1347. data/vendor/plugins/rspec/lib/spec/example/example_group.rb +0 -16
  1348. data/vendor/plugins/rspec/lib/spec/example/example_group_factory.rb +0 -58
  1349. data/vendor/plugins/rspec/lib/spec/example/example_group_methods.rb +0 -433
  1350. data/vendor/plugins/rspec/lib/spec/example/example_matcher.rb +0 -42
  1351. data/vendor/plugins/rspec/lib/spec/example/example_methods.rb +0 -110
  1352. data/vendor/plugins/rspec/lib/spec/example/module_reopening_fix.rb +0 -21
  1353. data/vendor/plugins/rspec/lib/spec/example/pending.rb +0 -18
  1354. data/vendor/plugins/rspec/lib/spec/example/shared_example_group.rb +0 -58
  1355. data/vendor/plugins/rspec/lib/spec/expectations.rb +0 -56
  1356. data/vendor/plugins/rspec/lib/spec/expectations/differs/default.rb +0 -66
  1357. data/vendor/plugins/rspec/lib/spec/expectations/errors.rb +0 -12
  1358. data/vendor/plugins/rspec/lib/spec/expectations/extensions.rb +0 -2
  1359. data/vendor/plugins/rspec/lib/spec/expectations/extensions/object.rb +0 -71
  1360. data/vendor/plugins/rspec/lib/spec/expectations/extensions/string_and_symbol.rb +0 -17
  1361. data/vendor/plugins/rspec/lib/spec/expectations/handler.rb +0 -52
  1362. data/vendor/plugins/rspec/lib/spec/extensions.rb +0 -4
  1363. data/vendor/plugins/rspec/lib/spec/extensions/class.rb +0 -24
  1364. data/vendor/plugins/rspec/lib/spec/extensions/main.rb +0 -102
  1365. data/vendor/plugins/rspec/lib/spec/extensions/metaclass.rb +0 -7
  1366. data/vendor/plugins/rspec/lib/spec/extensions/object.rb +0 -6
  1367. data/vendor/plugins/rspec/lib/spec/interop/test.rb +0 -12
  1368. data/vendor/plugins/rspec/lib/spec/interop/test/unit/autorunner.rb +0 -6
  1369. data/vendor/plugins/rspec/lib/spec/interop/test/unit/testcase.rb +0 -61
  1370. data/vendor/plugins/rspec/lib/spec/interop/test/unit/testresult.rb +0 -6
  1371. data/vendor/plugins/rspec/lib/spec/interop/test/unit/testsuite_adapter.rb +0 -34
  1372. data/vendor/plugins/rspec/lib/spec/interop/test/unit/ui/console/testrunner.rb +0 -61
  1373. data/vendor/plugins/rspec/lib/spec/matchers.rb +0 -156
  1374. data/vendor/plugins/rspec/lib/spec/matchers/be.rb +0 -224
  1375. data/vendor/plugins/rspec/lib/spec/matchers/be_close.rb +0 -37
  1376. data/vendor/plugins/rspec/lib/spec/matchers/change.rb +0 -144
  1377. data/vendor/plugins/rspec/lib/spec/matchers/eql.rb +0 -43
  1378. data/vendor/plugins/rspec/lib/spec/matchers/equal.rb +0 -43
  1379. data/vendor/plugins/rspec/lib/spec/matchers/exist.rb +0 -17
  1380. data/vendor/plugins/rspec/lib/spec/matchers/has.rb +0 -34
  1381. data/vendor/plugins/rspec/lib/spec/matchers/have.rb +0 -145
  1382. data/vendor/plugins/rspec/lib/spec/matchers/include.rb +0 -70
  1383. data/vendor/plugins/rspec/lib/spec/matchers/match.rb +0 -41
  1384. data/vendor/plugins/rspec/lib/spec/matchers/operator_matcher.rb +0 -73
  1385. data/vendor/plugins/rspec/lib/spec/matchers/raise_error.rb +0 -132
  1386. data/vendor/plugins/rspec/lib/spec/matchers/respond_to.rb +0 -45
  1387. data/vendor/plugins/rspec/lib/spec/matchers/satisfy.rb +0 -47
  1388. data/vendor/plugins/rspec/lib/spec/matchers/simple_matcher.rb +0 -29
  1389. data/vendor/plugins/rspec/lib/spec/matchers/throw_symbol.rb +0 -74
  1390. data/vendor/plugins/rspec/lib/spec/mocks.rb +0 -211
  1391. data/vendor/plugins/rspec/lib/spec/mocks/argument_constraint_matchers.rb +0 -31
  1392. data/vendor/plugins/rspec/lib/spec/mocks/argument_constraint_matchers.rb.orig +0 -27
  1393. data/vendor/plugins/rspec/lib/spec/mocks/argument_expectation.rb +0 -209
  1394. data/vendor/plugins/rspec/lib/spec/mocks/error_generator.rb +0 -84
  1395. data/vendor/plugins/rspec/lib/spec/mocks/errors.rb +0 -10
  1396. data/vendor/plugins/rspec/lib/spec/mocks/extensions/object.rb +0 -3
  1397. data/vendor/plugins/rspec/lib/spec/mocks/message_expectation.rb +0 -269
  1398. data/vendor/plugins/rspec/lib/spec/mocks/methods.rb +0 -39
  1399. data/vendor/plugins/rspec/lib/spec/mocks/mock.rb +0 -50
  1400. data/vendor/plugins/rspec/lib/spec/mocks/order_group.rb +0 -29
  1401. data/vendor/plugins/rspec/lib/spec/mocks/proxy.rb +0 -166
  1402. data/vendor/plugins/rspec/lib/spec/mocks/space.rb +0 -28
  1403. data/vendor/plugins/rspec/lib/spec/mocks/spec_methods.rb +0 -38
  1404. data/vendor/plugins/rspec/lib/spec/rake/spectask.rb +0 -235
  1405. data/vendor/plugins/rspec/lib/spec/rake/verify_rcov.rb +0 -52
  1406. data/vendor/plugins/rspec/lib/spec/runner.rb +0 -202
  1407. data/vendor/plugins/rspec/lib/spec/runner/backtrace_tweaker.rb +0 -57
  1408. data/vendor/plugins/rspec/lib/spec/runner/class_and_arguments_parser.rb +0 -16
  1409. data/vendor/plugins/rspec/lib/spec/runner/command_line.rb +0 -28
  1410. data/vendor/plugins/rspec/lib/spec/runner/drb_command_line.rb +0 -20
  1411. data/vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb +0 -59
  1412. data/vendor/plugins/rspec/lib/spec/runner/formatter/base_formatter.rb +0 -77
  1413. data/vendor/plugins/rspec/lib/spec/runner/formatter/base_text_formatter.rb +0 -130
  1414. data/vendor/plugins/rspec/lib/spec/runner/formatter/failing_example_groups_formatter.rb +0 -33
  1415. data/vendor/plugins/rspec/lib/spec/runner/formatter/failing_examples_formatter.rb +0 -20
  1416. data/vendor/plugins/rspec/lib/spec/runner/formatter/html_formatter.rb +0 -333
  1417. data/vendor/plugins/rspec/lib/spec/runner/formatter/profile_formatter.rb +0 -47
  1418. data/vendor/plugins/rspec/lib/spec/runner/formatter/progress_bar_formatter.rb +0 -30
  1419. data/vendor/plugins/rspec/lib/spec/runner/formatter/snippet_extractor.rb +0 -52
  1420. data/vendor/plugins/rspec/lib/spec/runner/formatter/specdoc_formatter.rb +0 -39
  1421. data/vendor/plugins/rspec/lib/spec/runner/formatter/story/html_formatter.rb +0 -128
  1422. data/vendor/plugins/rspec/lib/spec/runner/formatter/story/plain_text_formatter.rb +0 -131
  1423. data/vendor/plugins/rspec/lib/spec/runner/formatter/text_mate_formatter.rb +0 -16
  1424. data/vendor/plugins/rspec/lib/spec/runner/heckle_runner.rb +0 -72
  1425. data/vendor/plugins/rspec/lib/spec/runner/heckle_runner_unsupported.rb +0 -10
  1426. data/vendor/plugins/rspec/lib/spec/runner/option_parser.rb +0 -205
  1427. data/vendor/plugins/rspec/lib/spec/runner/options.rb +0 -288
  1428. data/vendor/plugins/rspec/lib/spec/runner/reporter.rb +0 -147
  1429. data/vendor/plugins/rspec/lib/spec/runner/spec_parser.rb +0 -71
  1430. data/vendor/plugins/rspec/lib/spec/story.rb +0 -10
  1431. data/vendor/plugins/rspec/lib/spec/story/extensions.rb +0 -3
  1432. data/vendor/plugins/rspec/lib/spec/story/extensions/main.rb +0 -86
  1433. data/vendor/plugins/rspec/lib/spec/story/extensions/regexp.rb +0 -9
  1434. data/vendor/plugins/rspec/lib/spec/story/extensions/string.rb +0 -9
  1435. data/vendor/plugins/rspec/lib/spec/story/given_scenario.rb +0 -14
  1436. data/vendor/plugins/rspec/lib/spec/story/runner.rb +0 -56
  1437. data/vendor/plugins/rspec/lib/spec/story/runner/plain_text_story_runner.rb +0 -48
  1438. data/vendor/plugins/rspec/lib/spec/story/runner/scenario_collector.rb +0 -18
  1439. data/vendor/plugins/rspec/lib/spec/story/runner/scenario_runner.rb +0 -48
  1440. data/vendor/plugins/rspec/lib/spec/story/runner/story_mediator.rb +0 -123
  1441. data/vendor/plugins/rspec/lib/spec/story/runner/story_parser.rb +0 -227
  1442. data/vendor/plugins/rspec/lib/spec/story/runner/story_runner.rb +0 -70
  1443. data/vendor/plugins/rspec/lib/spec/story/scenario.rb +0 -14
  1444. data/vendor/plugins/rspec/lib/spec/story/step.rb +0 -58
  1445. data/vendor/plugins/rspec/lib/spec/story/step_group.rb +0 -89
  1446. data/vendor/plugins/rspec/lib/spec/story/step_mother.rb +0 -37
  1447. data/vendor/plugins/rspec/lib/spec/story/story.rb +0 -39
  1448. data/vendor/plugins/rspec/lib/spec/story/world.rb +0 -124
  1449. data/vendor/plugins/rspec/lib/spec/translator.rb +0 -114
  1450. data/vendor/plugins/rspec/lib/spec/version.rb +0 -22
  1451. data/vendor/plugins/rspec/plugins/mock_frameworks/flexmock.rb +0 -23
  1452. data/vendor/plugins/rspec/plugins/mock_frameworks/mocha.rb +0 -19
  1453. data/vendor/plugins/rspec/plugins/mock_frameworks/rr.rb +0 -21
  1454. data/vendor/plugins/rspec/plugins/mock_frameworks/rspec.rb +0 -18
  1455. data/vendor/plugins/rspec/pre_commit/lib/pre_commit.rb +0 -4
  1456. data/vendor/plugins/rspec/pre_commit/lib/pre_commit/core.rb +0 -50
  1457. data/vendor/plugins/rspec/pre_commit/lib/pre_commit/pre_commit.rb +0 -54
  1458. data/vendor/plugins/rspec/pre_commit/lib/pre_commit/rspec.rb +0 -111
  1459. data/vendor/plugins/rspec/pre_commit/lib/pre_commit/rspec_on_rails.rb +0 -314
  1460. data/vendor/plugins/rspec/pre_commit/spec/pre_commit/pre_commit_spec.rb +0 -15
  1461. data/vendor/plugins/rspec/pre_commit/spec/pre_commit/rspec_on_rails_spec.rb +0 -51
  1462. data/vendor/plugins/rspec/pre_commit/spec/spec_helper.rb +0 -3
  1463. data/vendor/plugins/rspec/pre_commit/spec/spec_suite.rb +0 -11
  1464. data/vendor/plugins/rspec/rake_tasks/examples.rake +0 -7
  1465. data/vendor/plugins/rspec/rake_tasks/examples_with_rcov.rake +0 -9
  1466. data/vendor/plugins/rspec/rake_tasks/failing_examples_with_html.rake +0 -9
  1467. data/vendor/plugins/rspec/rake_tasks/verify_rcov.rake +0 -7
  1468. data/vendor/plugins/rspec/spec/README.jruby +0 -15
  1469. data/vendor/plugins/rspec/spec/autotest/discover_spec.rb +0 -19
  1470. data/vendor/plugins/rspec/spec/autotest/rspec_spec.rb +0 -197
  1471. data/vendor/plugins/rspec/spec/autotest_helper.rb +0 -6
  1472. data/vendor/plugins/rspec/spec/rspec_suite.rb +0 -7
  1473. data/vendor/plugins/rspec/spec/ruby_forker.rb +0 -13
  1474. data/vendor/plugins/rspec/spec/spec.opts +0 -6
  1475. data/vendor/plugins/rspec/spec/spec/example/configuration_spec.rb +0 -282
  1476. data/vendor/plugins/rspec/spec/spec/example/example_group_class_definition_spec.rb +0 -48
  1477. data/vendor/plugins/rspec/spec/spec/example/example_group_factory_spec.rb +0 -135
  1478. data/vendor/plugins/rspec/spec/spec/example/example_group_methods_spec.rb +0 -523
  1479. data/vendor/plugins/rspec/spec/spec/example/example_group_spec.rb +0 -711
  1480. data/vendor/plugins/rspec/spec/spec/example/example_matcher_spec.rb +0 -96
  1481. data/vendor/plugins/rspec/spec/spec/example/example_methods_spec.rb +0 -115
  1482. data/vendor/plugins/rspec/spec/spec/example/example_runner_spec.rb +0 -194
  1483. data/vendor/plugins/rspec/spec/spec/example/example_spec.rb +0 -53
  1484. data/vendor/plugins/rspec/spec/spec/example/nested_example_group_spec.rb +0 -71
  1485. data/vendor/plugins/rspec/spec/spec/example/pending_module_spec.rb +0 -31
  1486. data/vendor/plugins/rspec/spec/spec/example/predicate_matcher_spec.rb +0 -21
  1487. data/vendor/plugins/rspec/spec/spec/example/shared_example_group_spec.rb +0 -265
  1488. data/vendor/plugins/rspec/spec/spec/example/subclassing_example_group_spec.rb +0 -25
  1489. data/vendor/plugins/rspec/spec/spec/expectations/differs/default_spec.rb +0 -127
  1490. data/vendor/plugins/rspec/spec/spec/expectations/extensions/object_spec.rb +0 -107
  1491. data/vendor/plugins/rspec/spec/spec/expectations/fail_with_spec.rb +0 -71
  1492. data/vendor/plugins/rspec/spec/spec/extensions/main_spec.rb +0 -76
  1493. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/spec_that_fails.rb +0 -10
  1494. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/spec_that_passes.rb +0 -10
  1495. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/spec_with_errors.rb +0 -10
  1496. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/test_case_that_fails.rb +0 -10
  1497. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/test_case_that_passes.rb +0 -10
  1498. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/test_case_with_errors.rb +0 -10
  1499. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb +0 -38
  1500. data/vendor/plugins/rspec/spec/spec/interop/test/unit/spec_spec.rb +0 -45
  1501. data/vendor/plugins/rspec/spec/spec/interop/test/unit/test_unit_spec_helper.rb +0 -14
  1502. data/vendor/plugins/rspec/spec/spec/interop/test/unit/testcase_spec.rb +0 -45
  1503. data/vendor/plugins/rspec/spec/spec/interop/test/unit/testsuite_adapter_spec.rb +0 -9
  1504. data/vendor/plugins/rspec/spec/spec/matchers/be_close_spec.rb +0 -39
  1505. data/vendor/plugins/rspec/spec/spec/matchers/be_spec.rb +0 -248
  1506. data/vendor/plugins/rspec/spec/spec/matchers/change_spec.rb +0 -319
  1507. data/vendor/plugins/rspec/spec/spec/matchers/description_generation_spec.rb +0 -153
  1508. data/vendor/plugins/rspec/spec/spec/matchers/eql_spec.rb +0 -28
  1509. data/vendor/plugins/rspec/spec/spec/matchers/equal_spec.rb +0 -28
  1510. data/vendor/plugins/rspec/spec/spec/matchers/exist_spec.rb +0 -57
  1511. data/vendor/plugins/rspec/spec/spec/matchers/handler_spec.rb +0 -129
  1512. data/vendor/plugins/rspec/spec/spec/matchers/has_spec.rb +0 -53
  1513. data/vendor/plugins/rspec/spec/spec/matchers/have_spec.rb +0 -291
  1514. data/vendor/plugins/rspec/spec/spec/matchers/include_spec.rb +0 -45
  1515. data/vendor/plugins/rspec/spec/spec/matchers/match_spec.rb +0 -37
  1516. data/vendor/plugins/rspec/spec/spec/matchers/matcher_methods_spec.rb +0 -78
  1517. data/vendor/plugins/rspec/spec/spec/matchers/mock_constraint_matchers_spec.rb +0 -24
  1518. data/vendor/plugins/rspec/spec/spec/matchers/operator_matcher_spec.rb +0 -158
  1519. data/vendor/plugins/rspec/spec/spec/matchers/raise_error_spec.rb +0 -315
  1520. data/vendor/plugins/rspec/spec/spec/matchers/respond_to_spec.rb +0 -54
  1521. data/vendor/plugins/rspec/spec/spec/matchers/satisfy_spec.rb +0 -36
  1522. data/vendor/plugins/rspec/spec/spec/matchers/simple_matcher_spec.rb +0 -31
  1523. data/vendor/plugins/rspec/spec/spec/matchers/throw_symbol_spec.rb +0 -54
  1524. data/vendor/plugins/rspec/spec/spec/mocks/any_number_of_times_spec.rb +0 -29
  1525. data/vendor/plugins/rspec/spec/spec/mocks/argument_expectation_spec.rb +0 -23
  1526. data/vendor/plugins/rspec/spec/spec/mocks/at_least_spec.rb +0 -97
  1527. data/vendor/plugins/rspec/spec/spec/mocks/at_most_spec.rb +0 -93
  1528. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_10260_spec.rb +0 -8
  1529. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_10263_spec.rb +0 -24
  1530. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_11545_spec.rb +0 -33
  1531. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_15719_spec.rb +0 -30
  1532. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_7611_spec.rb +0 -19
  1533. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_7805_spec.rb +0 -22
  1534. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_8165_spec.rb +0 -31
  1535. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_8302_spec.rb +0 -26
  1536. data/vendor/plugins/rspec/spec/spec/mocks/failing_mock_argument_constraints_spec.rb +0 -123
  1537. data/vendor/plugins/rspec/spec/spec/mocks/hash_including_matcher_spec.rb +0 -32
  1538. data/vendor/plugins/rspec/spec/spec/mocks/mock_ordering_spec.rb +0 -84
  1539. data/vendor/plugins/rspec/spec/spec/mocks/mock_space_spec.rb +0 -54
  1540. data/vendor/plugins/rspec/spec/spec/mocks/mock_spec.rb +0 -481
  1541. data/vendor/plugins/rspec/spec/spec/mocks/multiple_return_value_spec.rb +0 -113
  1542. data/vendor/plugins/rspec/spec/spec/mocks/null_object_mock_spec.rb +0 -40
  1543. data/vendor/plugins/rspec/spec/spec/mocks/once_counts_spec.rb +0 -53
  1544. data/vendor/plugins/rspec/spec/spec/mocks/options_hash_spec.rb +0 -45
  1545. data/vendor/plugins/rspec/spec/spec/mocks/partial_mock_spec.rb +0 -106
  1546. data/vendor/plugins/rspec/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +0 -66
  1547. data/vendor/plugins/rspec/spec/spec/mocks/passing_mock_argument_constraints_spec.rb +0 -160
  1548. data/vendor/plugins/rspec/spec/spec/mocks/precise_counts_spec.rb +0 -52
  1549. data/vendor/plugins/rspec/spec/spec/mocks/record_messages_spec.rb +0 -26
  1550. data/vendor/plugins/rspec/spec/spec/mocks/stub_spec.rb +0 -181
  1551. data/vendor/plugins/rspec/spec/spec/mocks/twice_counts_spec.rb +0 -67
  1552. data/vendor/plugins/rspec/spec/spec/package/bin_spec_spec.rb +0 -14
  1553. data/vendor/plugins/rspec/spec/spec/runner/class_and_argument_parser_spec.rb +0 -23
  1554. data/vendor/plugins/rspec/spec/spec/runner/command_line_spec.rb +0 -147
  1555. data/vendor/plugins/rspec/spec/spec/runner/drb_command_line_spec.rb +0 -92
  1556. data/vendor/plugins/rspec/spec/spec/runner/examples.txt +0 -2
  1557. data/vendor/plugins/rspec/spec/spec/runner/execution_context_spec.rb +0 -37
  1558. data/vendor/plugins/rspec/spec/spec/runner/failed.txt +0 -3
  1559. data/vendor/plugins/rspec/spec/spec/runner/formatter/failing_example_groups_formatter_spec.rb +0 -45
  1560. data/vendor/plugins/rspec/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +0 -33
  1561. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.4.html +0 -365
  1562. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.5-jruby.html +0 -387
  1563. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.5.html +0 -371
  1564. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html +0 -381
  1565. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.6.html +0 -371
  1566. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatter_spec.rb +0 -66
  1567. data/vendor/plugins/rspec/spec/spec/runner/formatter/profile_formatter_spec.rb +0 -65
  1568. data/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +0 -137
  1569. data/vendor/plugins/rspec/spec/spec/runner/formatter/snippet_extractor_spec.rb +0 -18
  1570. data/vendor/plugins/rspec/spec/spec/runner/formatter/spec_mate_formatter_spec.rb +0 -103
  1571. data/vendor/plugins/rspec/spec/spec/runner/formatter/specdoc_formatter_spec.rb +0 -129
  1572. data/vendor/plugins/rspec/spec/spec/runner/formatter/story/html_formatter_spec.rb +0 -61
  1573. data/vendor/plugins/rspec/spec/spec/runner/formatter/story/plain_text_formatter_spec.rb +0 -335
  1574. data/vendor/plugins/rspec/spec/spec/runner/formatter/text_mate_formatted-1.8.4.html +0 -365
  1575. data/vendor/plugins/rspec/spec/spec/runner/formatter/text_mate_formatted-1.8.6.html +0 -371
  1576. data/vendor/plugins/rspec/spec/spec/runner/heckle_runner_spec.rb +0 -78
  1577. data/vendor/plugins/rspec/spec/spec/runner/heckler_spec.rb +0 -13
  1578. data/vendor/plugins/rspec/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +0 -45
  1579. data/vendor/plugins/rspec/spec/spec/runner/option_parser_spec.rb +0 -384
  1580. data/vendor/plugins/rspec/spec/spec/runner/options_spec.rb +0 -386
  1581. data/vendor/plugins/rspec/spec/spec/runner/output_one_time_fixture.rb +0 -7
  1582. data/vendor/plugins/rspec/spec/spec/runner/output_one_time_fixture_runner.rb +0 -8
  1583. data/vendor/plugins/rspec/spec/spec/runner/output_one_time_spec.rb +0 -16
  1584. data/vendor/plugins/rspec/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +0 -56
  1585. data/vendor/plugins/rspec/spec/spec/runner/reporter_spec.rb +0 -192
  1586. data/vendor/plugins/rspec/spec/spec/runner/resources/a_bar.rb +0 -0
  1587. data/vendor/plugins/rspec/spec/spec/runner/resources/a_foo.rb +0 -0
  1588. data/vendor/plugins/rspec/spec/spec/runner/resources/a_spec.rb +0 -1
  1589. data/vendor/plugins/rspec/spec/spec/runner/spec.opts +0 -2
  1590. data/vendor/plugins/rspec/spec/spec/runner/spec_drb.opts +0 -1
  1591. data/vendor/plugins/rspec/spec/spec/runner/spec_parser/spec_parser_fixture.rb +0 -70
  1592. data/vendor/plugins/rspec/spec/spec/runner/spec_parser_spec.rb +0 -79
  1593. data/vendor/plugins/rspec/spec/spec/runner/spec_spaced.opts +0 -2
  1594. data/vendor/plugins/rspec/spec/spec/runner_spec.rb +0 -11
  1595. data/vendor/plugins/rspec/spec/spec/spec_classes.rb +0 -133
  1596. data/vendor/plugins/rspec/spec/spec/story/builders.rb +0 -46
  1597. data/vendor/plugins/rspec/spec/spec/story/extensions/main_spec.rb +0 -161
  1598. data/vendor/plugins/rspec/spec/spec/story/extensions_spec.rb +0 -14
  1599. data/vendor/plugins/rspec/spec/spec/story/given_scenario_spec.rb +0 -27
  1600. data/vendor/plugins/rspec/spec/spec/story/runner/plain_text_story_runner_spec.rb +0 -92
  1601. data/vendor/plugins/rspec/spec/spec/story/runner/scenario_collector_spec.rb +0 -27
  1602. data/vendor/plugins/rspec/spec/spec/story/runner/scenario_runner_spec.rb +0 -191
  1603. data/vendor/plugins/rspec/spec/spec/story/runner/story_mediator_spec.rb +0 -133
  1604. data/vendor/plugins/rspec/spec/spec/story/runner/story_parser_spec.rb +0 -384
  1605. data/vendor/plugins/rspec/spec/spec/story/runner/story_runner_spec.rb +0 -294
  1606. data/vendor/plugins/rspec/spec/spec/story/runner_spec.rb +0 -106
  1607. data/vendor/plugins/rspec/spec/spec/story/scenario_spec.rb +0 -20
  1608. data/vendor/plugins/rspec/spec/spec/story/step_group_spec.rb +0 -157
  1609. data/vendor/plugins/rspec/spec/spec/story/step_mother_spec.rb +0 -72
  1610. data/vendor/plugins/rspec/spec/spec/story/step_spec.rb +0 -200
  1611. data/vendor/plugins/rspec/spec/spec/story/story_helper.rb +0 -2
  1612. data/vendor/plugins/rspec/spec/spec/story/story_spec.rb +0 -86
  1613. data/vendor/plugins/rspec/spec/spec/story/world_spec.rb +0 -423
  1614. data/vendor/plugins/rspec/spec/spec/translator_spec.rb +0 -265
  1615. data/vendor/plugins/rspec/spec/spec_helper.rb +0 -103
  1616. data/vendor/plugins/rspec/stories/all.rb +0 -5
  1617. data/vendor/plugins/rspec/stories/example_groups/autogenerated_docstrings +0 -45
  1618. data/vendor/plugins/rspec/stories/example_groups/example_group_with_should_methods +0 -17
  1619. data/vendor/plugins/rspec/stories/example_groups/nested_groups +0 -17
  1620. data/vendor/plugins/rspec/stories/example_groups/output +0 -25
  1621. data/vendor/plugins/rspec/stories/example_groups/stories.rb +0 -7
  1622. data/vendor/plugins/rspec/stories/helper.rb +0 -6
  1623. data/vendor/plugins/rspec/stories/interop/examples_and_tests_together +0 -30
  1624. data/vendor/plugins/rspec/stories/interop/stories.rb +0 -7
  1625. data/vendor/plugins/rspec/stories/interop/test_case_with_should_methods +0 -17
  1626. data/vendor/plugins/rspec/stories/pending_stories/README +0 -3
  1627. data/vendor/plugins/rspec/stories/resources/helpers/cmdline.rb +0 -9
  1628. data/vendor/plugins/rspec/stories/resources/helpers/story_helper.rb +0 -16
  1629. data/vendor/plugins/rspec/stories/resources/matchers/smart_match.rb +0 -37
  1630. data/vendor/plugins/rspec/stories/resources/spec/example_group_with_should_methods.rb +0 -12
  1631. data/vendor/plugins/rspec/stories/resources/spec/simple_spec.rb +0 -8
  1632. data/vendor/plugins/rspec/stories/resources/steps/running_rspec.rb +0 -50
  1633. data/vendor/plugins/rspec/stories/resources/stories/failing_story.rb +0 -15
  1634. data/vendor/plugins/rspec/stories/resources/test/spec_and_test_together.rb +0 -57
  1635. data/vendor/plugins/rspec/stories/resources/test/test_case_with_should_methods.rb +0 -30
  1636. data/vendor/plugins/rspec/story_server/prototype/javascripts/builder.js +0 -136
  1637. data/vendor/plugins/rspec/story_server/prototype/javascripts/controls.js +0 -972
  1638. data/vendor/plugins/rspec/story_server/prototype/javascripts/dragdrop.js +0 -976
  1639. data/vendor/plugins/rspec/story_server/prototype/javascripts/effects.js +0 -1117
  1640. data/vendor/plugins/rspec/story_server/prototype/javascripts/prototype.js +0 -4140
  1641. data/vendor/plugins/rspec/story_server/prototype/javascripts/rspec.js +0 -149
  1642. data/vendor/plugins/rspec/story_server/prototype/javascripts/scriptaculous.js +0 -58
  1643. data/vendor/plugins/rspec/story_server/prototype/javascripts/slider.js +0 -276
  1644. data/vendor/plugins/rspec/story_server/prototype/javascripts/sound.js +0 -55
  1645. data/vendor/plugins/rspec/story_server/prototype/javascripts/unittest.js +0 -568
  1646. data/vendor/plugins/rspec/story_server/prototype/lib/server.rb +0 -24
  1647. data/vendor/plugins/rspec/story_server/prototype/stories.html +0 -176
  1648. data/vendor/plugins/rspec/story_server/prototype/stylesheets/rspec.css +0 -136
  1649. data/vendor/plugins/rspec/story_server/prototype/stylesheets/test.css +0 -90
  1650. data/vendor/plugins/rspec_on_rails/MIT-LICENSE +0 -31
  1651. data/vendor/plugins/rspec_on_rails/README +0 -3
  1652. data/vendor/plugins/rspec_on_rails/Rakefile +0 -9
  1653. data/vendor/plugins/rspec_on_rails/generators/rspec/CHANGES +0 -1
  1654. data/vendor/plugins/rspec_on_rails/generators/rspec/rspec_generator.rb +0 -35
  1655. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/all_stories.rb +0 -4
  1656. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/previous_failures.txt +0 -0
  1657. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/rcov.opts +0 -2
  1658. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/script/spec +0 -4
  1659. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/script/spec_server +0 -102
  1660. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec.opts +0 -4
  1661. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec_helper.rb +0 -39
  1662. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/stories_helper.rb +0 -3
  1663. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/USAGE +0 -33
  1664. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/rspec_controller_generator.rb +0 -49
  1665. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/controller_spec.rb +0 -25
  1666. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/helper_spec.rb +0 -11
  1667. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/view_spec.rb +0 -12
  1668. data/vendor/plugins/rspec_on_rails/generators/rspec_model/USAGE +0 -18
  1669. data/vendor/plugins/rspec_on_rails/generators/rspec_model/rspec_model_generator.rb +0 -30
  1670. data/vendor/plugins/rspec_on_rails/generators/rspec_model/templates/model_spec.rb +0 -11
  1671. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/rspec_scaffold_generator.rb +0 -167
  1672. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/controller_spec.rb +0 -313
  1673. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/edit_erb_spec.rb +0 -25
  1674. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/helper_spec.rb +0 -11
  1675. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/index_erb_spec.rb +0 -22
  1676. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/new_erb_spec.rb +0 -26
  1677. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/routing_spec.rb +0 -61
  1678. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/show_erb_spec.rb +0 -22
  1679. data/vendor/plugins/rspec_on_rails/init.rb +0 -9
  1680. data/vendor/plugins/rspec_on_rails/lib/autotest/discover.rb +0 -1
  1681. data/vendor/plugins/rspec_on_rails/lib/autotest/rails_rspec.rb +0 -81
  1682. data/vendor/plugins/rspec_on_rails/lib/spec/rails.rb +0 -51
  1683. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example.rb +0 -46
  1684. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/assigns_hash_proxy.rb +0 -43
  1685. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/controller_example_group.rb +0 -269
  1686. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/functional_example_group.rb +0 -59
  1687. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/helper_example_group.rb +0 -130
  1688. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/model_example_group.rb +0 -14
  1689. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/rails_example_group.rb +0 -98
  1690. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/render_observer.rb +0 -90
  1691. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/view_example_group.rb +0 -178
  1692. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions.rb +0 -12
  1693. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/base.rb +0 -14
  1694. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/rescue.rb +0 -21
  1695. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/test_response.rb +0 -11
  1696. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_view/base.rb +0 -27
  1697. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/active_record/base.rb +0 -30
  1698. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/object.rb +0 -5
  1699. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/spec/example/configuration.rb +0 -66
  1700. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/spec/matchers/have.rb +0 -21
  1701. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers.rb +0 -29
  1702. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/assert_select.rb +0 -130
  1703. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/have_text.rb +0 -55
  1704. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/redirect_to.rb +0 -113
  1705. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/render_template.rb +0 -70
  1706. data/vendor/plugins/rspec_on_rails/lib/spec/rails/story_adapter.rb +0 -71
  1707. data/vendor/plugins/rspec_on_rails/lib/spec/rails/version.rb +0 -23
  1708. data/vendor/plugins/rspec_on_rails/spec/rails/autotest/mappings_spec.rb +0 -36
  1709. data/vendor/plugins/rspec_on_rails/spec/rails/autotest/rails_rspec_spec.rb +0 -8
  1710. data/vendor/plugins/rspec_on_rails/spec/rails/example/assigns_hash_proxy_spec.rb +0 -60
  1711. data/vendor/plugins/rspec_on_rails/spec/rails/example/configuration_spec.rb +0 -83
  1712. data/vendor/plugins/rspec_on_rails/spec/rails/example/controller_isolation_spec.rb +0 -43
  1713. data/vendor/plugins/rspec_on_rails/spec/rails/example/controller_spec_spec.rb +0 -195
  1714. data/vendor/plugins/rspec_on_rails/spec/rails/example/example_group_factory_spec.rb +0 -112
  1715. data/vendor/plugins/rspec_on_rails/spec/rails/example/helper_spec_spec.rb +0 -133
  1716. data/vendor/plugins/rspec_on_rails/spec/rails/example/model_spec_spec.rb +0 -18
  1717. data/vendor/plugins/rspec_on_rails/spec/rails/example/shared_behaviour_spec.rb +0 -16
  1718. data/vendor/plugins/rspec_on_rails/spec/rails/example/test_unit_assertion_accessibility_spec.rb +0 -33
  1719. data/vendor/plugins/rspec_on_rails/spec/rails/example/view_spec_spec.rb +0 -264
  1720. data/vendor/plugins/rspec_on_rails/spec/rails/extensions/action_controller_rescue_action_spec.rb +0 -54
  1721. data/vendor/plugins/rspec_on_rails/spec/rails/extensions/action_view_base_spec.rb +0 -48
  1722. data/vendor/plugins/rspec_on_rails/spec/rails/extensions/active_record_spec.rb +0 -14
  1723. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/assert_select_spec.rb +0 -783
  1724. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/description_generation_spec.rb +0 -37
  1725. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/errors_on_spec.rb +0 -13
  1726. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/have_text_spec.rb +0 -62
  1727. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/redirect_to_spec.rb +0 -209
  1728. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/render_spec.rb +0 -169
  1729. data/vendor/plugins/rspec_on_rails/spec/rails/mocks/ar_classes.rb +0 -10
  1730. data/vendor/plugins/rspec_on_rails/spec/rails/mocks/mock_model_spec.rb +0 -55
  1731. data/vendor/plugins/rspec_on_rails/spec/rails/mocks/stub_model_spec.rb +0 -54
  1732. data/vendor/plugins/rspec_on_rails/spec/rails/sample_spec.rb +0 -7
  1733. data/vendor/plugins/rspec_on_rails/spec/rails/spec_server_spec.rb +0 -89
  1734. data/vendor/plugins/rspec_on_rails/spec/rails/spec_spec.rb +0 -11
  1735. data/vendor/plugins/rspec_on_rails/spec/rails_suite.rb +0 -7
  1736. data/vendor/plugins/rspec_on_rails/spec/spec_helper.rb +0 -46
  1737. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/action_view_base_spec_controller.rb +0 -2
  1738. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/controller_spec_controller.rb +0 -68
  1739. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/redirect_spec_controller.rb +0 -59
  1740. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/render_spec_controller.rb +0 -26
  1741. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/rjs_spec_controller.rb +0 -58
  1742. data/vendor/plugins/rspec_on_rails/spec_resources/helpers/explicit_helper.rb +0 -10
  1743. data/vendor/plugins/rspec_on_rails/spec_resources/helpers/more_explicit_helper.rb +0 -5
  1744. data/vendor/plugins/rspec_on_rails/spec_resources/helpers/plugin_application_helper.rb +0 -6
  1745. data/vendor/plugins/rspec_on_rails/spec_resources/helpers/view_spec_helper.rb +0 -13
  1746. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/_partial.rhtml +0 -0
  1747. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_flash_after_session_reset.rhtml +0 -1
  1748. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_flash_before_session_reset.rhtml +0 -1
  1749. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_the_assigns_hash.rhtml +0 -0
  1750. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_with_errors_in_template.rhtml +0 -1
  1751. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_with_template.rhtml +0 -1
  1752. data/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/_a_partial.rhtml +0 -0
  1753. data/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.js.rjs +0 -1
  1754. data/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.rhtml +0 -0
  1755. data/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.rjs +0 -1
  1756. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/_replacement_partial.rhtml +0 -1
  1757. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/hide_div.rjs +0 -1
  1758. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/hide_page_element.rjs +0 -1
  1759. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/insert_html.rjs +0 -1
  1760. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace.rjs +0 -1
  1761. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace_html.rjs +0 -1
  1762. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace_html_with_partial.rjs +0 -1
  1763. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/visual_effect.rjs +0 -1
  1764. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/visual_toggle_effect.rjs +0 -1
  1765. data/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/no_tags.rhtml +0 -1
  1766. data/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/single_div_with_no_attributes.rhtml +0 -1
  1767. data/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/single_div_with_one_attribute.rhtml +0 -1
  1768. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial.rhtml +0 -2
  1769. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_used_twice.rhtml +0 -0
  1770. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_with_local_variable.rhtml +0 -1
  1771. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_with_sub_partial.rhtml +0 -1
  1772. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_spacer.rhtml +0 -1
  1773. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/accessor.rhtml +0 -3
  1774. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/entry_form.rhtml +0 -2
  1775. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/explicit_helper.rhtml +0 -2
  1776. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/foo/show.rhtml +0 -1
  1777. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/implicit_helper.rhtml +0 -2
  1778. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/multiple_helpers.rhtml +0 -3
  1779. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/template_with_partial.rhtml +0 -5
  1780. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/template_with_partial_using_collection.rhtml +0 -3
  1781. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/template_with_partial_with_array.rhtml +0 -1
  1782. data/vendor/plugins/rspec_on_rails/stories/all.rb +0 -10
  1783. data/vendor/plugins/rspec_on_rails/stories/helper.rb +0 -5
  1784. data/vendor/plugins/rspec_on_rails/stories/steps/people.rb +0 -8
  1785. data/vendor/plugins/rspec_on_rails/stories/transactions_should_rollback +0 -15
  1786. data/vendor/plugins/rspec_on_rails/stories/transactions_should_rollback.rb +0 -25
  1787. data/vendor/plugins/rspec_on_rails/tasks/rspec.rake +0 -137
  1788. data/vendor/plugins/scenarios/README +0 -262
  1789. data/vendor/plugins/scenarios/Rakefile +0 -66
  1790. data/vendor/plugins/scenarios/TODO +0 -1
  1791. data/vendor/plugins/scenarios/lib/scenarios.rb +0 -34
  1792. data/vendor/plugins/scenarios/lib/scenarios/base.rb +0 -73
  1793. data/vendor/plugins/scenarios/lib/scenarios/builtin/blank_scenario.rb +0 -18
  1794. data/vendor/plugins/scenarios/lib/scenarios/configuration.rb +0 -55
  1795. data/vendor/plugins/scenarios/lib/scenarios/extensions.rb +0 -5
  1796. data/vendor/plugins/scenarios/lib/scenarios/extensions/active_record.rb +0 -14
  1797. data/vendor/plugins/scenarios/lib/scenarios/extensions/delegating_attributes.rb +0 -40
  1798. data/vendor/plugins/scenarios/lib/scenarios/extensions/object.rb +0 -5
  1799. data/vendor/plugins/scenarios/lib/scenarios/extensions/string.rb +0 -22
  1800. data/vendor/plugins/scenarios/lib/scenarios/extensions/symbol.rb +0 -14
  1801. data/vendor/plugins/scenarios/lib/scenarios/extensions/test_case.rb +0 -76
  1802. data/vendor/plugins/scenarios/lib/scenarios/loading.rb +0 -51
  1803. data/vendor/plugins/scenarios/lib/scenarios/table_blasting.rb +0 -20
  1804. data/vendor/plugins/scenarios/lib/scenarios/table_methods.rb +0 -205
  1805. data/vendor/plugins/scenarios/spec/scenarios/complex_composite_scenario.rb +0 -9
  1806. data/vendor/plugins/scenarios/spec/scenarios/composite_scenario.rb +0 -9
  1807. data/vendor/plugins/scenarios/spec/scenarios/empty_scenario.rb +0 -4
  1808. data/vendor/plugins/scenarios/spec/scenarios/people_scenario.rb +0 -26
  1809. data/vendor/plugins/scenarios/spec/scenarios/places_scenario.rb +0 -22
  1810. data/vendor/plugins/scenarios/spec/scenarios/things_scenario.rb +0 -22
  1811. data/vendor/plugins/scenarios/spec/scenarios_spec.rb +0 -189
  1812. data/vendor/plugins/scenarios/spec/spec_helper.rb +0 -6
  1813. data/vendor/plugins/scenarios/tasks/scenario.rake +0 -21
  1814. data/vendor/plugins/scenarios/test/scenarios_test.rb +0 -39
  1815. data/vendor/plugins/scenarios/test/test_helper.rb +0 -5
  1816. data/vendor/plugins/scenarios/testing/application.rb +0 -2
  1817. data/vendor/plugins/scenarios/testing/database.yml +0 -9
  1818. data/vendor/plugins/scenarios/testing/environment.rb +0 -68
  1819. data/vendor/plugins/scenarios/testing/library.rb +0 -128
  1820. data/vendor/plugins/scenarios/testing/models.rb +0 -14
  1821. data/vendor/plugins/scenarios/testing/rspec_on_rails_3014.patch +0 -52
  1822. data/vendor/plugins/scenarios/testing/rspec_on_rails_3119.patch +0 -53
  1823. data/vendor/plugins/scenarios/testing/schema.rb +0 -31
  1824. data/vendor/rails/Rakefile +0 -21
  1825. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail.rb +0 -4
  1826. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/Makefile +0 -19
  1827. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/address.rb +0 -245
  1828. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/attachments.rb +0 -47
  1829. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/base64.rb +0 -52
  1830. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/compat.rb +0 -39
  1831. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/config.rb +0 -71
  1832. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/core_extensions.rb +0 -67
  1833. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/encode.rb +0 -481
  1834. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/facade.rb +0 -552
  1835. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/header.rb +0 -931
  1836. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/info.rb +0 -35
  1837. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/interface.rb +0 -540
  1838. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/loader.rb +0 -1
  1839. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/mail.rb +0 -462
  1840. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/mailbox.rb +0 -435
  1841. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/mbox.rb +0 -1
  1842. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/net.rb +0 -282
  1843. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/obsolete.rb +0 -137
  1844. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/parser.rb +0 -1475
  1845. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/parser.y +0 -381
  1846. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/quoting.rb +0 -142
  1847. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/scanner.rb +0 -43
  1848. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/scanner_r.rb +0 -263
  1849. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/stringio.rb +0 -279
  1850. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/tmail.rb +0 -1
  1851. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/utils.rb +0 -281
  1852. data/vendor/rails/actionmailer/lib/action_mailer/vendor/tmail-1.1.0/tmail/version.rb +0 -38
  1853. data/vendor/rails/actionmailer/test/fixtures/first_mailer/share.rhtml +0 -0
  1854. data/vendor/rails/actionmailer/test/fixtures/helper_mailer/use_example_helper.rhtml +0 -0
  1855. data/vendor/rails/actionmailer/test/fixtures/helper_mailer/use_helper.rhtml +0 -0
  1856. data/vendor/rails/actionmailer/test/fixtures/helper_mailer/use_helper_method.rhtml +0 -0
  1857. data/vendor/rails/actionmailer/test/fixtures/helper_mailer/use_mail_helper.rhtml +0 -0
  1858. data/vendor/rails/actionmailer/test/fixtures/path.with.dots/funky_path_mailer/multipart_with_template_path_with_dots.rhtml +0 -0
  1859. data/vendor/rails/actionmailer/test/fixtures/path.with.dots/multipart_with_template_path_with_dots.rhtml +0 -0
  1860. data/vendor/rails/actionmailer/test/fixtures/raw_base64_decoded_string +0 -0
  1861. data/vendor/rails/actionmailer/test/fixtures/raw_base64_encoded_string +0 -1
  1862. data/vendor/rails/actionmailer/test/fixtures/second_mailer/share.rhtml +0 -0
  1863. data/vendor/rails/actionmailer/test/fixtures/templates/signed_up.rhtml +0 -0
  1864. data/vendor/rails/actionmailer/test/fixtures/test_mailer/implicitly_multipart_example.ignored.rhtml +0 -0
  1865. data/vendor/rails/actionmailer/test/fixtures/test_mailer/implicitly_multipart_example.text.html.rhtml +0 -0
  1866. data/vendor/rails/actionmailer/test/fixtures/test_mailer/implicitly_multipart_example.text.plain.rhtml +0 -0
  1867. data/vendor/rails/actionmailer/test/fixtures/test_mailer/implicitly_multipart_example.text.yaml.rhtml +0 -0
  1868. data/vendor/rails/actionmailer/test/fixtures/test_mailer/signed_up.rhtml +0 -0
  1869. data/vendor/rails/actionmailer/test/fixtures/test_mailer/signed_up_with_url.rhtml +0 -0
  1870. data/vendor/rails/actionpack/lib/action_controller/routing_optimisation.rb +0 -119
  1871. data/vendor/rails/actionpack/lib/action_view/compiled_templates.rb +0 -69
  1872. data/vendor/rails/actionpack/test/action_view_test.rb +0 -44
  1873. data/vendor/rails/actionpack/test/controller/fragment_store_setting_test.rb +0 -47
  1874. data/vendor/rails/actionpack/test/template/compiled_templates_test.rb +0 -193
  1875. data/vendor/rails/activemodel/CHANGES +0 -12
  1876. data/vendor/rails/activemodel/README +0 -21
  1877. data/vendor/rails/activemodel/Rakefile +0 -4
  1878. data/vendor/rails/activemodel/lib/active_model.rb +0 -17
  1879. data/vendor/rails/activemodel/lib/active_model/base.rb +0 -4
  1880. data/vendor/rails/activemodel/lib/active_model/callbacks.rb +0 -5
  1881. data/vendor/rails/activemodel/lib/active_model/observing.rb +0 -100
  1882. data/vendor/rails/activemodel/lib/active_model/validations.rb +0 -4
  1883. data/vendor/rails/activemodel/spec/observing_spec.rb +0 -120
  1884. data/vendor/rails/activemodel/spec/spec_helper.rb +0 -17
  1885. data/vendor/rails/activerecord/MIT-LICENSE +0 -20
  1886. data/vendor/rails/activerecord/lib/active_record/vendor/db2.rb +0 -362
  1887. data/vendor/rails/activerecord/test/aaa_create_tables_test.rb +0 -72
  1888. data/vendor/rails/activerecord/test/abstract_unit.rb +0 -84
  1889. data/vendor/rails/activerecord/test/active_schema_test_mysql.rb +0 -43
  1890. data/vendor/rails/activerecord/test/adapter_test.rb +0 -105
  1891. data/vendor/rails/activerecord/test/adapter_test_sqlserver.rb +0 -95
  1892. data/vendor/rails/activerecord/test/aggregations_test.rb +0 -128
  1893. data/vendor/rails/activerecord/test/all.sh +0 -8
  1894. data/vendor/rails/activerecord/test/ar_schema_test.rb +0 -33
  1895. data/vendor/rails/activerecord/test/association_inheritance_reload.rb +0 -14
  1896. data/vendor/rails/activerecord/test/associations/callbacks_test.rb +0 -147
  1897. data/vendor/rails/activerecord/test/associations/cascaded_eager_loading_test.rb +0 -110
  1898. data/vendor/rails/activerecord/test/associations/eager_singularization_test.rb +0 -145
  1899. data/vendor/rails/activerecord/test/associations/eager_test.rb +0 -442
  1900. data/vendor/rails/activerecord/test/associations/extension_test.rb +0 -47
  1901. data/vendor/rails/activerecord/test/associations/inner_join_association_test.rb +0 -88
  1902. data/vendor/rails/activerecord/test/associations/join_model_test.rb +0 -559
  1903. data/vendor/rails/activerecord/test/associations_test.rb +0 -2147
  1904. data/vendor/rails/activerecord/test/attribute_methods_test.rb +0 -146
  1905. data/vendor/rails/activerecord/test/base_test.rb +0 -1745
  1906. data/vendor/rails/activerecord/test/binary_test.rb +0 -32
  1907. data/vendor/rails/activerecord/test/calculations_test.rb +0 -251
  1908. data/vendor/rails/activerecord/test/callbacks_test.rb +0 -400
  1909. data/vendor/rails/activerecord/test/class_inheritable_attributes_test.rb +0 -32
  1910. data/vendor/rails/activerecord/test/column_alias_test.rb +0 -17
  1911. data/vendor/rails/activerecord/test/connection_test_firebird.rb +0 -8
  1912. data/vendor/rails/activerecord/test/connection_test_mysql.rb +0 -30
  1913. data/vendor/rails/activerecord/test/copy_table_test_sqlite.rb +0 -69
  1914. data/vendor/rails/activerecord/test/datatype_test_postgresql.rb +0 -203
  1915. data/vendor/rails/activerecord/test/date_time_test.rb +0 -37
  1916. data/vendor/rails/activerecord/test/default_test_firebird.rb +0 -16
  1917. data/vendor/rails/activerecord/test/defaults_test.rb +0 -67
  1918. data/vendor/rails/activerecord/test/deprecated_finder_test.rb +0 -30
  1919. data/vendor/rails/activerecord/test/finder_test.rb +0 -650
  1920. data/vendor/rails/activerecord/test/fixtures/author.rb +0 -109
  1921. data/vendor/rails/activerecord/test/fixtures/bad_fixtures/attr_with_numeric_first_char +0 -1
  1922. data/vendor/rails/activerecord/test/fixtures/bad_fixtures/attr_with_spaces +0 -1
  1923. data/vendor/rails/activerecord/test/fixtures/bad_fixtures/blank_line +0 -3
  1924. data/vendor/rails/activerecord/test/fixtures/bad_fixtures/duplicate_attributes +0 -3
  1925. data/vendor/rails/activerecord/test/fixtures/bad_fixtures/missing_value +0 -1
  1926. data/vendor/rails/activerecord/test/fixtures/category.rb +0 -26
  1927. data/vendor/rails/activerecord/test/fixtures/comment.rb +0 -23
  1928. data/vendor/rails/activerecord/test/fixtures/company.rb +0 -114
  1929. data/vendor/rails/activerecord/test/fixtures/company_in_module.rb +0 -59
  1930. data/vendor/rails/activerecord/test/fixtures/computer.rb +0 -4
  1931. data/vendor/rails/activerecord/test/fixtures/contact.rb +0 -16
  1932. data/vendor/rails/activerecord/test/fixtures/customer.rb +0 -55
  1933. data/vendor/rails/activerecord/test/fixtures/db_definitions/db2.drop.sql +0 -33
  1934. data/vendor/rails/activerecord/test/fixtures/db_definitions/db2.sql +0 -235
  1935. data/vendor/rails/activerecord/test/fixtures/db_definitions/db22.drop.sql +0 -2
  1936. data/vendor/rails/activerecord/test/fixtures/db_definitions/db22.sql +0 -5
  1937. data/vendor/rails/activerecord/test/fixtures/db_definitions/firebird.drop.sql +0 -65
  1938. data/vendor/rails/activerecord/test/fixtures/db_definitions/firebird.sql +0 -310
  1939. data/vendor/rails/activerecord/test/fixtures/db_definitions/firebird2.drop.sql +0 -2
  1940. data/vendor/rails/activerecord/test/fixtures/db_definitions/firebird2.sql +0 -6
  1941. data/vendor/rails/activerecord/test/fixtures/db_definitions/frontbase.drop.sql +0 -33
  1942. data/vendor/rails/activerecord/test/fixtures/db_definitions/frontbase.sql +0 -273
  1943. data/vendor/rails/activerecord/test/fixtures/db_definitions/frontbase2.drop.sql +0 -1
  1944. data/vendor/rails/activerecord/test/fixtures/db_definitions/frontbase2.sql +0 -4
  1945. data/vendor/rails/activerecord/test/fixtures/db_definitions/openbase.drop.sql +0 -2
  1946. data/vendor/rails/activerecord/test/fixtures/db_definitions/openbase.sql +0 -318
  1947. data/vendor/rails/activerecord/test/fixtures/db_definitions/openbase2.drop.sql +0 -2
  1948. data/vendor/rails/activerecord/test/fixtures/db_definitions/openbase2.sql +0 -7
  1949. data/vendor/rails/activerecord/test/fixtures/db_definitions/oracle.drop.sql +0 -67
  1950. data/vendor/rails/activerecord/test/fixtures/db_definitions/oracle.sql +0 -330
  1951. data/vendor/rails/activerecord/test/fixtures/db_definitions/oracle2.drop.sql +0 -2
  1952. data/vendor/rails/activerecord/test/fixtures/db_definitions/oracle2.sql +0 -6
  1953. data/vendor/rails/activerecord/test/fixtures/db_definitions/postgresql.drop.sql +0 -44
  1954. data/vendor/rails/activerecord/test/fixtures/db_definitions/postgresql.sql +0 -292
  1955. data/vendor/rails/activerecord/test/fixtures/db_definitions/postgresql2.drop.sql +0 -2
  1956. data/vendor/rails/activerecord/test/fixtures/db_definitions/postgresql2.sql +0 -4
  1957. data/vendor/rails/activerecord/test/fixtures/db_definitions/schema.rb +0 -354
  1958. data/vendor/rails/activerecord/test/fixtures/db_definitions/schema2.rb +0 -11
  1959. data/vendor/rails/activerecord/test/fixtures/db_definitions/sqlite.drop.sql +0 -33
  1960. data/vendor/rails/activerecord/test/fixtures/db_definitions/sqlite.sql +0 -219
  1961. data/vendor/rails/activerecord/test/fixtures/db_definitions/sqlite2.drop.sql +0 -2
  1962. data/vendor/rails/activerecord/test/fixtures/db_definitions/sqlite2.sql +0 -5
  1963. data/vendor/rails/activerecord/test/fixtures/db_definitions/sybase.drop.sql +0 -35
  1964. data/vendor/rails/activerecord/test/fixtures/db_definitions/sybase.sql +0 -222
  1965. data/vendor/rails/activerecord/test/fixtures/db_definitions/sybase2.drop.sql +0 -4
  1966. data/vendor/rails/activerecord/test/fixtures/db_definitions/sybase2.sql +0 -5
  1967. data/vendor/rails/activerecord/test/fixtures/developer.rb +0 -72
  1968. data/vendor/rails/activerecord/test/fixtures/developers_projects/david_action_controller +0 -3
  1969. data/vendor/rails/activerecord/test/fixtures/developers_projects/david_active_record +0 -3
  1970. data/vendor/rails/activerecord/test/fixtures/developers_projects/jamis_active_record +0 -2
  1971. data/vendor/rails/activerecord/test/fixtures/migrations/1_people_have_last_names.rb +0 -9
  1972. data/vendor/rails/activerecord/test/fixtures/migrations/2_we_need_reminders.rb +0 -12
  1973. data/vendor/rails/activerecord/test/fixtures/migrations_with_duplicate/1_people_have_last_names.rb +0 -9
  1974. data/vendor/rails/activerecord/test/fixtures/migrations_with_duplicate/2_we_need_reminders.rb +0 -12
  1975. data/vendor/rails/activerecord/test/fixtures/migrations_with_missing_versions/1000_people_have_middle_names.rb +0 -9
  1976. data/vendor/rails/activerecord/test/fixtures/migrations_with_missing_versions/1_people_have_last_names.rb +0 -9
  1977. data/vendor/rails/activerecord/test/fixtures/migrations_with_missing_versions/3_we_need_reminders.rb +0 -12
  1978. data/vendor/rails/activerecord/test/fixtures/order.rb +0 -4
  1979. data/vendor/rails/activerecord/test/fixtures/person.rb +0 -4
  1980. data/vendor/rails/activerecord/test/fixtures/pirate.rb +0 -5
  1981. data/vendor/rails/activerecord/test/fixtures/post.rb +0 -59
  1982. data/vendor/rails/activerecord/test/fixtures/project.rb +0 -28
  1983. data/vendor/rails/activerecord/test/fixtures/reply.rb +0 -37
  1984. data/vendor/rails/activerecord/test/fixtures/subscriber.rb +0 -6
  1985. data/vendor/rails/activerecord/test/fixtures/subscribers/first +0 -2
  1986. data/vendor/rails/activerecord/test/fixtures/subscribers/second +0 -2
  1987. data/vendor/rails/activerecord/test/fixtures/topic.rb +0 -37
  1988. data/vendor/rails/activerecord/test/fixtures/treasure.rb +0 -4
  1989. data/vendor/rails/activerecord/test/fixtures_test.rb +0 -602
  1990. data/vendor/rails/activerecord/test/inheritance_test.rb +0 -211
  1991. data/vendor/rails/activerecord/test/json_serialization_test.rb +0 -180
  1992. data/vendor/rails/activerecord/test/lifecycle_test.rb +0 -137
  1993. data/vendor/rails/activerecord/test/locking_test.rb +0 -282
  1994. data/vendor/rails/activerecord/test/method_scoping_test.rb +0 -416
  1995. data/vendor/rails/activerecord/test/migration_test.rb +0 -933
  1996. data/vendor/rails/activerecord/test/migration_test_firebird.rb +0 -124
  1997. data/vendor/rails/activerecord/test/mixin_test.rb +0 -95
  1998. data/vendor/rails/activerecord/test/modules_test.rb +0 -34
  1999. data/vendor/rails/activerecord/test/multiple_db_test.rb +0 -60
  2000. data/vendor/rails/activerecord/test/pk_test.rb +0 -101
  2001. data/vendor/rails/activerecord/test/query_cache_test.rb +0 -104
  2002. data/vendor/rails/activerecord/test/readonly_test.rb +0 -107
  2003. data/vendor/rails/activerecord/test/reflection_test.rb +0 -175
  2004. data/vendor/rails/activerecord/test/reserved_word_test_mysql.rb +0 -177
  2005. data/vendor/rails/activerecord/test/schema_authorization_test_postgresql.rb +0 -75
  2006. data/vendor/rails/activerecord/test/schema_dumper_test.rb +0 -131
  2007. data/vendor/rails/activerecord/test/schema_test_postgresql.rb +0 -64
  2008. data/vendor/rails/activerecord/test/serialization_test.rb +0 -47
  2009. data/vendor/rails/activerecord/test/synonym_test_oracle.rb +0 -17
  2010. data/vendor/rails/activerecord/test/table_name_test_sqlserver.rb +0 -23
  2011. data/vendor/rails/activerecord/test/threaded_connections_test.rb +0 -48
  2012. data/vendor/rails/activerecord/test/transactions_test.rb +0 -281
  2013. data/vendor/rails/activerecord/test/unconnected_test.rb +0 -32
  2014. data/vendor/rails/activerecord/test/validations_test.rb +0 -1395
  2015. data/vendor/rails/activerecord/test/xml_serialization_test.rb +0 -202
  2016. data/vendor/rails/activeresource/MIT-LICENSE +0 -20
  2017. data/vendor/rails/activesupport/MIT-LICENSE +0 -20
  2018. data/vendor/rails/activesupport/Rakefile +0 -83
  2019. data/vendor/rails/activesupport/install.rb +0 -30
  2020. data/vendor/rails/activesupport/lib/active_support/testing.rb +0 -1
  2021. data/vendor/rails/activesupport/test/abstract_unit.rb +0 -20
  2022. data/vendor/rails/activesupport/test/autoloading_fixtures/a/b.rb +0 -2
  2023. data/vendor/rails/activesupport/test/autoloading_fixtures/a/c/d.rb +0 -2
  2024. data/vendor/rails/activesupport/test/autoloading_fixtures/a/c/e/f.rb +0 -2
  2025. data/vendor/rails/activesupport/test/autoloading_fixtures/application.rb +0 -1
  2026. data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder.rb +0 -3
  2027. data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder/class_folder_subclass.rb +0 -3
  2028. data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder/inline_class.rb +0 -2
  2029. data/vendor/rails/activesupport/test/autoloading_fixtures/class_folder/nested_class.rb +0 -7
  2030. data/vendor/rails/activesupport/test/autoloading_fixtures/conflict.rb +0 -1
  2031. data/vendor/rails/activesupport/test/autoloading_fixtures/counting_loader.rb +0 -5
  2032. data/vendor/rails/activesupport/test/autoloading_fixtures/cross_site_dependency.rb +0 -2
  2033. data/vendor/rails/activesupport/test/autoloading_fixtures/e.rb +0 -2
  2034. data/vendor/rails/activesupport/test/autoloading_fixtures/module_folder/inline_class.rb +0 -2
  2035. data/vendor/rails/activesupport/test/autoloading_fixtures/module_folder/nested_class.rb +0 -4
  2036. data/vendor/rails/activesupport/test/autoloading_fixtures/module_folder/nested_sibling.rb +0 -2
  2037. data/vendor/rails/activesupport/test/autoloading_fixtures/module_with_custom_const_missing/a/b.rb +0 -1
  2038. data/vendor/rails/activesupport/test/autoloading_fixtures/multiple_constant_file.rb +0 -2
  2039. data/vendor/rails/activesupport/test/autoloading_fixtures/raises_name_error.rb +0 -3
  2040. data/vendor/rails/activesupport/test/autoloading_fixtures/raises_no_method_error.rb +0 -3
  2041. data/vendor/rails/activesupport/test/buffered_logger_test.rb +0 -107
  2042. data/vendor/rails/activesupport/test/clean_logger_test.rb +0 -57
  2043. data/vendor/rails/activesupport/test/core_ext/array_ext_test.rb +0 -250
  2044. data/vendor/rails/activesupport/test/core_ext/blank_test.rb +0 -19
  2045. data/vendor/rails/activesupport/test/core_ext/cgi_ext_test.rb +0 -14
  2046. data/vendor/rails/activesupport/test/core_ext/class/attribute_accessor_test.rb +0 -31
  2047. data/vendor/rails/activesupport/test/core_ext/class/class_inheritable_attributes_test.rb +0 -224
  2048. data/vendor/rails/activesupport/test/core_ext/class/delegating_attributes_test.rb +0 -105
  2049. data/vendor/rails/activesupport/test/core_ext/class_test.rb +0 -46
  2050. data/vendor/rails/activesupport/test/core_ext/date_ext_test.rb +0 -196
  2051. data/vendor/rails/activesupport/test/core_ext/date_time_ext_test.rb +0 -230
  2052. data/vendor/rails/activesupport/test/core_ext/duplicable_test.rb +0 -22
  2053. data/vendor/rails/activesupport/test/core_ext/duration_test.rb +0 -21
  2054. data/vendor/rails/activesupport/test/core_ext/enumerable_test.rb +0 -61
  2055. data/vendor/rails/activesupport/test/core_ext/exception_test.rb +0 -64
  2056. data/vendor/rails/activesupport/test/core_ext/file_test.rb +0 -29
  2057. data/vendor/rails/activesupport/test/core_ext/float_ext_test.rb +0 -25
  2058. data/vendor/rails/activesupport/test/core_ext/hash_ext_test.rb +0 -743
  2059. data/vendor/rails/activesupport/test/core_ext/integer_ext_test.rb +0 -37
  2060. data/vendor/rails/activesupport/test/core_ext/kernel_test.rb +0 -43
  2061. data/vendor/rails/activesupport/test/core_ext/load_error_tests.rb +0 -16
  2062. data/vendor/rails/activesupport/test/core_ext/module/attr_accessor_with_default_test.rb +0 -30
  2063. data/vendor/rails/activesupport/test/core_ext/module/attr_internal_test.rb +0 -52
  2064. data/vendor/rails/activesupport/test/core_ext/module/attribute_accessor_test.rb +0 -33
  2065. data/vendor/rails/activesupport/test/core_ext/module/attribute_aliasing_test.rb +0 -58
  2066. data/vendor/rails/activesupport/test/core_ext/module_test.rb +0 -293
  2067. data/vendor/rails/activesupport/test/core_ext/name_error_test.rb +0 -24
  2068. data/vendor/rails/activesupport/test/core_ext/numeric_ext_test.rb +0 -147
  2069. data/vendor/rails/activesupport/test/core_ext/object_and_class_ext_test.rb +0 -242
  2070. data/vendor/rails/activesupport/test/core_ext/pathname_test.rb +0 -9
  2071. data/vendor/rails/activesupport/test/core_ext/proc_test.rb +0 -11
  2072. data/vendor/rails/activesupport/test/core_ext/range_ext_test.rb +0 -63
  2073. data/vendor/rails/activesupport/test/core_ext/string_ext_test.rb +0 -180
  2074. data/vendor/rails/activesupport/test/core_ext/symbol_test.rb +0 -9
  2075. data/vendor/rails/activesupport/test/core_ext/time_ext_test.rb +0 -420
  2076. data/vendor/rails/activesupport/test/dependencies/check_warnings.rb +0 -2
  2077. data/vendor/rails/activesupport/test/dependencies/conflict.rb +0 -1
  2078. data/vendor/rails/activesupport/test/dependencies/cross_site_depender.rb +0 -3
  2079. data/vendor/rails/activesupport/test/dependencies/mutual_one.rb +0 -4
  2080. data/vendor/rails/activesupport/test/dependencies/mutual_two.rb +0 -4
  2081. data/vendor/rails/activesupport/test/dependencies/raises_exception.rb +0 -3
  2082. data/vendor/rails/activesupport/test/dependencies/requires_nonexistent0.rb +0 -1
  2083. data/vendor/rails/activesupport/test/dependencies/requires_nonexistent1.rb +0 -1
  2084. data/vendor/rails/activesupport/test/dependencies/service_one.rb +0 -5
  2085. data/vendor/rails/activesupport/test/dependencies/service_two.rb +0 -2
  2086. data/vendor/rails/activesupport/test/dependencies_test.rb +0 -751
  2087. data/vendor/rails/activesupport/test/deprecation_test.rb +0 -151
  2088. data/vendor/rails/activesupport/test/inflector_test.rb +0 -248
  2089. data/vendor/rails/activesupport/test/inflector_test_cases.rb +0 -208
  2090. data/vendor/rails/activesupport/test/json/decoding_test.rb +0 -41
  2091. data/vendor/rails/activesupport/test/json/encoding_test.rb +0 -111
  2092. data/vendor/rails/activesupport/test/multibyte_chars_test.rb +0 -173
  2093. data/vendor/rails/activesupport/test/multibyte_conformance.rb +0 -141
  2094. data/vendor/rails/activesupport/test/multibyte_handler_test.rb +0 -367
  2095. data/vendor/rails/activesupport/test/option_merger_test.rb +0 -50
  2096. data/vendor/rails/activesupport/test/ordered_options_test.rb +0 -84
  2097. data/vendor/rails/activesupport/test/test_test.rb +0 -73
  2098. data/vendor/rails/activesupport/test/time_zone_test.rb +0 -98
  2099. data/vendor/rails/activesupport/test/whiny_nil_test.rb +0 -38
  2100. data/vendor/rails/cleanlogs.sh +0 -1
  2101. data/vendor/rails/pushgems.rb +0 -15
  2102. data/vendor/rails/railties/lib/tasks/tmp.rake +0 -37
  2103. data/vendor/rails/railties/test/abstract_unit.rb +0 -24
  2104. data/vendor/rails/railties/test/boot_test.rb +0 -179
  2105. data/vendor/rails/railties/test/console_app_test.rb +0 -29
  2106. data/vendor/rails/railties/test/fcgi_dispatcher_test.rb +0 -265
  2107. data/vendor/rails/railties/test/fixtures/environment_with_constant.rb +0 -1
  2108. data/vendor/rails/railties/test/fixtures/lib/generators/missing_class/missing_class_generator.rb +0 -0
  2109. data/vendor/rails/railties/test/fixtures/lib/generators/working/working_generator.rb +0 -2
  2110. data/vendor/rails/railties/test/fixtures/plugins/default/plugin_with_no_lib_dir/init.rb +0 -0
  2111. data/vendor/rails/railties/test/fixtures/plugins/default/stubby/init.rb +0 -7
  2112. data/vendor/rails/railties/test/fixtures/plugins/default/stubby/lib/stubby_mixin.rb +0 -2
  2113. data/vendor/rails/railties/test/generators/generator_test_helper.rb +0 -195
  2114. data/vendor/rails/railties/test/generators/rails_model_generator_test.rb +0 -109
  2115. data/vendor/rails/railties/test/generators/rails_resource_generator_test.rb +0 -106
  2116. data/vendor/rails/railties/test/generators/rails_scaffold_generator_test.rb +0 -185
  2117. data/vendor/rails/railties/test/initializer_test.rb +0 -218
  2118. data/vendor/rails/railties/test/mocks/routes.rb +0 -6
  2119. data/vendor/rails/railties/test/plugin_loader_test.rb +0 -140
  2120. data/vendor/rails/railties/test/plugin_locator_test.rb +0 -69
  2121. data/vendor/rails/railties/test/plugin_test.rb +0 -141
  2122. data/vendor/rails/railties/test/plugin_test_helper.rb +0 -29
  2123. data/vendor/rails/railties/test/rails_generator_test.rb +0 -137
  2124. data/vendor/rails/railties/test/rails_info_controller_test.rb +0 -48
  2125. data/vendor/rails/railties/test/rails_info_test.rb +0 -105
  2126. data/vendor/rails/railties/test/secret_key_generation_test.rb +0 -35
  2127. data/vendor/rails/release.rb +0 -25
@@ -1,11 +1,11 @@
1
1
  module ActiveRecord #:nodoc:
2
2
  module Serialization
3
- # Builds an XML document to represent the model. Some configuration is
4
- # available through +options+, however more complicated cases should
5
- # override ActiveRecord's to_xml.
3
+ # Builds an XML document to represent the model. Some configuration is
4
+ # available through +options+. However more complicated cases should
5
+ # override ActiveRecord::Base#to_xml.
6
6
  #
7
7
  # By default the generated XML document will include the processing
8
- # instruction and all object's attributes. For example:
8
+ # instruction and all the object's attributes. For example:
9
9
  #
10
10
  # <?xml version="1.0" encoding="UTF-8"?>
11
11
  # <topic>
@@ -22,12 +22,12 @@ module ActiveRecord #:nodoc:
22
22
  # <last-read type="date">2004-04-15</last-read>
23
23
  # </topic>
24
24
  #
25
- # This behavior can be controlled with :only, :except,
26
- # :skip_instruct, :skip_types and :dasherize. The :only and
27
- # :except options are the same as for the #attributes method.
28
- # The default is to dasherize all column names, to disable this,
29
- # set :dasherize to false. To not have the column type included
30
- # in the XML output, set :skip_types to true.
25
+ # This behavior can be controlled with <tt>:only</tt>, <tt>:except</tt>,
26
+ # <tt>:skip_instruct</tt>, <tt>:skip_types</tt> and <tt>:dasherize</tt>.
27
+ # The <tt>:only</tt> and <tt>:except</tt> options are the same as for the
28
+ # +attributes+ method. The default is to dasherize all column names, but you
29
+ # can disable this setting <tt>:dasherize</tt> to +false+. To not have the
30
+ # column type included in the XML output set <tt>:skip_types</tt> to +true+.
31
31
  #
32
32
  # For instance:
33
33
  #
@@ -43,7 +43,7 @@ module ActiveRecord #:nodoc:
43
43
  # <last-read type="date">2004-04-15</last-read>
44
44
  # </topic>
45
45
  #
46
- # To include first level associations use :include
46
+ # To include first level associations use <tt>:include</tt>:
47
47
  #
48
48
  # firm.to_xml :include => [ :account, :clients ]
49
49
  #
@@ -68,7 +68,37 @@ module ActiveRecord #:nodoc:
68
68
  # </account>
69
69
  # </firm>
70
70
  #
71
- # To include any methods on the object(s) being called use :methods
71
+ # To include deeper levels of associations pass a hash like this:
72
+ #
73
+ # firm.to_xml :include => {:account => {}, :clients => {:include => :address}}
74
+ # <?xml version="1.0" encoding="UTF-8"?>
75
+ # <firm>
76
+ # <id type="integer">1</id>
77
+ # <rating type="integer">1</rating>
78
+ # <name>37signals</name>
79
+ # <clients type="array">
80
+ # <client>
81
+ # <rating type="integer">1</rating>
82
+ # <name>Summit</name>
83
+ # <address>
84
+ # ...
85
+ # </address>
86
+ # </client>
87
+ # <client>
88
+ # <rating type="integer">1</rating>
89
+ # <name>Microsoft</name>
90
+ # <address>
91
+ # ...
92
+ # </address>
93
+ # </client>
94
+ # </clients>
95
+ # <account>
96
+ # <id type="integer">1</id>
97
+ # <credit-limit type="integer">50</credit-limit>
98
+ # </account>
99
+ # </firm>
100
+ #
101
+ # To include any methods on the model being called use <tt>:methods</tt>:
72
102
  #
73
103
  # firm.to_xml :methods => [ :calculated_earnings, :real_earnings ]
74
104
  #
@@ -78,9 +108,8 @@ module ActiveRecord #:nodoc:
78
108
  # <real-earnings>5</real-earnings>
79
109
  # </firm>
80
110
  #
81
- # To call any Proc's on the object(s) use :procs. The Proc's
82
- # are passed a modified version of the options hash that was
83
- # given to #to_xml.
111
+ # To call any additional Procs use <tt>:procs</tt>. The Procs are passed a
112
+ # modified version of the options hash that was given to +to_xml+:
84
113
  #
85
114
  # proc = Proc.new { |options| options[:builder].tag!('abc', 'def') }
86
115
  # firm.to_xml :procs => [ proc ]
@@ -90,7 +119,7 @@ module ActiveRecord #:nodoc:
90
119
  # <abc>def</abc>
91
120
  # </firm>
92
121
  #
93
- # Alternatively, you can also just yield the builder object as part of the to_xml call:
122
+ # Alternatively, you can yield the builder object as part of the +to_xml+ call:
94
123
  #
95
124
  # firm.to_xml do |xml|
96
125
  # xml.creator do
@@ -107,8 +136,9 @@ module ActiveRecord #:nodoc:
107
136
  # </creator>
108
137
  # </firm>
109
138
  #
110
- # You can override the to_xml method in your ActiveRecord::Base
111
- # subclasses if you need to. The general form of doing this is
139
+ # As noted above, you may override +to_xml+ in your ActiveRecord::Base
140
+ # subclasses to have complete control about what's generated. The general
141
+ # form of doing this is:
112
142
  #
113
143
  # class IHaveMyOwnXML < ActiveRecord::Base
114
144
  # def to_xml(options = {})
@@ -155,13 +185,6 @@ module ActiveRecord #:nodoc:
155
185
  !options.has_key?(:dasherize) || options[:dasherize]
156
186
  end
157
187
 
158
-
159
- # To replicate the behavior in ActiveRecord#attributes,
160
- # :except takes precedence over :only. If :only is not set
161
- # for a N level model but is set for the N+1 level models,
162
- # then because :except is set to a default value, the second
163
- # level model can have both :except and :only set. So if
164
- # :only is set, always delete :except.
165
188
  def serializable_attributes
166
189
  serializable_attribute_names.collect { |name| Attribute.new(name, @record) }
167
190
  end
@@ -250,14 +273,14 @@ module ActiveRecord #:nodoc:
250
273
  end
251
274
 
252
275
  # There is a significant speed improvement if the value
253
- # does not need to be escaped, as #tag! escapes all values
254
- # to ensure that valid XML is generated. For known binary
276
+ # does not need to be escaped, as <tt>tag!</tt> escapes all values
277
+ # to ensure that valid XML is generated. For known binary
255
278
  # values, it is at least an order of magnitude faster to
256
279
  # Base64 encode binary values and directly put them in the
257
280
  # output XML than to pass the original value or the Base64
258
- # encoded value to the #tag! method. It definitely makes
281
+ # encoded value to the <tt>tag!</tt> method. It definitely makes
259
282
  # no sense to Base64 encode the value and then give it to
260
- # #tag!, since that just adds additional overhead.
283
+ # <tt>tag!</tt>, since that just adds additional overhead.
261
284
  def needs_encoding?
262
285
  ![ :binary, :date, :datetime, :boolean, :float, :integer ].include?(type)
263
286
  end
@@ -0,0 +1,47 @@
1
+ require "active_support/test_case"
2
+
3
+ module ActiveRecord
4
+ class TestCase < ActiveSupport::TestCase #:nodoc:
5
+ self.fixture_path = FIXTURES_ROOT
6
+ self.use_instantiated_fixtures = false
7
+ self.use_transactional_fixtures = true
8
+
9
+ def create_fixtures(*table_names, &block)
10
+ Fixtures.create_fixtures(FIXTURES_ROOT, table_names, {}, &block)
11
+ end
12
+
13
+ def assert_date_from_db(expected, actual, message = nil)
14
+ # SQL Server doesn't have a separate column type just for dates,
15
+ # so the time is in the string and incorrectly formatted
16
+ if current_adapter?(:SQLServerAdapter)
17
+ assert_equal expected.strftime("%Y/%m/%d 00:00:00"), actual.strftime("%Y/%m/%d 00:00:00")
18
+ elsif current_adapter?(:SybaseAdapter)
19
+ assert_equal expected.to_s, actual.to_date.to_s, message
20
+ else
21
+ assert_equal expected.to_s, actual.to_s, message
22
+ end
23
+ end
24
+
25
+ def assert_sql(*patterns_to_match)
26
+ $queries_executed = []
27
+ yield
28
+ ensure
29
+ failed_patterns = []
30
+ patterns_to_match.each do |pattern|
31
+ failed_patterns << pattern unless $queries_executed.any?{ |sql| pattern === sql }
32
+ end
33
+ assert failed_patterns.empty?, "Query pattern(s) #{failed_patterns.map(&:inspect).join(', ')} not found."
34
+ end
35
+
36
+ def assert_queries(num = 1)
37
+ $queries_executed = []
38
+ yield
39
+ ensure
40
+ assert_equal num, $queries_executed.size, "#{$queries_executed.size} instead of #{num} queries were executed."
41
+ end
42
+
43
+ def assert_no_queries(&block)
44
+ assert_queries(0, &block)
45
+ end
46
+ end
47
+ end
@@ -5,7 +5,7 @@ module ActiveRecord
5
5
  # Timestamping can be turned off by setting
6
6
  # <tt>ActiveRecord::Base.record_timestamps = false</tt>
7
7
  #
8
- # Timestamps are in the local timezone by default but can use UTC by setting
8
+ # Timestamps are in the local timezone by default but you can use UTC by setting
9
9
  # <tt>ActiveRecord::Base.default_timezone = :utc</tt>
10
10
  module Timestamp
11
11
  def self.included(base) #:nodoc:
@@ -29,13 +29,13 @@ module ActiveRecord
29
29
  create_without_timestamps
30
30
  end
31
31
 
32
- def update_with_timestamps #:nodoc:
33
- if record_timestamps
32
+ def update_with_timestamps(*args) #:nodoc:
33
+ if record_timestamps && (!partial_updates? || changed?)
34
34
  t = self.class.default_timezone == :utc ? Time.now.utc : Time.now
35
35
  write_attribute('updated_at', t) if respond_to?(:updated_at)
36
36
  write_attribute('updated_on', t) if respond_to?(:updated_on)
37
37
  end
38
- update_without_timestamps
38
+ update_without_timestamps(*args)
39
39
  end
40
40
  end
41
41
  end
@@ -15,7 +15,7 @@ module ActiveRecord
15
15
  end
16
16
  end
17
17
 
18
- # Transactions are protective blocks where SQL statements are only permanent if they can all succeed as one atomic action.
18
+ # Transactions are protective blocks where SQL statements are only permanent if they can all succeed as one atomic action.
19
19
  # The classic example is a transfer between two accounts where you can only have a deposit if the withdrawal succeeded and
20
20
  # vice versa. Transactions enforce the integrity of the database and guard the data against program errors or database break-downs.
21
21
  # So basically you should use transaction blocks whenever you have a number of statements that must be executed together or
@@ -28,11 +28,11 @@ module ActiveRecord
28
28
  #
29
29
  # This example will only take money from David and give to Mary if neither +withdrawal+ nor +deposit+ raises an exception.
30
30
  # Exceptions will force a ROLLBACK that returns the database to the state before the transaction was begun. Be aware, though,
31
- # that the objects by default will _not_ have their instance data returned to their pre-transactional state.
31
+ # that the objects will _not_ have their instance data returned to their pre-transactional state.
32
32
  #
33
- # == Different ActiveRecord classes in a single transaction
33
+ # == Different Active Record classes in a single transaction
34
34
  #
35
- # Though the transaction class method is called on some ActiveRecord class,
35
+ # Though the transaction class method is called on some Active Record class,
36
36
  # the objects within the transaction block need not all be instances of
37
37
  # that class.
38
38
  # In this example a <tt>Balance</tt> record is transactionally saved even
@@ -73,14 +73,12 @@ module ActiveRecord
73
73
  # trigger a ROLLBACK when raised, but not be re-raised by the transaction block.
74
74
  module ClassMethods
75
75
  def transaction(&block)
76
- previous_handler = trap('TERM') { raise TransactionError, "Transaction aborted" }
77
76
  increment_open_transactions
78
77
 
79
78
  begin
80
79
  connection.transaction(Thread.current['start_db_transaction'], &block)
81
80
  ensure
82
81
  decrement_open_transactions
83
- trap('TERM', previous_handler)
84
82
  end
85
83
  end
86
84
 
@@ -116,7 +114,7 @@ module ActiveRecord
116
114
  def rollback_active_record_state!
117
115
  id_present = has_attribute?(self.class.primary_key)
118
116
  previous_id = id
119
- previous_new_record = @new_record
117
+ previous_new_record = new_record?
120
118
  yield
121
119
  rescue Exception
122
120
  @new_record = previous_new_record
@@ -125,7 +123,7 @@ module ActiveRecord
125
123
  else
126
124
  @attributes.delete(self.class.primary_key)
127
125
  @attributes_cache.delete(self.class.primary_key)
128
- end
126
+ end
129
127
  raise
130
128
  end
131
129
  end
@@ -1,12 +1,12 @@
1
1
  module ActiveRecord
2
2
  # Raised by save! and create! when the record is invalid. Use the
3
- # record method to retrieve the record which did not validate.
3
+ # +record+ method to retrieve the record which did not validate.
4
4
  # begin
5
5
  # complex_operation_that_calls_save!_internally
6
6
  # rescue ActiveRecord::RecordInvalid => invalid
7
7
  # puts invalid.record.errors
8
8
  # end
9
- class RecordInvalid < ActiveRecordError #:nodoc:
9
+ class RecordInvalid < ActiveRecordError
10
10
  attr_reader :record
11
11
  def initialize(record)
12
12
  @record = record
@@ -201,7 +201,7 @@ module ActiveRecord
201
201
  alias_method :count, :size
202
202
  alias_method :length, :size
203
203
 
204
- # Return an XML representation of this error object.
204
+ # Returns an XML representation of this error object.
205
205
  #
206
206
  # class Company < ActiveRecord::Base
207
207
  # validates_presence_of :name, :address, :email
@@ -266,7 +266,7 @@ module ActiveRecord
266
266
  # person.attributes = { "last_name" => "Heinemeier", "phone_number" => "555-555" }
267
267
  # person.save # => true (and person is now saved in the database)
268
268
  #
269
- # An +Errors+ object is automatically created for every Active Record.
269
+ # An Errors object is automatically created for every Active Record.
270
270
  #
271
271
  # Please do have a look at ActiveRecord::Validations::ClassMethods for a higher level of validations.
272
272
  module Validations
@@ -279,11 +279,14 @@ module ActiveRecord
279
279
  alias_method_chain :save!, :validation
280
280
  alias_method_chain :update_attribute, :validation_skipping
281
281
  end
282
+
283
+ base.send :include, ActiveSupport::Callbacks
284
+ base.define_callbacks *VALIDATIONS
282
285
  end
283
286
 
284
287
  # All of the following validations are defined in the class scope of the model that you're interested in validating.
285
288
  # They offer a more declarative way of specifying when the model is valid and when it is not. It is recommended to use
286
- # these over the low-level calls to validate and validate_on_create when possible.
289
+ # these over the low-level calls to +validate+ and +validate_on_create+ when possible.
287
290
  module ClassMethods
288
291
  DEFAULT_VALIDATION_OPTIONS = {
289
292
  :on => :save,
@@ -298,7 +301,7 @@ module ActiveRecord
298
301
  :odd => 'odd?', :even => 'even?' }.freeze
299
302
 
300
303
  # Adds a validation method or block to the class. This is useful when
301
- # overriding the #validate instance method becomes too unwieldly and
304
+ # overriding the +validate+ instance method becomes too unwieldly and
302
305
  # you're looking for more descriptive declaration of your validations.
303
306
  #
304
307
  # This can be done with a symbol pointing to a method:
@@ -323,44 +326,7 @@ module ActiveRecord
323
326
  # end
324
327
  # end
325
328
  #
326
- # This usage applies to #validate_on_create and #validate_on_update as well.
327
- def validate(*methods, &block)
328
- methods << block if block_given?
329
- write_inheritable_set(:validate, methods)
330
- end
331
-
332
- def validate_on_create(*methods, &block)
333
- methods << block if block_given?
334
- write_inheritable_set(:validate_on_create, methods)
335
- end
336
-
337
- def validate_on_update(*methods, &block)
338
- methods << block if block_given?
339
- write_inheritable_set(:validate_on_update, methods)
340
- end
341
-
342
- def condition_block?(condition)
343
- condition.respond_to?("call") && (condition.arity == 1 || condition.arity == -1)
344
- end
345
-
346
- # Determine from the given condition (whether a block, procedure, method or string)
347
- # whether or not to validate the record. See #validates_each.
348
- def evaluate_condition(condition, record)
349
- case condition
350
- when Symbol; record.send(condition)
351
- when String; eval(condition, record.send(:binding))
352
- else
353
- if condition_block?(condition)
354
- condition.call(record)
355
- else
356
- raise(
357
- ActiveRecordError,
358
- "Validations need to be either a symbol, string (to be eval'ed), proc/method, or " +
359
- "class implementing a static validation method"
360
- )
361
- end
362
- end
363
- end
329
+ # This usage applies to +validate_on_create+ and +validate_on_update+ as well.
364
330
 
365
331
  # Validates each attribute against a block.
366
332
  #
@@ -371,28 +337,25 @@ module ActiveRecord
371
337
  # end
372
338
  #
373
339
  # Options:
374
- # * <tt>on</tt> - Specifies when this validation is active (default is :save, other options :create, :update)
375
- # * <tt>allow_nil</tt> - Skip validation if attribute is nil.
376
- # * <tt>allow_blank</tt> - Skip validation if attribute is blank.
377
- # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
378
- # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
340
+ # * <tt>:on</tt> - Specifies when this validation is active (default is <tt>:save</tt>, other options <tt>:create</tt>, <tt>:update</tt>).
341
+ # * <tt>:allow_nil</tt> - Skip validation if attribute is +nil+.
342
+ # * <tt>:allow_blank</tt> - Skip validation if attribute is blank.
343
+ # * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
344
+ # occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
345
+ # method, proc or string should return or evaluate to a true or false value.
346
+ # * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
347
+ # not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
379
348
  # method, proc or string should return or evaluate to a true or false value.
380
- # * <tt>unless</tt> - Specifies a method, proc or string to call to determine if the validation should
381
- # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
382
- # method, proc or string should return or evaluate to a true or false value.
383
349
  def validates_each(*attrs)
384
350
  options = attrs.extract_options!.symbolize_keys
385
351
  attrs = attrs.flatten
386
352
 
387
353
  # Declare the validation.
388
- send(validation_method(options[:on] || :save)) do |record|
389
- # Don't validate when there is an :if condition and that condition is false or there is an :unless condition and that condition is true
390
- unless (options[:if] && !evaluate_condition(options[:if], record)) || (options[:unless] && evaluate_condition(options[:unless], record))
391
- attrs.each do |attr|
392
- value = record.send(attr)
393
- next if (value.nil? && options[:allow_nil]) || (value.blank? && options[:allow_blank])
394
- yield record, attr, value
395
- end
354
+ send(validation_method(options[:on] || :save), options) do |record|
355
+ attrs.each do |attr|
356
+ value = record.send(attr)
357
+ next if (value.nil? && options[:allow_nil]) || (value.blank? && options[:allow_blank])
358
+ yield record, attr, value
396
359
  end
397
360
  end
398
361
  end
@@ -410,21 +373,21 @@ module ActiveRecord
410
373
  # <%= password_field "person", "password_confirmation" %>
411
374
  #
412
375
  # The added +password_confirmation+ attribute is virtual; it exists only as an in-memory attribute for validating the password.
413
- # To achieve this, the validation adds acccessors to the model for the confirmation attribute. NOTE: This check is performed
414
- # only if +password_confirmation+ is not nil, and by default only on save. To require confirmation, make sure to add a presence
376
+ # To achieve this, the validation adds accessors to the model for the confirmation attribute. NOTE: This check is performed
377
+ # only if +password_confirmation+ is not +nil+, and by default only on save. To require confirmation, make sure to add a presence
415
378
  # check for the confirmation attribute:
416
379
  #
417
380
  # validates_presence_of :password_confirmation, :if => :password_changed?
418
381
  #
419
382
  # Configuration options:
420
- # * <tt>message</tt> - A custom error message (default is: "doesn't match confirmation")
421
- # * <tt>on</tt> - Specifies when this validation is active (default is :save, other options :create, :update)
422
- # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
423
- # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
383
+ # * <tt>:message</tt> - A custom error message (default is: "doesn't match confirmation").
384
+ # * <tt>:on</tt> - Specifies when this validation is active (default is <tt>:save</tt>, other options <tt>:create</tt>, <tt>:update</tt>).
385
+ # * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
386
+ # occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
387
+ # method, proc or string should return or evaluate to a true or false value.
388
+ # * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
389
+ # not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
424
390
  # method, proc or string should return or evaluate to a true or false value.
425
- # * <tt>unless</tt> - Specifies a method, proc or string to call to determine if the validation should
426
- # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
427
- # method, proc or string should return or evaluate to a true or false value.
428
391
  def validates_confirmation_of(*attr_names)
429
392
  configuration = { :message => ActiveRecord::Errors.default_error_messages[:confirmation], :on => :save }
430
393
  configuration.update(attr_names.extract_options!)
@@ -443,29 +406,29 @@ module ActiveRecord
443
406
  # validates_acceptance_of :eula, :message => "must be abided"
444
407
  # end
445
408
  #
446
- # If the database column does not exist, the terms_of_service attribute is entirely virtual. This check is
447
- # performed only if terms_of_service is not nil and by default on save.
409
+ # If the database column does not exist, the +terms_of_service+ attribute is entirely virtual. This check is
410
+ # performed only if +terms_of_service+ is not +nil+ and by default on save.
448
411
  #
449
412
  # Configuration options:
450
- # * <tt>message</tt> - A custom error message (default is: "must be accepted")
451
- # * <tt>on</tt> - Specifies when this validation is active (default is :save, other options :create, :update)
452
- # * <tt>allow_nil</tt> - Skip validation if attribute is nil. (default is true)
453
- # * <tt>accept</tt> - Specifies value that is considered accepted. The default value is a string "1", which
454
- # makes it easy to relate to an HTML checkbox. This should be set to 'true' if you are validating a database
455
- # column, since the attribute is typecast from "1" to <tt>true</tt> before validation.
456
- # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
457
- # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
413
+ # * <tt>:message</tt> - A custom error message (default is: "must be accepted").
414
+ # * <tt>:on</tt> - Specifies when this validation is active (default is <tt>:save</tt>, other options <tt>:create</tt>, <tt>:update</tt>).
415
+ # * <tt>:allow_nil</tt> - Skip validation if attribute is +nil+ (default is true).
416
+ # * <tt>:accept</tt> - Specifies value that is considered accepted. The default value is a string "1", which
417
+ # makes it easy to relate to an HTML checkbox. This should be set to +true+ if you are validating a database
418
+ # column, since the attribute is typecast from "1" to +true+ before validation.
419
+ # * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
420
+ # occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
421
+ # method, proc or string should return or evaluate to a true or false value.
422
+ # * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
423
+ # not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
458
424
  # method, proc or string should return or evaluate to a true or false value.
459
- # * <tt>unless</tt> - Specifies a method, proc or string to call to determine if the validation should
460
- # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
461
- # method, proc or string should return or evaluate to a true or false value.
462
425
  def validates_acceptance_of(*attr_names)
463
426
  configuration = { :message => ActiveRecord::Errors.default_error_messages[:accepted], :on => :save, :allow_nil => true, :accept => "1" }
464
427
  configuration.update(attr_names.extract_options!)
465
428
 
466
429
  db_cols = begin
467
430
  column_names
468
- rescue ActiveRecord::StatementInvalid
431
+ rescue Exception # To ignore both statement and connection errors
469
432
  []
470
433
  end
471
434
  names = attr_names.reject { |name| db_cols.include?(name.to_s) }
@@ -489,8 +452,8 @@ module ActiveRecord
489
452
  # This is due to the way Object#blank? handles boolean values. false.blank? # => true
490
453
  #
491
454
  # Configuration options:
492
- # * <tt>message</tt> - A custom error message (default is: "can't be blank")
493
- # * <tt>on</tt> - Specifies when this validation is active (default is :save, other options :create, :update)
455
+ # * <tt>message</tt> - A custom error message (default is: "can't be blank").
456
+ # * <tt>on</tt> - Specifies when this validation is active (default is <tt>:save</tt>, other options <tt>:create</tt>, <tt>:update</tt>).
494
457
  # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
495
458
  # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
496
459
  # method, proc or string should return or evaluate to a true or false value.
@@ -498,28 +461,15 @@ module ActiveRecord
498
461
  # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
499
462
  # method, proc or string should return or evaluate to a true or false value.
500
463
  #
501
- # === Warning
502
- # Validate the presence of the foreign key, not the instance variable itself.
503
- # Do this:
504
- # validates_presence_of :invoice_id
505
- #
506
- # Not this:
507
- # validates_presence_of :invoice
508
- #
509
- # If you validate the presence of the associated object, you will get
510
- # failures on saves when both the parent object and the child object are
511
- # new.
512
464
  def validates_presence_of(*attr_names)
513
465
  configuration = { :message => ActiveRecord::Errors.default_error_messages[:blank], :on => :save }
514
466
  configuration.update(attr_names.extract_options!)
515
467
 
516
468
  # can't use validates_each here, because it cannot cope with nonexistent attributes,
517
469
  # while errors.add_on_empty can
518
- send(validation_method(configuration[:on])) do |record|
519
- unless (configuration[:if] && !evaluate_condition(configuration[:if], record)) || (configuration[:unless] && evaluate_condition(configuration[:unless], record))
520
- record.errors.add_on_blank(attr_names, configuration[:message])
521
- end
522
- end
470
+ send(validation_method(configuration[:on]), configuration) do |record|
471
+ record.errors.add_on_blank(attr_names, configuration[:message])
472
+ end
523
473
  end
524
474
 
525
475
  # Validates that the specified attribute matches the length restrictions supplied. Only one option can be used at a time:
@@ -530,36 +480,40 @@ module ActiveRecord
530
480
  # validates_length_of :fax, :in => 7..32, :allow_nil => true
531
481
  # validates_length_of :phone, :in => 7..32, :allow_blank => true
532
482
  # validates_length_of :user_name, :within => 6..20, :too_long => "pick a shorter name", :too_short => "pick a longer name"
533
- # validates_length_of :fav_bra_size, :minimum=>1, :too_short=>"please enter at least %d character"
534
- # validates_length_of :smurf_leader, :is=>4, :message=>"papa is spelled with %d characters... don't play me."
483
+ # validates_length_of :fav_bra_size, :minimum => 1, :too_short => "please enter at least %d character"
484
+ # validates_length_of :smurf_leader, :is => 4, :message => "papa is spelled with %d characters... don't play me."
485
+ # validates_length_of :essay, :minimum => 100, :too_short => "Your essay must be at least %d words."), :tokenizer => lambda {|str| str.scan(/\w+/) }
535
486
  # end
536
487
  #
537
488
  # Configuration options:
538
- # * <tt>minimum</tt> - The minimum size of the attribute
539
- # * <tt>maximum</tt> - The maximum size of the attribute
540
- # * <tt>is</tt> - The exact size of the attribute
541
- # * <tt>within</tt> - A range specifying the minimum and maximum size of the attribute
542
- # * <tt>in</tt> - A synonym(or alias) for :within
543
- # * <tt>allow_nil</tt> - Attribute may be nil; skip validation.
544
- # * <tt>allow_blank</tt> - Attribute may be blank; skip validation.
545
- #
546
- # * <tt>too_long</tt> - The error message if the attribute goes over the maximum (default is: "is too long (maximum is %d characters)")
547
- # * <tt>too_short</tt> - The error message if the attribute goes under the minimum (default is: "is too short (min is %d characters)")
548
- # * <tt>wrong_length</tt> - The error message if using the :is method and the attribute is the wrong size (default is: "is the wrong length (should be %d characters)")
549
- # * <tt>message</tt> - The error message to use for a :minimum, :maximum, or :is violation. An alias of the appropriate too_long/too_short/wrong_length message
550
- # * <tt>on</tt> - Specifies when this validation is active (default is :save, other options :create, :update)
551
- # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
552
- # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
489
+ # * <tt>:minimum</tt> - The minimum size of the attribute.
490
+ # * <tt>:maximum</tt> - The maximum size of the attribute.
491
+ # * <tt>:is</tt> - The exact size of the attribute.
492
+ # * <tt>:within</tt> - A range specifying the minimum and maximum size of the attribute.
493
+ # * <tt>:in</tt> - A synonym(or alias) for <tt>:within</tt>.
494
+ # * <tt>:allow_nil</tt> - Attribute may be +nil+; skip validation.
495
+ # * <tt>:allow_blank</tt> - Attribute may be blank; skip validation.
496
+ # * <tt>:too_long</tt> - The error message if the attribute goes over the maximum (default is: "is too long (maximum is %d characters)").
497
+ # * <tt>:too_short</tt> - The error message if the attribute goes under the minimum (default is: "is too short (min is %d characters)").
498
+ # * <tt>:wrong_length</tt> - The error message if using the <tt>:is</tt> method and the attribute is the wrong size (default is: "is the wrong length (should be %d characters)").
499
+ # * <tt>:message</tt> - The error message to use for a <tt>:minimum</tt>, <tt>:maximum</tt>, or <tt>:is</tt> violation. An alias of the appropriate <tt>too_long</tt>/<tt>too_short</tt>/<tt>wrong_length</tt> message.
500
+ # * <tt>:on</tt> - Specifies when this validation is active (default is <tt>:save</tt>, other options <tt>:create</tt>, <tt>:update</tt>).
501
+ # * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
502
+ # occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
553
503
  # method, proc or string should return or evaluate to a true or false value.
554
- # * <tt>unless</tt> - Specifies a method, proc or string to call to determine if the validation should
555
- # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
556
- # method, proc or string should return or evaluate to a true or false value.
504
+ # * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
505
+ # not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
506
+ # method, proc or string should return or evaluate to a true or false value.
507
+ # * <tt>:tokenizer</tt> - Specifies how to split up the attribute string. (e.g. <tt>:tokenizer => lambda {|str| str.scan(/\w+/)}</tt> to
508
+ # count words as in above example.)
509
+ # Defaults to <tt>lambda{ |value| value.split(//) }</tt> which counts individual characters.
557
510
  def validates_length_of(*attrs)
558
511
  # Merge given options with defaults.
559
512
  options = {
560
513
  :too_long => ActiveRecord::Errors.default_error_messages[:too_long],
561
514
  :too_short => ActiveRecord::Errors.default_error_messages[:too_short],
562
- :wrong_length => ActiveRecord::Errors.default_error_messages[:wrong_length]
515
+ :wrong_length => ActiveRecord::Errors.default_error_messages[:wrong_length],
516
+ :tokenizer => lambda {|value| value.split(//)}
563
517
  }.merge(DEFAULT_VALIDATION_OPTIONS)
564
518
  options.update(attrs.extract_options!.symbolize_keys)
565
519
 
@@ -586,9 +540,10 @@ module ActiveRecord
586
540
  too_long = options[:too_long] % option_value.end
587
541
 
588
542
  validates_each(attrs, options) do |record, attr, value|
589
- if value.nil? or value.split(//).size < option_value.begin
543
+ value = options[:tokenizer].call(value) if value.kind_of?(String)
544
+ if value.nil? or value.size < option_value.begin
590
545
  record.errors.add(attr, too_short)
591
- elsif value.split(//).size > option_value.end
546
+ elsif value.size > option_value.end
592
547
  record.errors.add(attr, too_long)
593
548
  end
594
549
  end
@@ -602,11 +557,8 @@ module ActiveRecord
602
557
  message = (options[:message] || options[message_options[option]]) % option_value
603
558
 
604
559
  validates_each(attrs, options) do |record, attr, value|
605
- if value.kind_of?(String)
606
- record.errors.add(attr, message) unless !value.nil? and value.split(//).size.method(validity_checks[option])[option_value]
607
- else
608
- record.errors.add(attr, message) unless !value.nil? and value.size.method(validity_checks[option])[option_value]
609
- end
560
+ value = options[:tokenizer].call(value) if value.kind_of?(String)
561
+ record.errors.add(attr, message) unless !value.nil? and value.size.method(validity_checks[option])[option_value]
610
562
  end
611
563
  end
612
564
  end
@@ -632,63 +584,89 @@ module ActiveRecord
632
584
  # attribute (that maps to a column). When the record is updated, the same check is made but disregarding the record itself.
633
585
  #
634
586
  # Because this check is performed outside the database there is still a chance that duplicate values
635
- # will be inserted in two parallel transactions. To guarantee against this you should create a
636
- # unique index on the field. See +create_index+ for more information.
587
+ # will be inserted in two parallel transactions. To guarantee against this you should create a
588
+ # unique index on the field. See +add_index+ for more information.
637
589
  #
638
590
  # Configuration options:
639
- # * <tt>message</tt> - Specifies a custom error message (default is: "has already been taken")
640
- # * <tt>scope</tt> - One or more columns by which to limit the scope of the uniquness constraint.
641
- # * <tt>case_sensitive</tt> - Looks for an exact match. Ignored by non-text columns (true by default).
642
- # * <tt>allow_nil</tt> - If set to true, skips this validation if the attribute is null (default is: false)
643
- # * <tt>allow_blank</tt> - If set to true, skips this validation if the attribute is blank (default is: false)
644
- # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
645
- # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
591
+ # * <tt>:message</tt> - Specifies a custom error message (default is: "has already been taken").
592
+ # * <tt>:scope</tt> - One or more columns by which to limit the scope of the uniqueness constraint.
593
+ # * <tt>:case_sensitive</tt> - Looks for an exact match. Ignored by non-text columns (+true+ by default).
594
+ # * <tt>:allow_nil</tt> - If set to true, skips this validation if the attribute is +nil+ (default is +false+).
595
+ # * <tt>:allow_blank</tt> - If set to true, skips this validation if the attribute is blank (default is +false+).
596
+ # * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
597
+ # occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
646
598
  # method, proc or string should return or evaluate to a true or false value.
647
- # * <tt>unless</tt> - Specifies a method, proc or string to call to determine if the validation should
648
- # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
599
+ # * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
600
+ # not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
649
601
  # method, proc or string should return or evaluate to a true or false value.
650
602
  def validates_uniqueness_of(*attr_names)
651
603
  configuration = { :message => ActiveRecord::Errors.default_error_messages[:taken], :case_sensitive => true }
652
604
  configuration.update(attr_names.extract_options!)
653
605
 
654
606
  validates_each(attr_names,configuration) do |record, attr_name, value|
655
- if value.nil? || (configuration[:case_sensitive] || !columns_hash[attr_name.to_s].text?)
656
- condition_sql = "#{record.class.table_name}.#{attr_name} #{attribute_condition(value)}"
607
+ # The check for an existing value should be run from a class that
608
+ # isn't abstract. This means working down from the current class
609
+ # (self), to the first non-abstract class. Since classes don't know
610
+ # their subclasses, we have to build the hierarchy between self and
611
+ # the record's class.
612
+ class_hierarchy = [record.class]
613
+ while class_hierarchy.first != self
614
+ class_hierarchy.insert(0, class_hierarchy.first.superclass)
615
+ end
616
+
617
+ # Now we can work our way down the tree to the first non-abstract
618
+ # class (which has a database table to query from).
619
+ finder_class = class_hierarchy.detect { |klass| !klass.abstract_class? }
620
+
621
+ is_text_column = finder_class.columns_hash[attr_name.to_s].text?
622
+
623
+ if !value.nil? && is_text_column
624
+ value = value.to_s
625
+ end
626
+
627
+ if value.nil? || (configuration[:case_sensitive] || !is_text_column)
628
+ condition_sql = "#{record.class.quoted_table_name}.#{attr_name} #{attribute_condition(value)}"
657
629
  condition_params = [value]
658
630
  else
659
- condition_sql = "LOWER(#{record.class.table_name}.#{attr_name}) #{attribute_condition(value)}"
660
- condition_params = [value.downcase]
631
+ # sqlite has case sensitive SELECT query, while MySQL/Postgresql don't.
632
+ # Hence, this is needed only for sqlite.
633
+ condition_sql = "LOWER(#{record.class.quoted_table_name}.#{attr_name}) #{attribute_condition(value)}"
634
+ condition_params = [value.chars.downcase.to_s]
661
635
  end
662
636
 
663
637
  if scope = configuration[:scope]
664
638
  Array(scope).map do |scope_item|
665
639
  scope_value = record.send(scope_item)
666
- condition_sql << " AND #{record.class.table_name}.#{scope_item} #{attribute_condition(scope_value)}"
640
+ condition_sql << " AND #{record.class.quoted_table_name}.#{scope_item} #{attribute_condition(scope_value)}"
667
641
  condition_params << scope_value
668
642
  end
669
643
  end
670
644
 
671
645
  unless record.new_record?
672
- condition_sql << " AND #{record.class.table_name}.#{record.class.primary_key} <> ?"
646
+ condition_sql << " AND #{record.class.quoted_table_name}.#{record.class.primary_key} <> ?"
673
647
  condition_params << record.send(:id)
674
648
  end
675
649
 
676
- # The check for an existing value should be run from a class that
677
- # isn't abstract. This means working down from the current class
678
- # (self), to the first non-abstract class. Since classes don't know
679
- # their subclasses, we have to build the hierarchy between self and
680
- # the record's class.
681
- class_hierarchy = [record.class]
682
- while class_hierarchy.first != self
683
- class_hierarchy.insert(0, class_hierarchy.first.superclass)
650
+ results = finder_class.with_exclusive_scope do
651
+ connection.select_all(
652
+ construct_finder_sql(
653
+ :select => "#{connection.quote_column_name(attr_name)}",
654
+ :from => "#{finder_class.quoted_table_name}",
655
+ :conditions => [condition_sql, *condition_params]
656
+ )
657
+ )
684
658
  end
685
659
 
686
- # Now we can work our way down the tree to the first non-abstract
687
- # class (which has a database table to query from).
688
- finder_class = class_hierarchy.detect { |klass| !klass.abstract_class? }
660
+ unless results.length.zero?
661
+ found = true
662
+
663
+ # As MySQL/Postgres don't have case sensitive SELECT queries, we try to find duplicate
664
+ # column in ruby when case sensitive option
665
+ if configuration[:case_sensitive] && finder_class.columns_hash[attr_name.to_s].text?
666
+ found = results.any? { |a| a[attr_name.to_s] == value }
667
+ end
689
668
 
690
- if finder_class.find(:first, :conditions => [condition_sql, *condition_params])
691
- record.errors.add(attr_name, configuration[:message])
669
+ record.errors.add(attr_name, configuration[:message]) if found
692
670
  end
693
671
  end
694
672
  end
@@ -701,19 +679,21 @@ module ActiveRecord
701
679
  # validates_format_of :email, :with => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i, :on => :create
702
680
  # end
703
681
  #
704
- # Note: use \A and \Z to match the start and end of the string, ^ and $ match the start/end of a line.
682
+ # Note: use <tt>\A</tt> and <tt>\Z</tt> to match the start and end of the string, <tt>^</tt> and <tt>$</tt> match the start/end of a line.
705
683
  #
706
684
  # A regular expression must be provided or else an exception will be raised.
707
685
  #
708
686
  # Configuration options:
709
- # * <tt>message</tt> - A custom error message (default is: "is invalid")
710
- # * <tt>with</tt> - The regular expression used to validate the format with (note: must be supplied!)
711
- # * <tt>on</tt> Specifies when this validation is active (default is :save, other options :create, :update)
712
- # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
713
- # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
687
+ # * <tt>:message</tt> - A custom error message (default is: "is invalid").
688
+ # * <tt>:allow_nil</tt> - If set to true, skips this validation if the attribute is +nil+ (default is +false+).
689
+ # * <tt>:allow_blank</tt> - If set to true, skips this validation if the attribute is blank (default is +false+).
690
+ # * <tt>:with</tt> - The regular expression used to validate the format with (note: must be supplied!).
691
+ # * <tt>:on</tt> - Specifies when this validation is active (default is <tt>:save</tt>, other options <tt>:create</tt>, <tt>:update</tt>).
692
+ # * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
693
+ # occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
714
694
  # method, proc or string should return or evaluate to a true or false value.
715
- # * <tt>unless</tt> - Specifies a method, proc or string to call to determine if the validation should
716
- # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
695
+ # * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
696
+ # not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
717
697
  # method, proc or string should return or evaluate to a true or false value.
718
698
  def validates_format_of(*attr_names)
719
699
  configuration = { :message => ActiveRecord::Errors.default_error_messages[:invalid], :on => :save, :with => nil }
@@ -722,7 +702,7 @@ module ActiveRecord
722
702
  raise(ArgumentError, "A regular expression must be supplied as the :with option of the configuration hash") unless configuration[:with].is_a?(Regexp)
723
703
 
724
704
  validates_each(attr_names, configuration) do |record, attr_name, value|
725
- record.errors.add(attr_name, configuration[:message]) unless value.to_s =~ configuration[:with]
705
+ record.errors.add(attr_name, configuration[:message] % value) unless value.to_s =~ configuration[:with]
726
706
  end
727
707
  end
728
708
 
@@ -735,15 +715,15 @@ module ActiveRecord
735
715
  # end
736
716
  #
737
717
  # Configuration options:
738
- # * <tt>in</tt> - An enumerable object of available items
739
- # * <tt>message</tt> - Specifies a customer error message (default is: "is not included in the list")
740
- # * <tt>allow_nil</tt> - If set to true, skips this validation if the attribute is null (default is: false)
741
- # * <tt>allow_blank</tt> - If set to true, skips this validation if the attribute is blank (default is: false)
742
- # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
743
- # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
718
+ # * <tt>:in</tt> - An enumerable object of available items.
719
+ # * <tt>:message</tt> - Specifies a custom error message (default is: "is not included in the list").
720
+ # * <tt>:allow_nil</tt> - If set to true, skips this validation if the attribute is +nil+ (default is +false+).
721
+ # * <tt>:allow_blank</tt> - If set to true, skips this validation if the attribute is blank (default is +false+).
722
+ # * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
723
+ # occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
744
724
  # method, proc or string should return or evaluate to a true or false value.
745
- # * <tt>unless</tt> - Specifies a method, proc or string to call to determine if the validation should
746
- # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
725
+ # * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
726
+ # not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
747
727
  # method, proc or string should return or evaluate to a true or false value.
748
728
  def validates_inclusion_of(*attr_names)
749
729
  configuration = { :message => ActiveRecord::Errors.default_error_messages[:inclusion], :on => :save }
@@ -767,15 +747,15 @@ module ActiveRecord
767
747
  # end
768
748
  #
769
749
  # Configuration options:
770
- # * <tt>in</tt> - An enumerable object of items that the value shouldn't be part of
771
- # * <tt>message</tt> - Specifies a customer error message (default is: "is reserved")
772
- # * <tt>allow_nil</tt> - If set to true, skips this validation if the attribute is null (default is: false)
773
- # * <tt>allow_blank</tt> - If set to true, skips this validation if the attribute is blank (default is: false)
774
- # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
775
- # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
750
+ # * <tt>:in</tt> - An enumerable object of items that the value shouldn't be part of.
751
+ # * <tt>:message</tt> - Specifies a custom error message (default is: "is reserved").
752
+ # * <tt>:allow_nil</tt> - If set to true, skips this validation if the attribute is +nil+ (default is +false+).
753
+ # * <tt>:allow_blank</tt> - If set to true, skips this validation if the attribute is blank (default is +false+).
754
+ # * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
755
+ # occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
776
756
  # method, proc or string should return or evaluate to a true or false value.
777
- # * <tt>unless</tt> - Specifies a method, proc or string to call to determine if the validation should
778
- # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
757
+ # * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
758
+ # not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
779
759
  # method, proc or string should return or evaluate to a true or false value.
780
760
  def validates_exclusion_of(*attr_names)
781
761
  configuration = { :message => ActiveRecord::Errors.default_error_messages[:exclusion], :on => :save }
@@ -807,19 +787,19 @@ module ActiveRecord
807
787
  # validates_associated :book
808
788
  # end
809
789
  #
810
- # ...this would specify a circular dependency and cause infinite recursion.
790
+ # this would specify a circular dependency and cause infinite recursion.
811
791
  #
812
792
  # NOTE: This validation will not fail if the association hasn't been assigned. If you want to ensure that the association
813
- # is both present and guaranteed to be valid, you also need to use validates_presence_of.
793
+ # is both present and guaranteed to be valid, you also need to use +validates_presence_of+.
814
794
  #
815
795
  # Configuration options:
816
- # * <tt>message</tt> - A custom error message (default is: "is invalid")
817
- # * <tt>on</tt> Specifies when this validation is active (default is :save, other options :create, :update)
818
- # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
819
- # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
796
+ # * <tt>:message</tt> - A custom error message (default is: "is invalid")
797
+ # * <tt>:on</tt> - Specifies when this validation is active (default is <tt>:save</tt>, other options <tt>:create</tt>, <tt>:update</tt>).
798
+ # * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
799
+ # occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
820
800
  # method, proc or string should return or evaluate to a true or false value.
821
- # * <tt>unless</tt> - Specifies a method, proc or string to call to determine if the validation should
822
- # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
801
+ # * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
802
+ # not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
823
803
  # method, proc or string should return or evaluate to a true or false value.
824
804
  def validates_associated(*attr_names)
825
805
  configuration = { :message => ActiveRecord::Errors.default_error_messages[:invalid], :on => :save }
@@ -832,30 +812,30 @@ module ActiveRecord
832
812
  end
833
813
 
834
814
  # Validates whether the value of the specified attribute is numeric by trying to convert it to
835
- # a float with Kernel.Float (if <tt>integer</tt> is false) or applying it to the regular expression
836
- # <tt>/\A[\+\-]?\d+\Z/</tt> (if <tt>integer</tt> is set to true).
815
+ # a float with Kernel.Float (if <tt>only_integer</tt> is false) or applying it to the regular expression
816
+ # <tt>/\A[\+\-]?\d+\Z/</tt> (if <tt>only_integer</tt> is set to true).
837
817
  #
838
818
  # class Person < ActiveRecord::Base
839
819
  # validates_numericality_of :value, :on => :create
840
820
  # end
841
821
  #
842
822
  # Configuration options:
843
- # * <tt>message</tt> - A custom error message (default is: "is not a number")
844
- # * <tt>on</tt> Specifies when this validation is active (default is :save, other options :create, :update)
845
- # * <tt>only_integer</tt> Specifies whether the value has to be an integer, e.g. an integral value (default is false)
846
- # * <tt>allow_nil</tt> Skip validation if attribute is nil (default is false). Notice that for fixnum and float columns empty strings are converted to nil
847
- # * <tt>greater_than</tt> Specifies the value must be greater than the supplied value
848
- # * <tt>greater_than_or_equal_to</tt> Specifies the value must be greater than or equal the supplied value
849
- # * <tt>equal_to</tt> Specifies the value must be equal to the supplied value
850
- # * <tt>less_than</tt> Specifies the value must be less than the supplied value
851
- # * <tt>less_than_or_equal_to</tt> Specifies the value must be less than or equal the supplied value
852
- # * <tt>odd</tt> Specifies the value must be an odd number
853
- # * <tt>even</tt> Specifies the value must be an even number
854
- # * <tt>if</tt> - Specifies a method, proc or string to call to determine if the validation should
855
- # occur (e.g. :if => :allow_validation, or :if => Proc.new { |user| user.signup_step > 2 }). The
823
+ # * <tt>:message</tt> - A custom error message (default is: "is not a number").
824
+ # * <tt>:on</tt> - Specifies when this validation is active (default is <tt>:save</tt>, other options <tt>:create</tt>, <tt>:update</tt>).
825
+ # * <tt>:only_integer</tt> - Specifies whether the value has to be an integer, e.g. an integral value (default is +false+).
826
+ # * <tt>:allow_nil</tt> - Skip validation if attribute is +nil+ (default is +false+). Notice that for fixnum and float columns empty strings are converted to +nil+.
827
+ # * <tt>:greater_than</tt> - Specifies the value must be greater than the supplied value.
828
+ # * <tt>:greater_than_or_equal_to</tt> - Specifies the value must be greater than or equal the supplied value.
829
+ # * <tt>:equal_to</tt> - Specifies the value must be equal to the supplied value.
830
+ # * <tt>:less_than</tt> - Specifies the value must be less than the supplied value.
831
+ # * <tt>:less_than_or_equal_to</tt> - Specifies the value must be less than or equal the supplied value.
832
+ # * <tt>:odd</tt> - Specifies the value must be an odd number.
833
+ # * <tt>:even</tt> - Specifies the value must be an even number.
834
+ # * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
835
+ # occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
856
836
  # method, proc or string should return or evaluate to a true or false value.
857
- # * <tt>unless</tt> - Specifies a method, proc or string to call to determine if the validation should
858
- # not occur (e.g. :unless => :skip_validation, or :unless => Proc.new { |user| user.signup_step <= 2 }). The
837
+ # * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
838
+ # not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
859
839
  # method, proc or string should return or evaluate to a true or false value.
860
840
  def validates_numericality_of(*attr_names)
861
841
  configuration = { :on => :save, :only_integer => false, :allow_nil => false }
@@ -881,7 +861,7 @@ module ActiveRecord
881
861
  raw_value = raw_value.to_i
882
862
  else
883
863
  begin
884
- raw_value = Kernel.Float(raw_value.to_s)
864
+ raw_value = Kernel.Float(raw_value)
885
865
  rescue ArgumentError, TypeError
886
866
  record.errors.add(attr_name, configuration[:message] || ActiveRecord::Errors.default_error_messages[:not_a_number])
887
867
  next
@@ -893,7 +873,9 @@ module ActiveRecord
893
873
  when :odd, :even
894
874
  record.errors.add(attr_name, configuration[:message] || ActiveRecord::Errors.default_error_messages[option]) unless raw_value.to_i.method(ALL_NUMERICALITY_CHECKS[option])[]
895
875
  else
896
- record.errors.add(attr_name, configuration[:message] || (ActiveRecord::Errors.default_error_messages[option] % configuration[option])) unless raw_value.method(ALL_NUMERICALITY_CHECKS[option])[configuration[option]]
876
+ message = configuration[:message] || ActiveRecord::Errors.default_error_messages[option]
877
+ message = message % configuration[option] if configuration[option]
878
+ record.errors.add(attr_name, message) unless raw_value.method(ALL_NUMERICALITY_CHECKS[option])[configuration[option]]
897
879
  end
898
880
  end
899
881
  end
@@ -901,23 +883,18 @@ module ActiveRecord
901
883
 
902
884
  # Creates an object just like Base.create but calls save! instead of save
903
885
  # so an exception is raised if the record is invalid.
904
- def create!(attributes = nil)
886
+ def create!(attributes = nil, &block)
905
887
  if attributes.is_a?(Array)
906
- attributes.collect { |attr| create!(attr) }
888
+ attributes.collect { |attr| create!(attr, &block) }
907
889
  else
908
890
  object = new(attributes)
891
+ yield(object) if block_given?
909
892
  object.save!
910
893
  object
911
894
  end
912
895
  end
913
896
 
914
-
915
897
  private
916
- def write_inheritable_set(key, methods)
917
- existing_methods = read_inheritable_attribute(key) || []
918
- write_inheritable_attribute(key, existing_methods | methods)
919
- end
920
-
921
898
  def validation_method(on)
922
899
  case on
923
900
  when :save then :validate
@@ -955,18 +932,18 @@ module ActiveRecord
955
932
  save(false)
956
933
  end
957
934
 
958
- # Runs validate and validate_on_create or validate_on_update and returns true if no errors were added otherwise false.
935
+ # Runs +validate+ and +validate_on_create+ or +validate_on_update+ and returns true if no errors were added otherwise false.
959
936
  def valid?
960
937
  errors.clear
961
938
 
962
- run_validations(:validate)
939
+ run_callbacks(:validate)
963
940
  validate
964
941
 
965
942
  if new_record?
966
- run_validations(:validate_on_create)
943
+ run_callbacks(:validate_on_create)
967
944
  validate_on_create
968
945
  else
969
- run_validations(:validate_on_update)
946
+ run_callbacks(:validate_on_update)
970
947
  validate_on_update
971
948
  end
972
949
 
@@ -979,7 +956,7 @@ module ActiveRecord
979
956
  end
980
957
 
981
958
  protected
982
- # Overwrite this method for validation checks on all saves and use Errors.add(field, msg) for invalid attributes.
959
+ # Overwrite this method for validation checks on all saves and use <tt>Errors.add(field, msg)</tt> for invalid attributes.
983
960
  def validate #:doc:
984
961
  end
985
962
 
@@ -990,36 +967,5 @@ module ActiveRecord
990
967
  # Overwrite this method for validation checks used only on updates.
991
968
  def validate_on_update # :doc:
992
969
  end
993
-
994
- private
995
- def run_validations(validation_method)
996
- validations = self.class.read_inheritable_attribute(validation_method.to_sym)
997
- if validations.nil? then return end
998
- validations.each do |validation|
999
- if validation.is_a?(Symbol)
1000
- self.send(validation)
1001
- elsif validation.is_a?(String)
1002
- eval(validation, binding)
1003
- elsif validation_block?(validation)
1004
- validation.call(self)
1005
- elsif validation_class?(validation, validation_method)
1006
- validation.send(validation_method, self)
1007
- else
1008
- raise(
1009
- ActiveRecordError,
1010
- "Validations need to be either a symbol, string (to be eval'ed), proc/method, or " +
1011
- "class implementing a static validation method"
1012
- )
1013
- end
1014
- end
1015
- end
1016
-
1017
- def validation_block?(validation)
1018
- validation.respond_to?("call") && (validation.arity == 1 || validation.arity == -1)
1019
- end
1020
-
1021
- def validation_class?(validation, validation_method)
1022
- validation.respond_to?(validation_method)
1023
- end
1024
970
  end
1025
971
  end