thoughtbot-clearance 0.3.4 → 0.3.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (354) hide show
  1. data/LICENSE +21 -0
  2. data/README.textile +8 -3
  3. data/Rakefile +21 -10
  4. data/TODO.textile +1 -3
  5. data/generators/clearance/clearance_generator.rb +3 -2
  6. data/generators/clearance/templates/app/models/clearance_mailer.rb +5 -0
  7. data/generators/clearance/templates/app/views/clearance_mailer/change_password.html.erb +6 -0
  8. data/generators/clearance/templates/app/views/clearance_mailer/confirmation.html.erb +1 -0
  9. data/generators/clearance/templates/test/unit/clearance_mailer_test.rb +6 -0
  10. data/lib/clearance/app/models/clearance_mailer.rb +33 -0
  11. data/lib/clearance/app/models/user.rb +3 -0
  12. data/lib/clearance/test/functional/users_controller_test.rb +3 -5
  13. data/lib/clearance/test/unit/clearance_mailer_test.rb +63 -0
  14. data/lib/clearance/test/unit/user_test.rb +3 -0
  15. metadata +11 -462
  16. data/test/rails_root/Capfile +0 -3
  17. data/test/rails_root/Rakefile +0 -10
  18. data/test/rails_root/app/controllers/application.rb +0 -5
  19. data/test/rails_root/app/controllers/confirmations_controller.rb +0 -3
  20. data/test/rails_root/app/controllers/passwords_controller.rb +0 -3
  21. data/test/rails_root/app/controllers/sessions_controller.rb +0 -3
  22. data/test/rails_root/app/controllers/users_controller.rb +0 -3
  23. data/test/rails_root/app/helpers/application_helper.rb +0 -5
  24. data/test/rails_root/app/helpers/confirmations_helper.rb +0 -2
  25. data/test/rails_root/app/helpers/passwords_helper.rb +0 -2
  26. data/test/rails_root/app/models/user.rb +0 -3
  27. data/test/rails_root/app/views/confirmations/new.html.erb +0 -6
  28. data/test/rails_root/app/views/layouts/_flashes.erb +0 -5
  29. data/test/rails_root/app/views/layouts/application.html.erb +0 -14
  30. data/test/rails_root/app/views/passwords/edit.html.erb +0 -23
  31. data/test/rails_root/app/views/passwords/new.html.erb +0 -15
  32. data/test/rails_root/app/views/sessions/new.html.erb +0 -26
  33. data/test/rails_root/app/views/users/_form.html.erb +0 -13
  34. data/test/rails_root/app/views/users/edit.html.erb +0 -4
  35. data/test/rails_root/app/views/users/new.html.erb +0 -4
  36. data/test/rails_root/config/boot.rb +0 -109
  37. data/test/rails_root/config/database.yml +0 -13
  38. data/test/rails_root/config/environment.rb +0 -16
  39. data/test/rails_root/config/environments/development.rb +0 -20
  40. data/test/rails_root/config/environments/test.rb +0 -24
  41. data/test/rails_root/config/initializers/clearance.rb +0 -8
  42. data/test/rails_root/config/initializers/inflections.rb +0 -10
  43. data/test/rails_root/config/initializers/mime_types.rb +0 -5
  44. data/test/rails_root/config/initializers/requires.rb +0 -13
  45. data/test/rails_root/config/initializers/time_formats.rb +0 -4
  46. data/test/rails_root/config/routes.rb +0 -16
  47. data/test/rails_root/db/migrate/001_create_users.rb +0 -18
  48. data/test/rails_root/doc/README_FOR_APP +0 -2
  49. data/test/rails_root/doc/README_FOR_TEMPLATE +0 -15
  50. data/test/rails_root/lib/tasks/bootstrap.rake +0 -16
  51. data/test/rails_root/lib/tasks/capistrano.rake +0 -96
  52. data/test/rails_root/lib/tasks/git_tasks.rake +0 -129
  53. data/test/rails_root/public/404.html +0 -30
  54. data/test/rails_root/public/422.html +0 -30
  55. data/test/rails_root/public/500.html +0 -30
  56. data/test/rails_root/public/dispatch.rb +0 -10
  57. data/test/rails_root/public/favicon.ico +0 -0
  58. data/test/rails_root/public/images/rails.png +0 -0
  59. data/test/rails_root/public/javascripts/application.js +0 -2
  60. data/test/rails_root/public/javascripts/builder.js +0 -136
  61. data/test/rails_root/public/javascripts/controls.js +0 -963
  62. data/test/rails_root/public/javascripts/dragdrop.js +0 -972
  63. data/test/rails_root/public/javascripts/effects.js +0 -1120
  64. data/test/rails_root/public/javascripts/prototype.js +0 -4225
  65. data/test/rails_root/public/javascripts/scriptaculous.js +0 -58
  66. data/test/rails_root/public/javascripts/slider.js +0 -277
  67. data/test/rails_root/public/javascripts/sound.js +0 -60
  68. data/test/rails_root/public/robots.txt +0 -1
  69. data/test/rails_root/script/about +0 -3
  70. data/test/rails_root/script/breakpointer +0 -3
  71. data/test/rails_root/script/console +0 -3
  72. data/test/rails_root/script/create_project.rb +0 -52
  73. data/test/rails_root/script/dbconsole +0 -3
  74. data/test/rails_root/script/destroy +0 -3
  75. data/test/rails_root/script/generate +0 -3
  76. data/test/rails_root/script/performance/benchmarker +0 -3
  77. data/test/rails_root/script/performance/profiler +0 -3
  78. data/test/rails_root/script/performance/request +0 -3
  79. data/test/rails_root/script/plugin +0 -3
  80. data/test/rails_root/script/process/inspector +0 -3
  81. data/test/rails_root/script/process/reaper +0 -3
  82. data/test/rails_root/script/process/spawner +0 -3
  83. data/test/rails_root/script/runner +0 -3
  84. data/test/rails_root/script/server +0 -3
  85. data/test/rails_root/test/factories.rb +0 -9
  86. data/test/rails_root/test/functional/confirmations_controller_test.rb +0 -5
  87. data/test/rails_root/test/functional/passwords_controller_test.rb +0 -5
  88. data/test/rails_root/test/functional/sessions_controller_test.rb +0 -5
  89. data/test/rails_root/test/functional/users_controller_test.rb +0 -5
  90. data/test/rails_root/test/test_helper.rb +0 -21
  91. data/test/rails_root/test/unit/user_test.rb +0 -5
  92. data/test/rails_root/vendor/gems/mocha-0.9.1/COPYING +0 -3
  93. data/test/rails_root/vendor/gems/mocha-0.9.1/MIT-LICENSE +0 -7
  94. data/test/rails_root/vendor/gems/mocha-0.9.1/README +0 -35
  95. data/test/rails_root/vendor/gems/mocha-0.9.1/RELEASE +0 -246
  96. data/test/rails_root/vendor/gems/mocha-0.9.1/Rakefile +0 -188
  97. data/test/rails_root/vendor/gems/mocha-0.9.1/examples/misc.rb +0 -44
  98. data/test/rails_root/vendor/gems/mocha-0.9.1/examples/mocha.rb +0 -26
  99. data/test/rails_root/vendor/gems/mocha-0.9.1/examples/stubba.rb +0 -65
  100. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/any_instance_method.rb +0 -54
  101. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/backtrace_filter.rb +0 -17
  102. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/cardinality.rb +0 -95
  103. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/central.rb +0 -27
  104. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/change_state_side_effect.rb +0 -19
  105. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/class_method.rb +0 -86
  106. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/configuration.rb +0 -60
  107. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/deprecation.rb +0 -22
  108. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/exception_raiser.rb +0 -17
  109. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/expectation.rb +0 -445
  110. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/expectation_error.rb +0 -15
  111. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/expectation_list.rb +0 -50
  112. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/in_state_ordering_constraint.rb +0 -19
  113. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/inspect.rb +0 -39
  114. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/instance_method.rb +0 -16
  115. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/is_a.rb +0 -9
  116. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/logger.rb +0 -15
  117. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/metaclass.rb +0 -7
  118. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/method_matcher.rb +0 -21
  119. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/mock.rb +0 -196
  120. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/mockery.rb +0 -181
  121. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/module_method.rb +0 -16
  122. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/multiple_yields.rb +0 -20
  123. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/names.rb +0 -53
  124. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/no_yields.rb +0 -11
  125. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/object.rb +0 -134
  126. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/all_of.rb +0 -42
  127. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/any_of.rb +0 -47
  128. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/any_parameters.rb +0 -40
  129. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/anything.rb +0 -33
  130. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/base.rb +0 -15
  131. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/equals.rb +0 -42
  132. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/has_entries.rb +0 -45
  133. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/has_entry.rb +0 -56
  134. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/has_key.rb +0 -42
  135. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/has_value.rb +0 -42
  136. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/includes.rb +0 -40
  137. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/instance_of.rb +0 -42
  138. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/is_a.rb +0 -42
  139. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/kind_of.rb +0 -42
  140. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/not.rb +0 -42
  141. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/object.rb +0 -9
  142. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/optionally.rb +0 -55
  143. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/regexp_matches.rb +0 -43
  144. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/responds_with.rb +0 -43
  145. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/yaml_equivalent.rb +0 -43
  146. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers.rb +0 -26
  147. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameters_matcher.rb +0 -37
  148. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/pretty_parameters.rb +0 -28
  149. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/return_values.rb +0 -31
  150. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/sequence.rb +0 -42
  151. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/single_return_value.rb +0 -17
  152. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/single_yield.rb +0 -18
  153. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/standalone.rb +0 -166
  154. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/state_machine.rb +0 -91
  155. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/stubbing_error.rb +0 -16
  156. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/test_case_adapter.rb +0 -103
  157. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/unexpected_invocation.rb +0 -18
  158. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/yield_parameters.rb +0 -31
  159. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha.rb +0 -20
  160. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha_standalone.rb +0 -2
  161. data/test/rails_root/vendor/gems/mocha-0.9.1/lib/stubba.rb +0 -4
  162. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/acceptance_test_helper.rb +0 -38
  163. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/bug_18914_test.rb +0 -43
  164. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/bug_21465_test.rb +0 -34
  165. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/bug_21563_test.rb +0 -25
  166. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/expected_invocation_count_test.rb +0 -196
  167. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/failure_messages_test.rb +0 -64
  168. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/mocha_example_test.rb +0 -98
  169. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/mocha_test_result_test.rb +0 -84
  170. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/mock_test.rb +0 -100
  171. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/mock_with_initializer_block_test.rb +0 -51
  172. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/mocked_methods_dispatch_test.rb +0 -78
  173. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb +0 -70
  174. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/parameter_matcher_test.rb +0 -179
  175. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/partial_mocks_test.rb +0 -47
  176. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/return_value_test.rb +0 -52
  177. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/sequence_test.rb +0 -186
  178. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/standalone_test.rb +0 -139
  179. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/states_test.rb +0 -70
  180. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_any_instance_method_test.rb +0 -195
  181. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_class_method_test.rb +0 -203
  182. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_everything_test.rb +0 -56
  183. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_instance_method_test.rb +0 -165
  184. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_module_method_test.rb +0 -163
  185. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_test.rb +0 -52
  186. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubba_example_test.rb +0 -102
  187. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubba_test.rb +0 -15
  188. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubba_test_result_test.rb +0 -66
  189. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_error_backtrace_test.rb +0 -64
  190. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_method_unnecessarily_test.rb +0 -65
  191. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_existent_any_instance_method_test.rb +0 -130
  192. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_existent_class_method_test.rb +0 -155
  193. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_existent_instance_method_test.rb +0 -145
  194. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_public_any_instance_method_test.rb +0 -130
  195. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_public_class_method_test.rb +0 -161
  196. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_public_instance_method_test.rb +0 -141
  197. data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_on_non_mock_object_test.rb +0 -64
  198. data/test/rails_root/vendor/gems/mocha-0.9.1/test/active_record_test_case.rb +0 -36
  199. data/test/rails_root/vendor/gems/mocha-0.9.1/test/deprecation_disabler.rb +0 -15
  200. data/test/rails_root/vendor/gems/mocha-0.9.1/test/execution_point.rb +0 -36
  201. data/test/rails_root/vendor/gems/mocha-0.9.1/test/method_definer.rb +0 -18
  202. data/test/rails_root/vendor/gems/mocha-0.9.1/test/simple_counter.rb +0 -13
  203. data/test/rails_root/vendor/gems/mocha-0.9.1/test/test_helper.rb +0 -11
  204. data/test/rails_root/vendor/gems/mocha-0.9.1/test/test_runner.rb +0 -33
  205. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/any_instance_method_test.rb +0 -126
  206. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/array_inspect_test.rb +0 -16
  207. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/backtrace_filter_test.rb +0 -19
  208. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/cardinality_test.rb +0 -56
  209. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/central_test.rb +0 -65
  210. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/change_state_side_effect_test.rb +0 -41
  211. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/class_method_test.rb +0 -237
  212. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/date_time_inspect_test.rb +0 -21
  213. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/exception_raiser_test.rb +0 -42
  214. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/expectation_list_test.rb +0 -57
  215. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/expectation_test.rb +0 -459
  216. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/hash_inspect_test.rb +0 -16
  217. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/in_state_ordering_constraint_test.rb +0 -43
  218. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/metaclass_test.rb +0 -22
  219. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/method_matcher_test.rb +0 -23
  220. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/mock_test.rb +0 -290
  221. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/mockery_test.rb +0 -149
  222. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/multiple_yields_test.rb +0 -18
  223. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/no_yields_test.rb +0 -18
  224. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/object_inspect_test.rb +0 -37
  225. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/object_test.rb +0 -82
  226. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/all_of_test.rb +0 -26
  227. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/any_of_test.rb +0 -26
  228. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/anything_test.rb +0 -21
  229. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/equals_test.rb +0 -25
  230. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/has_entries_test.rb +0 -51
  231. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/has_entry_test.rb +0 -62
  232. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/has_key_test.rb +0 -36
  233. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/has_value_test.rb +0 -37
  234. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/includes_test.rb +0 -25
  235. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/instance_of_test.rb +0 -25
  236. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/is_a_test.rb +0 -25
  237. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/kind_of_test.rb +0 -25
  238. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/not_test.rb +0 -26
  239. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/regexp_matches_test.rb +0 -25
  240. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/responds_with_test.rb +0 -25
  241. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/stub_matcher.rb +0 -27
  242. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/yaml_equivalent_test.rb +0 -25
  243. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameters_matcher_test.rb +0 -121
  244. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/return_values_test.rb +0 -63
  245. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/sequence_test.rb +0 -104
  246. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/single_return_value_test.rb +0 -14
  247. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/single_yield_test.rb +0 -18
  248. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/state_machine_test.rb +0 -98
  249. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/string_inspect_test.rb +0 -11
  250. data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/yield_parameters_test.rb +0 -93
  251. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/CONTRIBUTION_GUIDELINES.rdoc +0 -12
  252. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/MIT-LICENSE +0 -22
  253. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/README.rdoc +0 -132
  254. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/Rakefile +0 -72
  255. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/bin/convert_to_should_syntax +0 -42
  256. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/action_mailer/assertions.rb +0 -39
  257. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/action_mailer.rb +0 -10
  258. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/active_record/assertions.rb +0 -85
  259. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/active_record/macros.rb +0 -715
  260. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/active_record.rb +0 -12
  261. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/assertions.rb +0 -45
  262. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/context.rb +0 -306
  263. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller/formats/html.rb +0 -201
  264. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller/formats/xml.rb +0 -170
  265. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller/helpers.rb +0 -64
  266. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller/macros.rb +0 -316
  267. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller/resource_options.rb +0 -236
  268. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller.rb +0 -30
  269. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/helpers.rb +0 -10
  270. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/macros.rb +0 -74
  271. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/private_helpers.rb +0 -22
  272. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/proc_extensions.rb +0 -14
  273. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/rails.rb +0 -19
  274. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/tasks/list_tests.rake +0 -24
  275. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/tasks/yaml_to_shoulda.rake +0 -28
  276. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/tasks.rb +0 -3
  277. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda.rb +0 -17
  278. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/rails/init.rb +0 -1
  279. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/README +0 -36
  280. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fail_macros.rb +0 -34
  281. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/addresses.yml +0 -3
  282. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/friendships.yml +0 -0
  283. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/posts.yml +0 -5
  284. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/products.yml +0 -0
  285. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/taggings.yml +0 -0
  286. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/tags.yml +0 -9
  287. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/users.yml +0 -6
  288. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/functional/posts_controller_test.rb +0 -104
  289. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/functional/users_controller_test.rb +0 -38
  290. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/other/context_test.rb +0 -145
  291. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/other/convert_to_should_syntax_test.rb +0 -63
  292. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/other/helpers_test.rb +0 -183
  293. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/other/private_helpers_test.rb +0 -34
  294. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/other/should_test.rb +0 -266
  295. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/controllers/application.rb +0 -25
  296. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/controllers/posts_controller.rb +0 -85
  297. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/controllers/users_controller.rb +0 -84
  298. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/helpers/application_helper.rb +0 -3
  299. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/helpers/posts_helper.rb +0 -2
  300. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/helpers/users_helper.rb +0 -2
  301. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/address.rb +0 -7
  302. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/dog.rb +0 -5
  303. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/flea.rb +0 -3
  304. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/friendship.rb +0 -4
  305. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/post.rb +0 -12
  306. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/product.rb +0 -12
  307. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/tag.rb +0 -8
  308. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/tagging.rb +0 -4
  309. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/user.rb +0 -28
  310. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/layouts/posts.rhtml +0 -17
  311. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/layouts/users.rhtml +0 -17
  312. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/layouts/wide.html.erb +0 -1
  313. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/posts/edit.rhtml +0 -27
  314. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/posts/index.rhtml +0 -25
  315. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/posts/new.rhtml +0 -26
  316. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/posts/show.rhtml +0 -18
  317. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/users/edit.rhtml +0 -22
  318. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/users/index.rhtml +0 -22
  319. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/users/new.rhtml +0 -21
  320. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/users/show.rhtml +0 -13
  321. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/boot.rb +0 -109
  322. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/database.yml +0 -4
  323. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/environment.rb +0 -14
  324. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/environments/sqlite3.rb +0 -0
  325. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/initializers/new_rails_defaults.rb +0 -15
  326. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/initializers/shoulda.rb +0 -8
  327. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/routes.rb +0 -6
  328. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/001_create_users.rb +0 -18
  329. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/002_create_posts.rb +0 -13
  330. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/003_create_taggings.rb +0 -12
  331. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/004_create_tags.rb +0 -11
  332. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/005_create_dogs.rb +0 -12
  333. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/006_create_addresses.rb +0 -14
  334. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/007_create_fleas.rb +0 -11
  335. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/008_create_dogs_fleas.rb +0 -12
  336. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/009_create_products.rb +0 -17
  337. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/010_create_friendships.rb +0 -14
  338. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/schema.rb +0 -0
  339. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/log/sqlite3.log +0 -1
  340. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/public/404.html +0 -30
  341. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/public/422.html +0 -30
  342. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/public/500.html +0 -30
  343. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/script/console +0 -3
  344. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/script/generate +0 -3
  345. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/test_helper.rb +0 -33
  346. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/address_test.rb +0 -10
  347. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/dog_test.rb +0 -7
  348. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/flea_test.rb +0 -6
  349. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/friendship_test.rb +0 -6
  350. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/post_test.rb +0 -15
  351. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/product_test.rb +0 -27
  352. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/tag_test.rb +0 -14
  353. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/tagging_test.rb +0 -6
  354. data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/user_test.rb +0 -52
@@ -1,43 +0,0 @@
1
- require 'mocha/parameter_matchers/base'
2
- require 'yaml'
3
-
4
- module Mocha
5
-
6
- module ParameterMatchers
7
-
8
- # :call-seq: yaml_equivalent(object) -> parameter_matcher
9
- #
10
- # Matches any YAML that represents the specified +object+
11
- # object = mock()
12
- # object.expects(:method_1).with(yaml_equivalent(1, 2, 3))
13
- # object.method_1("--- \n- 1\n- 2\n- 3\n")
14
- # # no error raised
15
- #
16
- # object = mock()
17
- # object.expects(:method_1).with(yaml_equivalent(1, 2, 3))
18
- # object.method_1("--- \n- 1\n- 2\n")
19
- # # error raised, because method_1 was not called with YAML representing the specified Array
20
- def yaml_equivalent(object)
21
- YamlEquivalent.new(object)
22
- end
23
-
24
- class YamlEquivalent < Base # :nodoc:
25
-
26
- def initialize(object)
27
- @object = object
28
- end
29
-
30
- def matches?(available_parameters)
31
- parameter = available_parameters.shift
32
- @object == YAML.load(parameter)
33
- end
34
-
35
- def mocha_inspect
36
- "yaml_equivalent(#{@object.mocha_inspect})"
37
- end
38
-
39
- end
40
-
41
- end
42
-
43
- end
@@ -1,26 +0,0 @@
1
- module Mocha
2
-
3
- # Used as parameters for Expectation#with to restrict the parameter values which will match the expectation. Can be nested.
4
- module ParameterMatchers; end
5
-
6
- end
7
-
8
- require 'mocha/parameter_matchers/object'
9
-
10
- require 'mocha/parameter_matchers/all_of'
11
- require 'mocha/parameter_matchers/any_of'
12
- require 'mocha/parameter_matchers/any_parameters'
13
- require 'mocha/parameter_matchers/anything'
14
- require 'mocha/parameter_matchers/equals'
15
- require 'mocha/parameter_matchers/has_entry'
16
- require 'mocha/parameter_matchers/has_entries'
17
- require 'mocha/parameter_matchers/has_key'
18
- require 'mocha/parameter_matchers/has_value'
19
- require 'mocha/parameter_matchers/includes'
20
- require 'mocha/parameter_matchers/instance_of'
21
- require 'mocha/parameter_matchers/is_a'
22
- require 'mocha/parameter_matchers/kind_of'
23
- require 'mocha/parameter_matchers/not'
24
- require 'mocha/parameter_matchers/optionally'
25
- require 'mocha/parameter_matchers/regexp_matches'
26
- require 'mocha/parameter_matchers/yaml_equivalent'
@@ -1,37 +0,0 @@
1
- require 'mocha/inspect'
2
- require 'mocha/parameter_matchers'
3
-
4
- module Mocha
5
-
6
- class ParametersMatcher
7
-
8
- def initialize(expected_parameters = [ParameterMatchers::AnyParameters.new], &matching_block)
9
- @expected_parameters, @matching_block = expected_parameters, matching_block
10
- end
11
-
12
- def match?(actual_parameters = [])
13
- if @matching_block
14
- return @matching_block.call(*actual_parameters)
15
- else
16
- return parameters_match?(actual_parameters)
17
- end
18
- end
19
-
20
- def parameters_match?(actual_parameters)
21
- matchers.all? { |matcher| matcher.matches?(actual_parameters) } && (actual_parameters.length == 0)
22
- end
23
-
24
- def mocha_inspect
25
- signature = matchers.mocha_inspect
26
- signature = signature.gsub(/^\[|\]$/, '')
27
- signature = signature.gsub(/^\{|\}$/, '') if matchers.length == 1
28
- "(#{signature})"
29
- end
30
-
31
- def matchers
32
- @expected_parameters.map { |parameter| parameter.to_matcher }
33
- end
34
-
35
- end
36
-
37
- end
@@ -1,28 +0,0 @@
1
- require 'mocha/inspect'
2
-
3
- module Mocha
4
-
5
- class PrettyParameters
6
-
7
- def initialize(params)
8
- @params = params
9
- @params_string = params.mocha_inspect
10
- end
11
-
12
- def pretty
13
- remove_outer_array_braces!
14
- remove_outer_hash_braces!
15
- @params_string
16
- end
17
-
18
- def remove_outer_array_braces!
19
- @params_string = @params_string.gsub(/^\[|\]$/, '')
20
- end
21
-
22
- def remove_outer_hash_braces!
23
- @params_string = @params_string.gsub(/^\{|\}$/, '') if @params.length == 1
24
- end
25
-
26
- end
27
-
28
- end
@@ -1,31 +0,0 @@
1
- require 'mocha/single_return_value'
2
-
3
- module Mocha # :nodoc:
4
-
5
- class ReturnValues # :nodoc:
6
-
7
- def self.build(*values)
8
- new(*values.map { |value| SingleReturnValue.new(value) })
9
- end
10
-
11
- attr_accessor :values
12
-
13
- def initialize(*values)
14
- @values = values
15
- end
16
-
17
- def next
18
- case @values.length
19
- when 0 then nil
20
- when 1 then @values.first.evaluate
21
- else @values.shift.evaluate
22
- end
23
- end
24
-
25
- def +(other)
26
- self.class.new(*(@values + other.values))
27
- end
28
-
29
- end
30
-
31
- end
@@ -1,42 +0,0 @@
1
- module Mocha # :nodoc:
2
-
3
- class Sequence
4
-
5
- class InSequenceOrderingConstraint
6
-
7
- def initialize(sequence, index)
8
- @sequence, @index = sequence, index
9
- end
10
-
11
- def allows_invocation_now?
12
- @sequence.satisfied_to_index?(@index)
13
- end
14
-
15
- def mocha_inspect
16
- "in sequence #{@sequence.mocha_inspect}"
17
- end
18
-
19
- end
20
-
21
- def initialize(name)
22
- @name = name
23
- @expectations = []
24
- end
25
-
26
- def constrain_as_next_in_sequence(expectation)
27
- index = @expectations.length
28
- @expectations << expectation
29
- expectation.add_ordering_constraint(InSequenceOrderingConstraint.new(self, index))
30
- end
31
-
32
- def satisfied_to_index?(index)
33
- @expectations[0...index].all? { |expectation| expectation.satisfied? }
34
- end
35
-
36
- def mocha_inspect
37
- "#{@name.mocha_inspect}"
38
- end
39
-
40
- end
41
-
42
- end
@@ -1,17 +0,0 @@
1
- require 'mocha/is_a'
2
-
3
- module Mocha # :nodoc:
4
-
5
- class SingleReturnValue # :nodoc:
6
-
7
- def initialize(value)
8
- @value = value
9
- end
10
-
11
- def evaluate
12
- @value
13
- end
14
-
15
- end
16
-
17
- end
@@ -1,18 +0,0 @@
1
- module Mocha # :nodoc:
2
-
3
- class SingleYield # :nodoc:
4
-
5
- attr_reader :parameters
6
-
7
- def initialize(*parameters)
8
- @parameters = parameters
9
- end
10
-
11
- def each
12
- yield(@parameters)
13
- end
14
-
15
- end
16
-
17
- end
18
-
@@ -1,166 +0,0 @@
1
- require 'mocha/parameter_matchers'
2
- require 'mocha/mockery'
3
- require 'mocha/sequence'
4
-
5
- module Mocha # :nodoc:
6
-
7
- # Methods added to Test::Unit::TestCase or equivalent.
8
- module Standalone
9
-
10
- include ParameterMatchers
11
-
12
- # :call-seq: mock(name, &block) -> mock object
13
- # mock(expected_methods = {}, &block) -> mock object
14
- # mock(name, expected_methods = {}, &block) -> mock object
15
- #
16
- # Creates a mock object.
17
- #
18
- # +name+ is a +String+ identifier for the mock object.
19
- #
20
- # +expected_methods+ is a +Hash+ with expected method name symbols as keys and corresponding return values as values.
21
- #
22
- # Note that (contrary to expectations set up by #stub) these expectations <b>must</b> be fulfilled during the test.
23
- # def test_product
24
- # product = mock('ipod_product', :manufacturer => 'ipod', :price => 100)
25
- # assert_equal 'ipod', product.manufacturer
26
- # assert_equal 100, product.price
27
- # # an error will be raised unless both Product#manufacturer and Product#price have been called
28
- # end
29
- #
30
- # +block+ is an optional block to be evaluated against the mock object instance, giving an alernative way to set up expectations & stubs.
31
- # def test_product
32
- # product = mock('ipod_product') do
33
- # expects(:manufacturer).returns('ipod')
34
- # expects(:price).returns(100)
35
- # end
36
- # assert_equal 'ipod', product.manufacturer
37
- # assert_equal 100, product.price
38
- # # an error will be raised unless both Product#manufacturer and Product#price have been called
39
- # end
40
- def mock(*arguments, &block)
41
- name = arguments.shift if arguments.first.is_a?(String)
42
- expectations = arguments.shift || {}
43
- mock = name ? Mockery.instance.named_mock(name, &block) : Mockery.instance.unnamed_mock(&block)
44
- mock.expects(expectations)
45
- mock
46
- end
47
-
48
- # :call-seq: stub(name, &block) -> mock object
49
- # stub(stubbed_methods = {}, &block) -> mock object
50
- # stub(name, stubbed_methods = {}, &block) -> mock object
51
- #
52
- # Creates a mock object.
53
- #
54
- # +name+ is a +String+ identifier for the mock object.
55
- #
56
- # +stubbed_methods+ is a +Hash+ with stubbed method name symbols as keys and corresponding return values as values.
57
- # Note that (contrary to expectations set up by #mock) these expectations <b>need not</b> be fulfilled during the test.
58
- # def test_product
59
- # product = stub('ipod_product', :manufacturer => 'ipod', :price => 100)
60
- # assert_equal 'ipod', product.manufacturer
61
- # assert_equal 100, product.price
62
- # # an error will not be raised even if Product#manufacturer and Product#price have not been called
63
- # end
64
- #
65
- # +block+ is an optional block to be evaluated against the mock object instance, giving an alernative way to set up expectations & stubs.
66
- # def test_product
67
- # product = stub('ipod_product') do
68
- # stubs(:manufacturer).returns('ipod')
69
- # stubs(:price).returns(100)
70
- # end
71
- # assert_equal 'ipod', product.manufacturer
72
- # assert_equal 100, product.price
73
- # # an error will not be raised even if Product#manufacturer and Product#price have not been called
74
- # end
75
- def stub(*arguments, &block)
76
- name = arguments.shift if arguments.first.is_a?(String)
77
- expectations = arguments.shift || {}
78
- stub = name ? Mockery.instance.named_mock(name, &block) : Mockery.instance.unnamed_mock(&block)
79
- stub.stubs(expectations)
80
- stub
81
- end
82
-
83
- # :call-seq: stub_everything(name, &block) -> mock object
84
- # stub_everything(stubbed_methods = {}, &block) -> mock object
85
- # stub_everything(name, stubbed_methods = {}, &block) -> mock object
86
- #
87
- # Creates a mock object that accepts calls to any method.
88
- #
89
- # By default it will return +nil+ for any method call.
90
- #
91
- # +block+ is a block to be evaluated against the mock object instance, giving an alernative way to set up expectations & stubs.
92
- #
93
- # +name+ and +stubbed_methods+ work in the same way as for #stub.
94
- # def test_product
95
- # product = stub_everything('ipod_product', :price => 100)
96
- # assert_nil product.manufacturer
97
- # assert_nil product.any_old_method
98
- # assert_equal 100, product.price
99
- # end
100
- def stub_everything(*arguments, &block)
101
- name = arguments.shift if arguments.first.is_a?(String)
102
- expectations = arguments.shift || {}
103
- stub = name ? Mockery.instance.named_mock(name, &block) : Mockery.instance.unnamed_mock(&block)
104
- stub.stub_everything
105
- stub.stubs(expectations)
106
- stub
107
- end
108
-
109
- # :call-seq: sequence(name) -> sequence
110
- #
111
- # Returns a new sequence that is used to constrain the order in which expectations can occur.
112
- #
113
- # Specify that an expected invocation must occur in within a named +sequence+ by using Expectation#in_sequence.
114
- #
115
- # See also Expectation#in_sequence.
116
- # breakfast = sequence('breakfast')
117
- #
118
- # egg = mock('egg')
119
- # egg.expects(:crack).in_sequence(breakfast)
120
- # egg.expects(:fry).in_sequence(breakfast)
121
- # egg.expects(:eat).in_sequence(breakfast)
122
- def sequence(name)
123
- Sequence.new(name)
124
- end
125
-
126
- # :call-seq: states(name) -> state_machine
127
- #
128
- # Returns a new +state_machine+ that is used to constrain the order in which expectations can occur.
129
- #
130
- # Specify the initial +state+ of the +state_machine+ by using StateMachine#starts_as.
131
- #
132
- # Specify that an expected invocation should change the +state+ of the +state_machine+ by using Expectation#then.
133
- #
134
- # Specify that an expected invocation should be constrained to occur within a particular +state+ by using Expectation#when.
135
- #
136
- # A test can contain multiple +state_machines+.
137
- #
138
- # See also Expectation#then, Expectation#when and StateMachine.
139
- # power = states('power').starts_as('off')
140
- #
141
- # radio = mock('radio')
142
- # radio.expects(:switch_on).then(power.is('on'))
143
- # radio.expects(:select_channel).with('BBC Radio 4').when(power.is('on'))
144
- # radio.expects(:adjust_volume).with(+5).when(power.is('on'))
145
- # radio.expects(:select_channel).with('BBC World Service').when(power.is('on'))
146
- # radio.expects(:adjust_volume).with(-5).when(power.is('on'))
147
- # radio.expects(:switch_off).then(power.is('off'))
148
- def states(name)
149
- Mockery.instance.new_state_machine(name)
150
- end
151
-
152
- def mocha_setup # :nodoc:
153
- end
154
-
155
- def mocha_verify(assertion_counter = nil) # :nodoc:
156
- Mockery.instance.verify(assertion_counter)
157
- end
158
-
159
- def mocha_teardown # :nodoc:
160
- Mockery.instance.teardown
161
- Mockery.reset_instance
162
- end
163
-
164
- end
165
-
166
- end
@@ -1,91 +0,0 @@
1
- module Mocha # :nodoc:
2
-
3
- # A state machine that is used to constrain the order of invocations.
4
- # An invocation can be constrained to occur when a state is, or is_not, active.
5
- class StateMachine
6
-
7
- class State # :nodoc:
8
-
9
- def initialize(state_machine, state)
10
- @state_machine, @state = state_machine, state
11
- end
12
-
13
- def activate
14
- @state_machine.current_state = @state
15
- end
16
-
17
- def active?
18
- @state_machine.current_state == @state
19
- end
20
-
21
- def mocha_inspect
22
- "#{@state_machine.name} is #{@state.mocha_inspect}"
23
- end
24
-
25
- end
26
-
27
- class StatePredicate # :nodoc:
28
-
29
- def initialize(state_machine, state)
30
- @state_machine, @state = state_machine, state
31
- end
32
-
33
- def active?
34
- @state_machine.current_state != @state
35
- end
36
-
37
- def mocha_inspect
38
- "#{@state_machine.name} is not #{@state.mocha_inspect}"
39
- end
40
-
41
- end
42
-
43
- attr_reader :name # :nodoc:
44
-
45
- attr_accessor :current_state # :nodoc:
46
-
47
- def initialize(name) # :nodoc:
48
- @name = name
49
- @current_state = nil
50
- end
51
-
52
- # :call-seq: starts_as(initial_state) -> state_machine
53
- #
54
- # Put the +state_machine+ into the +initial_state+.
55
- def starts_as(initial_state)
56
- become(initial_state)
57
- self
58
- end
59
-
60
- # :call-seq: become(next_state)
61
- #
62
- # Put the +state_machine+ into the +next_state+.
63
- def become(next_state)
64
- @current_state = next_state
65
- end
66
-
67
- # :call-seq: is(state)
68
- #
69
- # Determines whether the +state_machine+ is in the specified +state+.
70
- def is(state)
71
- State.new(self, state)
72
- end
73
-
74
- # :call-seq: is_not(state)
75
- #
76
- # Determines whether the +state_machine+ is not in the specified +state+.
77
- def is_not(state)
78
- StatePredicate.new(self, state)
79
- end
80
-
81
- def mocha_inspect # :nodoc:
82
- if @current_state
83
- "#{@name} is #{@current_state.mocha_inspect}"
84
- else
85
- "#{@name} has no current state"
86
- end
87
- end
88
-
89
- end
90
-
91
- end
@@ -1,16 +0,0 @@
1
- require 'mocha/backtrace_filter'
2
-
3
- module Mocha # :nodoc:
4
-
5
- # Exception raised when an action prevented by Configuration#prevent is attempted.
6
- class StubbingError < StandardError
7
-
8
- def initialize(message = nil, backtrace = []) # :nodoc:
9
- super(message)
10
- filter = BacktraceFilter.new
11
- set_backtrace(filter.filtered(backtrace))
12
- end
13
-
14
- end
15
-
16
- end
@@ -1,103 +0,0 @@
1
- require 'mocha/expectation_error'
2
-
3
- module Mocha
4
-
5
- module TestCaseAdapter
6
-
7
- class AssertionCounter
8
-
9
- def initialize(test_result)
10
- @test_result = test_result
11
- end
12
-
13
- def increment
14
- @test_result.add_assertion
15
- end
16
-
17
- end
18
-
19
- def self.included(base)
20
- if RUBY_VERSION < '1.8.6'
21
- base.class_eval do
22
-
23
- alias_method :run_before_mocha_test_case_adapter, :run
24
-
25
- def run(result)
26
- assertion_counter = AssertionCounter.new(result)
27
- yield(Test::Unit::TestCase::STARTED, name)
28
- @_result = result
29
- begin
30
- begin
31
- setup
32
- __send__(@method_name)
33
- mocha_verify(assertion_counter)
34
- rescue Mocha::ExpectationError => e
35
- add_failure(e.message, e.backtrace)
36
- rescue Test::Unit::AssertionFailedError => e
37
- add_failure(e.message, e.backtrace)
38
- rescue StandardError, ScriptError
39
- add_error($!)
40
- ensure
41
- begin
42
- teardown
43
- rescue Test::Unit::AssertionFailedError => e
44
- add_failure(e.message, e.backtrace)
45
- rescue StandardError, ScriptError
46
- add_error($!)
47
- end
48
- end
49
- ensure
50
- mocha_teardown
51
- end
52
- result.add_run
53
- yield(Test::Unit::TestCase::FINISHED, name)
54
- end
55
-
56
- end
57
- else
58
- base.class_eval do
59
-
60
- alias_method :run_before_mocha_test_case_adapter, :run
61
-
62
- def run(result)
63
- assertion_counter = AssertionCounter.new(result)
64
- yield(Test::Unit::TestCase::STARTED, name)
65
- @_result = result
66
- begin
67
- begin
68
- setup
69
- __send__(@method_name)
70
- mocha_verify(assertion_counter)
71
- rescue Mocha::ExpectationError => e
72
- add_failure(e.message, e.backtrace)
73
- rescue Test::Unit::AssertionFailedError => e
74
- add_failure(e.message, e.backtrace)
75
- rescue Exception
76
- raise if Test::Unit::TestCase::PASSTHROUGH_EXCEPTIONS.include? $!.class
77
- add_error($!)
78
- ensure
79
- begin
80
- teardown
81
- rescue Test::Unit::AssertionFailedError => e
82
- add_failure(e.message, e.backtrace)
83
- rescue Exception
84
- raise if Test::Unit::TestCase::PASSTHROUGH_EXCEPTIONS.include? $!.class
85
- add_error($!)
86
- end
87
- end
88
- ensure
89
- mocha_teardown
90
- end
91
- result.add_run
92
- yield(Test::Unit::TestCase::FINISHED, name)
93
- end
94
-
95
- end
96
-
97
- end
98
-
99
- end
100
-
101
- end
102
-
103
- end
@@ -1,18 +0,0 @@
1
- module Mocha # :nodoc:
2
-
3
- class UnexpectedInvocation
4
-
5
- def initialize(mock, symbol, *arguments)
6
- @mock = mock
7
- @method_matcher = MethodMatcher.new(symbol)
8
- @parameters_matcher = ParametersMatcher.new(arguments)
9
- end
10
-
11
- def to_s
12
- method_signature = "#{@mock.mocha_inspect}.#{@method_matcher.mocha_inspect}#{@parameters_matcher.mocha_inspect}"
13
- "unexpected invocation: #{method_signature}\n"
14
- end
15
-
16
- end
17
-
18
- end
@@ -1,31 +0,0 @@
1
- require 'mocha/no_yields'
2
- require 'mocha/single_yield'
3
- require 'mocha/multiple_yields'
4
-
5
- module Mocha # :nodoc:
6
-
7
- class YieldParameters # :nodoc:
8
-
9
- def initialize
10
- @parameter_groups = []
11
- end
12
-
13
- def next_invocation
14
- case @parameter_groups.length
15
- when 0 then NoYields.new
16
- when 1 then @parameter_groups.first
17
- else @parameter_groups.shift
18
- end
19
- end
20
-
21
- def add(*parameters)
22
- @parameter_groups << SingleYield.new(*parameters)
23
- end
24
-
25
- def multiple_add(*parameter_groups)
26
- @parameter_groups << MultipleYields.new(*parameter_groups)
27
- end
28
-
29
- end
30
-
31
- end