deckshuffler 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (656) hide show
  1. data/.DS_Store +0 -0
  2. data/MIT-LICENSE +21 -0
  3. data/Rakefile +55 -0
  4. data/app/controllers/account_controller.rb +41 -0
  5. data/app/controllers/application.rb +27 -0
  6. data/app/controllers/board_controller.rb +15 -0
  7. data/app/controllers/capacities_controller.rb +52 -0
  8. data/app/controllers/card_sizes_controller.rb +47 -0
  9. data/app/controllers/card_types_controller.rb +47 -0
  10. data/app/controllers/cards_controller.rb +233 -0
  11. data/app/controllers/functional_sets_controller.rb +55 -0
  12. data/app/controllers/iteration_controller.rb +93 -0
  13. data/app/controllers/milestones_controller.rb +51 -0
  14. data/app/controllers/priorities_controller.rb +52 -0
  15. data/app/controllers/project_infos_controller.rb +40 -0
  16. data/app/helpers/account_helper.rb +2 -0
  17. data/app/helpers/application_helper.rb +39 -0
  18. data/app/helpers/board_helper.rb +2 -0
  19. data/app/helpers/capacities_helper.rb +2 -0
  20. data/app/helpers/card_sizes_helper.rb +2 -0
  21. data/app/helpers/card_types_helper.rb +2 -0
  22. data/app/helpers/cards_helper.rb +2 -0
  23. data/app/helpers/functional_sets_helper.rb +2 -0
  24. data/app/helpers/milestones_helper.rb +2 -0
  25. data/app/helpers/priorities_helper.rb +2 -0
  26. data/app/helpers/project_infos_helper.rb +5 -0
  27. data/app/models/capacity.rb +4 -0
  28. data/app/models/card.rb +64 -0
  29. data/app/models/card_size.rb +13 -0
  30. data/app/models/card_type.rb +13 -0
  31. data/app/models/functional_set.rb +5 -0
  32. data/app/models/milestone.rb +15 -0
  33. data/app/models/previous_card_owner.rb +6 -0
  34. data/app/models/priority.rb +14 -0
  35. data/app/models/project_info.rb +3 -0
  36. data/app/views/account/index.rhtml +56 -0
  37. data/app/views/account/login.rhtml +12 -0
  38. data/app/views/account/signup.rhtml +24 -0
  39. data/app/views/board/_card_summary.rhtml +24 -0
  40. data/app/views/board/_cards_column.rhtml +11 -0
  41. data/app/views/board/index.rhtml +30 -0
  42. data/app/views/capacities/edit.rhtml +11 -0
  43. data/app/views/capacities/list.rhtml +34 -0
  44. data/app/views/capacities/new.rhtml +10 -0
  45. data/app/views/capacities/show.rhtml +8 -0
  46. data/app/views/card_sizes/_form.rhtml +10 -0
  47. data/app/views/card_sizes/edit.rhtml +7 -0
  48. data/app/views/card_sizes/list.rhtml +27 -0
  49. data/app/views/card_sizes/new.rhtml +6 -0
  50. data/app/views/card_sizes/show.rhtml +8 -0
  51. data/app/views/card_types/_form.rhtml +7 -0
  52. data/app/views/card_types/edit.rhtml +7 -0
  53. data/app/views/card_types/list.rhtml +27 -0
  54. data/app/views/card_types/new.rhtml +6 -0
  55. data/app/views/card_types/show.rhtml +8 -0
  56. data/app/views/cards/_form.rhtml +104 -0
  57. data/app/views/cards/edit.rhtml +4 -0
  58. data/app/views/cards/import.rhtml +4 -0
  59. data/app/views/cards/list_per_functional_set.rhtml +37 -0
  60. data/app/views/cards/list_per_milestone.rhtml +36 -0
  61. data/app/views/cards/list_per_status.rhtml +40 -0
  62. data/app/views/cards/list_per_user.rhtml +38 -0
  63. data/app/views/cards/merge.rhtml +41 -0
  64. data/app/views/cards/raise_card.rhtml +4 -0
  65. data/app/views/cards/split.rhtml +4 -0
  66. data/app/views/functional_sets/_form.rhtml +10 -0
  67. data/app/views/functional_sets/edit.rhtml +4 -0
  68. data/app/views/functional_sets/list.rhtml +25 -0
  69. data/app/views/functional_sets/new.rhtml +4 -0
  70. data/app/views/iteration/bulk_edit_actual.rhtml +23 -0
  71. data/app/views/iteration/bulk_edit_planned.rhtml +19 -0
  72. data/app/views/layouts/account.rhtml +22 -0
  73. data/app/views/layouts/standard.rhtml +36 -0
  74. data/app/views/milestones/_form.rhtml +8 -0
  75. data/app/views/milestones/edit.rhtml +7 -0
  76. data/app/views/milestones/list.rhtml +23 -0
  77. data/app/views/milestones/new.rhtml +6 -0
  78. data/app/views/milestones/show.rhtml +8 -0
  79. data/app/views/priorities/_form.rhtml +9 -0
  80. data/app/views/priorities/edit.rhtml +7 -0
  81. data/app/views/priorities/list.rhtml +25 -0
  82. data/app/views/priorities/new.rhtml +6 -0
  83. data/app/views/priorities/show.rhtml +9 -0
  84. data/app/views/project_infos/_form.rhtml +18 -0
  85. data/app/views/project_infos/edit.rhtml +7 -0
  86. data/app/views/project_infos/list.rhtml +25 -0
  87. data/app/views/project_infos/new.rhtml +6 -0
  88. data/bin/deckshuffler +74 -0
  89. data/config/boot.rb +19 -0
  90. data/config/environment.rb +68 -0
  91. data/config/routes.rb +19 -0
  92. data/db/development_structure.sql +81 -0
  93. data/db/migrate/001_cards.rb +41 -0
  94. data/db/migrate/002_statuses.rb +45 -0
  95. data/db/migrate/003_card_sizes.rb +17 -0
  96. data/db/migrate/004_card_types.rb +15 -0
  97. data/db/migrate/005_functional_set.rb +23 -0
  98. data/db/migrate/006_project_info.rb +14 -0
  99. data/db/migrate/007_create_users.rb +18 -0
  100. data/db/migrate/008_capacities.rb +14 -0
  101. data/db/migrate/009_in_play_status.rb +48 -0
  102. data/db/migrate/010_milestones.rb +14 -0
  103. data/db/migrate/011_priorities.rb +18 -0
  104. data/db/migrate/012_card_dependencies.rb +21 -0
  105. data/db/migrate/013_authentication_independent.rb +15 -0
  106. data/db/schema.rb +104 -0
  107. data/doc/.DS_Store +0 -0
  108. data/doc/deckshuffler.svg +199 -0
  109. data/lib/authentication/authenticated_system.rb +162 -0
  110. data/lib/authentication/authenticated_test_helper.rb +113 -0
  111. data/lib/authentication/user.rb +67 -0
  112. data/lib/authentication/user_notifier.rb +22 -0
  113. data/lib/authentication/user_observer.rb +9 -0
  114. data/lib/cards_csv_exporter.rb +33 -0
  115. data/lib/cards_csv_importer.rb +87 -0
  116. data/lib/module_validator.rb +12 -0
  117. data/lib/status.rb +69 -0
  118. data/lib/transition_manager.rb +30 -0
  119. data/previous_failures.txt +0 -0
  120. data/public/.DS_Store +0 -0
  121. data/public/.htaccess +41 -0
  122. data/public/404.html +8 -0
  123. data/public/500.html +8 -0
  124. data/public/dispatch.cgi +10 -0
  125. data/public/dispatch.fcgi +29 -0
  126. data/public/dispatch.rb +10 -0
  127. data/public/favicon.ico +0 -0
  128. data/public/images/.DS_Store +0 -0
  129. data/public/images/deckshuffler.png +0 -0
  130. data/public/javascripts/controls.js +750 -0
  131. data/public/javascripts/dragdrop.js +584 -0
  132. data/public/javascripts/effects.js +854 -0
  133. data/public/javascripts/prototype.js +1785 -0
  134. data/public/robots.txt +1 -0
  135. data/public/stylesheets/deckshuffler.css +142 -0
  136. data/public/stylesheets/scaffold.css +74 -0
  137. data/script/about +3 -0
  138. data/script/breakpointer +3 -0
  139. data/script/console +3 -0
  140. data/script/destroy +3 -0
  141. data/script/generate +3 -0
  142. data/script/performance/benchmarker +3 -0
  143. data/script/performance/profiler +3 -0
  144. data/script/plugin +3 -0
  145. data/script/process/reaper +3 -0
  146. data/script/process/spawner +3 -0
  147. data/script/process/spinner +3 -0
  148. data/script/runner +3 -0
  149. data/script/server +3 -0
  150. data/script/spec +4 -0
  151. data/script/spec_server +86 -0
  152. data/spec/controllers/cards_controller_spec.rb +98 -0
  153. data/spec/lib/cards_csv_exporter_spec.rb +86 -0
  154. data/spec/lib/cards_csv_importer_spec.rb +184 -0
  155. data/spec/spec.opts +6 -0
  156. data/spec/spec_helper.rb +23 -0
  157. data/test/.DS_Store +0 -0
  158. data/test/fixtures/capacities.yml +5 -0
  159. data/test/fixtures/card_sizes.yml +6 -0
  160. data/test/fixtures/card_types.yml +5 -0
  161. data/test/fixtures/cards.yml +17 -0
  162. data/test/fixtures/functional_sets.yml +5 -0
  163. data/test/fixtures/milestones.yml +5 -0
  164. data/test/fixtures/priorities.yml +7 -0
  165. data/test/fixtures/project_infos.yml +5 -0
  166. data/test/fixtures/users.yml +17 -0
  167. data/test/functional/.DS_Store +0 -0
  168. data/test/functional/account_controller_test.rb +129 -0
  169. data/test/functional/board_controller_test.rb +28 -0
  170. data/test/functional/capacities_controller_test.rb +37 -0
  171. data/test/functional/cards_controller_test.rb +268 -0
  172. data/test/functional/functional_sets_controller_test.rb +27 -0
  173. data/test/functional/project_infos_controller_test.rb +38 -0
  174. data/test/test_helper.rb +30 -0
  175. data/test/unit/.DS_Store +0 -0
  176. data/test/unit/capacity_test.rb +14 -0
  177. data/test/unit/card_size_test.rb +21 -0
  178. data/test/unit/card_test.rb +51 -0
  179. data/test/unit/card_type_test.rb +20 -0
  180. data/test/unit/milestone_test.rb +20 -0
  181. data/test/unit/priority_test.rb +20 -0
  182. data/test/unit/status_test.rb +93 -0
  183. data/test/unit/transition_manager_test.rb +142 -0
  184. data/test/unit/user_notifier_test.rb +32 -0
  185. data/test/unit/user_test.rb +75 -0
  186. data/vendor/plugins/acts_as_authenticated/CHANGELOG +86 -0
  187. data/vendor/plugins/acts_as_authenticated/README +20 -0
  188. data/vendor/plugins/acts_as_authenticated/generators/authenticated/USAGE +1 -0
  189. data/vendor/plugins/acts_as_authenticated/generators/authenticated/authenticated_generator.rb +102 -0
  190. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/authenticated_system.rb +131 -0
  191. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/authenticated_test_helper.rb +113 -0
  192. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/controller.rb +43 -0
  193. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/fixtures.yml +17 -0
  194. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/functional_test.rb +129 -0
  195. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/helper.rb +2 -0
  196. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/index.rhtml +56 -0
  197. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/login.rhtml +14 -0
  198. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/migration.rb +18 -0
  199. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/model.rb +64 -0
  200. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/signup.rhtml +16 -0
  201. data/vendor/plugins/acts_as_authenticated/generators/authenticated/templates/unit_test.rb +75 -0
  202. data/vendor/plugins/acts_as_authenticated/generators/authenticated_mailer/USAGE +1 -0
  203. data/vendor/plugins/acts_as_authenticated/generators/authenticated_mailer/authenticated_mailer_generator.rb +27 -0
  204. data/vendor/plugins/acts_as_authenticated/generators/authenticated_mailer/templates/activation.rhtml +3 -0
  205. data/vendor/plugins/acts_as_authenticated/generators/authenticated_mailer/templates/notifier.rb +22 -0
  206. data/vendor/plugins/acts_as_authenticated/generators/authenticated_mailer/templates/notifier_test.rb +27 -0
  207. data/vendor/plugins/acts_as_authenticated/generators/authenticated_mailer/templates/observer.rb +9 -0
  208. data/vendor/plugins/acts_as_authenticated/generators/authenticated_mailer/templates/signup_notification.rhtml +8 -0
  209. data/vendor/plugins/acts_as_authenticated/install.rb +1 -0
  210. data/vendor/plugins/rspec/CHANGES +963 -0
  211. data/vendor/plugins/rspec/MIT-LICENSE +20 -0
  212. data/vendor/plugins/rspec/README +75 -0
  213. data/vendor/plugins/rspec/Rakefile +273 -0
  214. data/vendor/plugins/rspec/TODO +54 -0
  215. data/vendor/plugins/rspec/UPGRADE +31 -0
  216. data/vendor/plugins/rspec/autotest/discover.rb +6 -0
  217. data/vendor/plugins/rspec/autotest/rspec.rb +1 -0
  218. data/vendor/plugins/rspec/bin/spec +3 -0
  219. data/vendor/plugins/rspec/bin/spec_translator +8 -0
  220. data/vendor/plugins/rspec/examples/auto_spec_description_example.rb +19 -0
  221. data/vendor/plugins/rspec/examples/before_and_after_example.rb +40 -0
  222. data/vendor/plugins/rspec/examples/behave_as_example.rb +45 -0
  223. data/vendor/plugins/rspec/examples/custom_expectation_matchers.rb +54 -0
  224. data/vendor/plugins/rspec/examples/custom_formatter.rb +12 -0
  225. data/vendor/plugins/rspec/examples/dynamic_spec.rb +9 -0
  226. data/vendor/plugins/rspec/examples/file_accessor.rb +19 -0
  227. data/vendor/plugins/rspec/examples/file_accessor_spec.rb +38 -0
  228. data/vendor/plugins/rspec/examples/greeter_spec.rb +31 -0
  229. data/vendor/plugins/rspec/examples/helper_method_example.rb +11 -0
  230. data/vendor/plugins/rspec/examples/io_processor.rb +8 -0
  231. data/vendor/plugins/rspec/examples/io_processor_spec.rb +21 -0
  232. data/vendor/plugins/rspec/examples/legacy_spec.rb +11 -0
  233. data/vendor/plugins/rspec/examples/mocking_example.rb +27 -0
  234. data/vendor/plugins/rspec/examples/multi_threaded_behaviour_runner.rb +27 -0
  235. data/vendor/plugins/rspec/examples/partial_mock_example.rb +28 -0
  236. data/vendor/plugins/rspec/examples/pending_example.rb +20 -0
  237. data/vendor/plugins/rspec/examples/predicate_example.rb +27 -0
  238. data/vendor/plugins/rspec/examples/priority.txt +1 -0
  239. data/vendor/plugins/rspec/examples/shared_behaviours_example.rb +39 -0
  240. data/vendor/plugins/rspec/examples/spec_and_test_together.rb +20 -0
  241. data/vendor/plugins/rspec/examples/spec_helper.rb +3 -0
  242. data/vendor/plugins/rspec/examples/stack.rb +36 -0
  243. data/vendor/plugins/rspec/examples/stack_spec.rb +97 -0
  244. data/vendor/plugins/rspec/examples/story/game-of-life/.loadpath +5 -0
  245. data/vendor/plugins/rspec/examples/story/game-of-life/README.txt +21 -0
  246. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/everything.rb +6 -0
  247. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/examples/examples.rb +3 -0
  248. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/examples/game_behaviour.rb +35 -0
  249. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/examples/grid_behaviour.rb +66 -0
  250. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/stories/CellsWithLessThanTwoNeighboursDie.story +21 -0
  251. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/stories/CellsWithMoreThanThreeNeighboursDie.story +21 -0
  252. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/stories/EmptySpacesWithThreeNeighboursCreateACell.story +42 -0
  253. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/stories/ICanCreateACell.story +42 -0
  254. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/stories/ICanKillACell.story +17 -0
  255. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/stories/TheGridWraps.story +53 -0
  256. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/stories/create_a_cell.rb +52 -0
  257. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/stories/kill_a_cell.rb +24 -0
  258. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/stories/stories.rb +5 -0
  259. data/vendor/plugins/rspec/examples/story/game-of-life/behaviour/stories/stories.txt +22 -0
  260. data/vendor/plugins/rspec/examples/story/game-of-life/life.rb +3 -0
  261. data/vendor/plugins/rspec/examples/story/game-of-life/life/game.rb +23 -0
  262. data/vendor/plugins/rspec/examples/story/game-of-life/life/grid.rb +43 -0
  263. data/vendor/plugins/rspec/examples/stubbing_example.rb +69 -0
  264. data/vendor/plugins/rspec/examples/test_case_adapter_example.rb +26 -0
  265. data/vendor/plugins/rspec/failing_examples/diffing_spec.rb +36 -0
  266. data/vendor/plugins/rspec/failing_examples/failure_in_setup.rb +10 -0
  267. data/vendor/plugins/rspec/failing_examples/failure_in_teardown.rb +10 -0
  268. data/vendor/plugins/rspec/failing_examples/mocking_example.rb +40 -0
  269. data/vendor/plugins/rspec/failing_examples/mocking_with_flexmock.rb +26 -0
  270. data/vendor/plugins/rspec/failing_examples/mocking_with_mocha.rb +25 -0
  271. data/vendor/plugins/rspec/failing_examples/mocking_with_rr.rb +27 -0
  272. data/vendor/plugins/rspec/failing_examples/partial_mock_example.rb +20 -0
  273. data/vendor/plugins/rspec/failing_examples/predicate_example.rb +29 -0
  274. data/vendor/plugins/rspec/failing_examples/raising_example.rb +47 -0
  275. data/vendor/plugins/rspec/failing_examples/spec_helper.rb +3 -0
  276. data/vendor/plugins/rspec/failing_examples/syntax_error_example.rb +7 -0
  277. data/vendor/plugins/rspec/failing_examples/team_spec.rb +44 -0
  278. data/vendor/plugins/rspec/failing_examples/timeout_behaviour.rb +7 -0
  279. data/vendor/plugins/rspec/init.rb +3 -0
  280. data/vendor/plugins/rspec/lib/autotest/discover.rb +3 -0
  281. data/vendor/plugins/rspec/lib/autotest/rspec.rb +94 -0
  282. data/vendor/plugins/rspec/lib/spec.rb +12 -0
  283. data/vendor/plugins/rspec/lib/spec/dsl.rb +16 -0
  284. data/vendor/plugins/rspec/lib/spec/dsl/behaviour.rb +183 -0
  285. data/vendor/plugins/rspec/lib/spec/dsl/behaviour_description.rb +85 -0
  286. data/vendor/plugins/rspec/lib/spec/dsl/behaviour_factory.rb +59 -0
  287. data/vendor/plugins/rspec/lib/spec/dsl/configuration.rb +137 -0
  288. data/vendor/plugins/rspec/lib/spec/dsl/errors.rb +9 -0
  289. data/vendor/plugins/rspec/lib/spec/dsl/example.rb +7 -0
  290. data/vendor/plugins/rspec/lib/spec/dsl/example_definition.rb +32 -0
  291. data/vendor/plugins/rspec/lib/spec/dsl/example_matcher.rb +38 -0
  292. data/vendor/plugins/rspec/lib/spec/dsl/example_module.rb +198 -0
  293. data/vendor/plugins/rspec/lib/spec/dsl/example_runner.rb +147 -0
  294. data/vendor/plugins/rspec/lib/spec/dsl/example_suite.rb +110 -0
  295. data/vendor/plugins/rspec/lib/spec/dsl/pending.rb +18 -0
  296. data/vendor/plugins/rspec/lib/spec/dsl/shared_behaviour.rb +52 -0
  297. data/vendor/plugins/rspec/lib/spec/dsl/should_raise_handler.rb +64 -0
  298. data/vendor/plugins/rspec/lib/spec/expectations.rb +56 -0
  299. data/vendor/plugins/rspec/lib/spec/expectations/differs/default.rb +66 -0
  300. data/vendor/plugins/rspec/lib/spec/expectations/errors.rb +6 -0
  301. data/vendor/plugins/rspec/lib/spec/expectations/extensions.rb +2 -0
  302. data/vendor/plugins/rspec/lib/spec/expectations/extensions/object.rb +71 -0
  303. data/vendor/plugins/rspec/lib/spec/expectations/extensions/string_and_symbol.rb +17 -0
  304. data/vendor/plugins/rspec/lib/spec/expectations/handler.rb +52 -0
  305. data/vendor/plugins/rspec/lib/spec/extensions.rb +2 -0
  306. data/vendor/plugins/rspec/lib/spec/extensions/main.rb +51 -0
  307. data/vendor/plugins/rspec/lib/spec/extensions/object.rb +10 -0
  308. data/vendor/plugins/rspec/lib/spec/matchers.rb +153 -0
  309. data/vendor/plugins/rspec/lib/spec/matchers/be.rb +206 -0
  310. data/vendor/plugins/rspec/lib/spec/matchers/be_close.rb +37 -0
  311. data/vendor/plugins/rspec/lib/spec/matchers/change.rb +120 -0
  312. data/vendor/plugins/rspec/lib/spec/matchers/eql.rb +43 -0
  313. data/vendor/plugins/rspec/lib/spec/matchers/equal.rb +43 -0
  314. data/vendor/plugins/rspec/lib/spec/matchers/has.rb +44 -0
  315. data/vendor/plugins/rspec/lib/spec/matchers/have.rb +142 -0
  316. data/vendor/plugins/rspec/lib/spec/matchers/include.rb +70 -0
  317. data/vendor/plugins/rspec/lib/spec/matchers/match.rb +41 -0
  318. data/vendor/plugins/rspec/lib/spec/matchers/operator_matcher.rb +73 -0
  319. data/vendor/plugins/rspec/lib/spec/matchers/raise_error.rb +105 -0
  320. data/vendor/plugins/rspec/lib/spec/matchers/respond_to.rb +45 -0
  321. data/vendor/plugins/rspec/lib/spec/matchers/satisfy.rb +47 -0
  322. data/vendor/plugins/rspec/lib/spec/matchers/simple_matcher.rb +27 -0
  323. data/vendor/plugins/rspec/lib/spec/matchers/throw_symbol.rb +73 -0
  324. data/vendor/plugins/rspec/lib/spec/mocks.rb +211 -0
  325. data/vendor/plugins/rspec/lib/spec/mocks/argument_constraint_matchers.rb +27 -0
  326. data/vendor/plugins/rspec/lib/spec/mocks/argument_expectation.rb +183 -0
  327. data/vendor/plugins/rspec/lib/spec/mocks/error_generator.rb +84 -0
  328. data/vendor/plugins/rspec/lib/spec/mocks/errors.rb +10 -0
  329. data/vendor/plugins/rspec/lib/spec/mocks/extensions/object.rb +3 -0
  330. data/vendor/plugins/rspec/lib/spec/mocks/message_expectation.rb +254 -0
  331. data/vendor/plugins/rspec/lib/spec/mocks/methods.rb +39 -0
  332. data/vendor/plugins/rspec/lib/spec/mocks/mock.rb +37 -0
  333. data/vendor/plugins/rspec/lib/spec/mocks/order_group.rb +29 -0
  334. data/vendor/plugins/rspec/lib/spec/mocks/proxy.rb +170 -0
  335. data/vendor/plugins/rspec/lib/spec/mocks/space.rb +28 -0
  336. data/vendor/plugins/rspec/lib/spec/mocks/spec_methods.rb +37 -0
  337. data/vendor/plugins/rspec/lib/spec/rake/spectask.rb +224 -0
  338. data/vendor/plugins/rspec/lib/spec/rake/verify_rcov.rb +52 -0
  339. data/vendor/plugins/rspec/lib/spec/runner.rb +164 -0
  340. data/vendor/plugins/rspec/lib/spec/runner/backtrace_tweaker.rb +57 -0
  341. data/vendor/plugins/rspec/lib/spec/runner/behaviour_runner.rb +56 -0
  342. data/vendor/plugins/rspec/lib/spec/runner/command_line.rb +39 -0
  343. data/vendor/plugins/rspec/lib/spec/runner/drb_command_line.rb +20 -0
  344. data/vendor/plugins/rspec/lib/spec/runner/extensions/object.rb +32 -0
  345. data/vendor/plugins/rspec/lib/spec/runner/formatter.rb +9 -0
  346. data/vendor/plugins/rspec/lib/spec/runner/formatter/base_formatter.rb +77 -0
  347. data/vendor/plugins/rspec/lib/spec/runner/formatter/base_text_formatter.rb +128 -0
  348. data/vendor/plugins/rspec/lib/spec/runner/formatter/failing_behaviours_formatter.rb +29 -0
  349. data/vendor/plugins/rspec/lib/spec/runner/formatter/failing_examples_formatter.rb +22 -0
  350. data/vendor/plugins/rspec/lib/spec/runner/formatter/html_formatter.rb +322 -0
  351. data/vendor/plugins/rspec/lib/spec/runner/formatter/progress_bar_formatter.rb +31 -0
  352. data/vendor/plugins/rspec/lib/spec/runner/formatter/rdoc_formatter.rb +24 -0
  353. data/vendor/plugins/rspec/lib/spec/runner/formatter/snippet_extractor.rb +52 -0
  354. data/vendor/plugins/rspec/lib/spec/runner/formatter/specdoc_formatter.rb +29 -0
  355. data/vendor/plugins/rspec/lib/spec/runner/heckle_runner.rb +72 -0
  356. data/vendor/plugins/rspec/lib/spec/runner/heckle_runner_unsupported.rb +10 -0
  357. data/vendor/plugins/rspec/lib/spec/runner/option_parser.rb +222 -0
  358. data/vendor/plugins/rspec/lib/spec/runner/options.rb +223 -0
  359. data/vendor/plugins/rspec/lib/spec/runner/reporter.rb +137 -0
  360. data/vendor/plugins/rspec/lib/spec/runner/spec_parser.rb +53 -0
  361. data/vendor/plugins/rspec/lib/spec/story.rb +10 -0
  362. data/vendor/plugins/rspec/lib/spec/story/documenter.rb +1 -0
  363. data/vendor/plugins/rspec/lib/spec/story/documenter/plain_text_documenter.rb +43 -0
  364. data/vendor/plugins/rspec/lib/spec/story/extensions.rb +1 -0
  365. data/vendor/plugins/rspec/lib/spec/story/extensions/main.rb +13 -0
  366. data/vendor/plugins/rspec/lib/spec/story/given_scenario.rb +14 -0
  367. data/vendor/plugins/rspec/lib/spec/story/reporter.rb +1 -0
  368. data/vendor/plugins/rspec/lib/spec/story/reporter/plain_text_reporter.rb +60 -0
  369. data/vendor/plugins/rspec/lib/spec/story/runner.rb +49 -0
  370. data/vendor/plugins/rspec/lib/spec/story/runner/scenario_collector.rb +18 -0
  371. data/vendor/plugins/rspec/lib/spec/story/runner/scenario_runner.rb +43 -0
  372. data/vendor/plugins/rspec/lib/spec/story/runner/story_runner.rb +65 -0
  373. data/vendor/plugins/rspec/lib/spec/story/scenario.rb +14 -0
  374. data/vendor/plugins/rspec/lib/spec/story/simple_step.rb +17 -0
  375. data/vendor/plugins/rspec/lib/spec/story/step_mother.rb +31 -0
  376. data/vendor/plugins/rspec/lib/spec/story/story.rb +22 -0
  377. data/vendor/plugins/rspec/lib/spec/story/world.rb +87 -0
  378. data/vendor/plugins/rspec/lib/spec/test.rb +9 -0
  379. data/vendor/plugins/rspec/lib/spec/test/unit/autorunner.rb +6 -0
  380. data/vendor/plugins/rspec/lib/spec/test/unit/example.rb +15 -0
  381. data/vendor/plugins/rspec/lib/spec/test/unit/example_suite.rb +11 -0
  382. data/vendor/plugins/rspec/lib/spec/test/unit/rspectestresult.rb +5 -0
  383. data/vendor/plugins/rspec/lib/spec/test/unit/ui/console/testrunner.rb +18 -0
  384. data/vendor/plugins/rspec/lib/spec/test/unit/ui/testrunnermediator.rb +10 -0
  385. data/vendor/plugins/rspec/lib/spec/test_case_adapter.rb +10 -0
  386. data/vendor/plugins/rspec/lib/spec/translator.rb +114 -0
  387. data/vendor/plugins/rspec/lib/spec/version.rb +23 -0
  388. data/vendor/plugins/rspec/plugins/mock_frameworks/flexmock.rb +23 -0
  389. data/vendor/plugins/rspec/plugins/mock_frameworks/mocha.rb +19 -0
  390. data/vendor/plugins/rspec/plugins/mock_frameworks/rr.rb +21 -0
  391. data/vendor/plugins/rspec/plugins/mock_frameworks/rspec.rb +18 -0
  392. data/vendor/plugins/rspec/rake_tasks/examples.rake +7 -0
  393. data/vendor/plugins/rspec/rake_tasks/examples_rdoc.rake +8 -0
  394. data/vendor/plugins/rspec/rake_tasks/examples_with_rcov.rake +9 -0
  395. data/vendor/plugins/rspec/rake_tasks/failing_examples_with_html.rake +9 -0
  396. data/vendor/plugins/rspec/rake_tasks/verify_rcov.rake +7 -0
  397. data/vendor/plugins/rspec/spec.opts +6 -0
  398. data/vendor/plugins/rspec/spec/README.jruby +14 -0
  399. data/vendor/plugins/rspec/spec/autotest/discover_spec.rb +19 -0
  400. data/vendor/plugins/rspec/spec/autotest/rspec_spec.rb +264 -0
  401. data/vendor/plugins/rspec/spec/autotest_helper.rb +5 -0
  402. data/vendor/plugins/rspec/spec/rspec_suite.rb +6 -0
  403. data/vendor/plugins/rspec/spec/spec/dsl/behaviour_description_spec.rb +97 -0
  404. data/vendor/plugins/rspec/spec/spec/dsl/behaviour_factory_spec.rb +22 -0
  405. data/vendor/plugins/rspec/spec/spec/dsl/configuration_spec.rb +61 -0
  406. data/vendor/plugins/rspec/spec/spec/dsl/example_class_definition_spec.rb +48 -0
  407. data/vendor/plugins/rspec/spec/spec/dsl/example_definition_class_spec.rb +23 -0
  408. data/vendor/plugins/rspec/spec/spec/dsl/example_definition_spec.rb +17 -0
  409. data/vendor/plugins/rspec/spec/spec/dsl/example_factory_spec.rb +69 -0
  410. data/vendor/plugins/rspec/spec/spec/dsl/example_instance_spec.rb +242 -0
  411. data/vendor/plugins/rspec/spec/spec/dsl/example_matcher_spec.rb +91 -0
  412. data/vendor/plugins/rspec/spec/spec/dsl/example_should_raise_spec.rb +164 -0
  413. data/vendor/plugins/rspec/spec/spec/dsl/example_spec.rb +399 -0
  414. data/vendor/plugins/rspec/spec/spec/dsl/example_suite_spec.rb +617 -0
  415. data/vendor/plugins/rspec/spec/spec/dsl/pending_module_spec.rb +31 -0
  416. data/vendor/plugins/rspec/spec/spec/dsl/predicate_matcher_spec.rb +21 -0
  417. data/vendor/plugins/rspec/spec/spec/dsl/shared_behaviour_spec.rb +248 -0
  418. data/vendor/plugins/rspec/spec/spec/expectations/differs/default_spec.rb +109 -0
  419. data/vendor/plugins/rspec/spec/spec/expectations/extensions/object_spec.rb +107 -0
  420. data/vendor/plugins/rspec/spec/spec/expectations/fail_with_spec.rb +71 -0
  421. data/vendor/plugins/rspec/spec/spec/extensions/main_spec.rb +33 -0
  422. data/vendor/plugins/rspec/spec/spec/matchers/be_close_spec.rb +39 -0
  423. data/vendor/plugins/rspec/spec/spec/matchers/be_spec.rb +209 -0
  424. data/vendor/plugins/rspec/spec/spec/matchers/change_spec.rb +232 -0
  425. data/vendor/plugins/rspec/spec/spec/matchers/description_generation_spec.rb +157 -0
  426. data/vendor/plugins/rspec/spec/spec/matchers/eql_spec.rb +28 -0
  427. data/vendor/plugins/rspec/spec/spec/matchers/equal_spec.rb +28 -0
  428. data/vendor/plugins/rspec/spec/spec/matchers/exist_spec.rb +75 -0
  429. data/vendor/plugins/rspec/spec/spec/matchers/handler_spec.rb +129 -0
  430. data/vendor/plugins/rspec/spec/spec/matchers/has_spec.rb +37 -0
  431. data/vendor/plugins/rspec/spec/spec/matchers/have_spec.rb +272 -0
  432. data/vendor/plugins/rspec/spec/spec/matchers/include_spec.rb +45 -0
  433. data/vendor/plugins/rspec/spec/spec/matchers/match_spec.rb +37 -0
  434. data/vendor/plugins/rspec/spec/spec/matchers/matcher_methods_spec.rb +78 -0
  435. data/vendor/plugins/rspec/spec/spec/matchers/mock_constraint_matchers_spec.rb +24 -0
  436. data/vendor/plugins/rspec/spec/spec/matchers/operator_matcher_spec.rb +158 -0
  437. data/vendor/plugins/rspec/spec/spec/matchers/raise_error_spec.rb +185 -0
  438. data/vendor/plugins/rspec/spec/spec/matchers/respond_to_spec.rb +54 -0
  439. data/vendor/plugins/rspec/spec/spec/matchers/satisfy_spec.rb +36 -0
  440. data/vendor/plugins/rspec/spec/spec/matchers/simple_matcher_spec.rb +26 -0
  441. data/vendor/plugins/rspec/spec/spec/matchers/throw_symbol_spec.rb +54 -0
  442. data/vendor/plugins/rspec/spec/spec/mocks/any_number_of_times_spec.rb +29 -0
  443. data/vendor/plugins/rspec/spec/spec/mocks/argument_expectation_spec.rb +23 -0
  444. data/vendor/plugins/rspec/spec/spec/mocks/at_least_spec.rb +97 -0
  445. data/vendor/plugins/rspec/spec/spec/mocks/at_most_spec.rb +93 -0
  446. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_10260_spec.rb +8 -0
  447. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_11545_spec.rb +31 -0
  448. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_7611_spec.rb +19 -0
  449. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_7805_spec.rb +22 -0
  450. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_8165_spec.rb +31 -0
  451. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_8302_spec.rb +26 -0
  452. data/vendor/plugins/rspec/spec/spec/mocks/failing_mock_argument_constraints_spec.rb +115 -0
  453. data/vendor/plugins/rspec/spec/spec/mocks/mock_ordering_spec.rb +84 -0
  454. data/vendor/plugins/rspec/spec/spec/mocks/mock_space_spec.rb +54 -0
  455. data/vendor/plugins/rspec/spec/spec/mocks/mock_spec.rb +450 -0
  456. data/vendor/plugins/rspec/spec/spec/mocks/multiple_return_value_spec.rb +113 -0
  457. data/vendor/plugins/rspec/spec/spec/mocks/null_object_mock_spec.rb +40 -0
  458. data/vendor/plugins/rspec/spec/spec/mocks/once_counts_spec.rb +53 -0
  459. data/vendor/plugins/rspec/spec/spec/mocks/options_hash_spec.rb +42 -0
  460. data/vendor/plugins/rspec/spec/spec/mocks/partial_mock_spec.rb +106 -0
  461. data/vendor/plugins/rspec/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +66 -0
  462. data/vendor/plugins/rspec/spec/spec/mocks/passing_mock_argument_constraints_spec.rb +154 -0
  463. data/vendor/plugins/rspec/spec/spec/mocks/precise_counts_spec.rb +52 -0
  464. data/vendor/plugins/rspec/spec/spec/mocks/record_messages_spec.rb +26 -0
  465. data/vendor/plugins/rspec/spec/spec/mocks/stub_spec.rb +215 -0
  466. data/vendor/plugins/rspec/spec/spec/mocks/twice_counts_spec.rb +67 -0
  467. data/vendor/plugins/rspec/spec/spec/package/bin_spec_spec.rb +12 -0
  468. data/vendor/plugins/rspec/spec/spec/runner/command_line_spec.rb +140 -0
  469. data/vendor/plugins/rspec/spec/spec/runner/drb_command_line_spec.rb +92 -0
  470. data/vendor/plugins/rspec/spec/spec/runner/empty_file.txt +0 -0
  471. data/vendor/plugins/rspec/spec/spec/runner/examples.txt +2 -0
  472. data/vendor/plugins/rspec/spec/spec/runner/execution_context_spec.rb +31 -0
  473. data/vendor/plugins/rspec/spec/spec/runner/failed.txt +3 -0
  474. data/vendor/plugins/rspec/spec/spec/runner/formatter/failing_behaviours_formatter_spec.rb +41 -0
  475. data/vendor/plugins/rspec/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +30 -0
  476. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.4.html +365 -0
  477. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.5-jruby.html +375 -0
  478. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.5.html +371 -0
  479. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.6.html +371 -0
  480. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatter_spec.rb +54 -0
  481. data/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_dry_run_spec.rb +21 -0
  482. data/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_failure_dump_spec.rb +39 -0
  483. data/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +110 -0
  484. data/vendor/plugins/rspec/spec/spec/runner/formatter/rdoc_formatter_dry_run_spec.rb +21 -0
  485. data/vendor/plugins/rspec/spec/spec/runner/formatter/rdoc_formatter_spec.rb +48 -0
  486. data/vendor/plugins/rspec/spec/spec/runner/formatter/snippet_extractor_spec.rb +11 -0
  487. data/vendor/plugins/rspec/spec/spec/runner/formatter/specdoc_formatter_dry_run_spec.rb +21 -0
  488. data/vendor/plugins/rspec/spec/spec/runner/formatter/specdoc_formatter_spec.rb +64 -0
  489. data/vendor/plugins/rspec/spec/spec/runner/heckle_runner_spec.rb +62 -0
  490. data/vendor/plugins/rspec/spec/spec/runner/heckler_spec.rb +13 -0
  491. data/vendor/plugins/rspec/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +45 -0
  492. data/vendor/plugins/rspec/spec/spec/runner/object_ext_spec.rb +11 -0
  493. data/vendor/plugins/rspec/spec/spec/runner/option_parser_spec.rb +356 -0
  494. data/vendor/plugins/rspec/spec/spec/runner/options_spec.rb +255 -0
  495. data/vendor/plugins/rspec/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +56 -0
  496. data/vendor/plugins/rspec/spec/spec/runner/reporter_spec.rb +216 -0
  497. data/vendor/plugins/rspec/spec/spec/runner/spec.opts +2 -0
  498. data/vendor/plugins/rspec/spec/spec/runner/spec_parser_spec.rb +124 -0
  499. data/vendor/plugins/rspec/spec/spec/runner/spec_spaced.opts +2 -0
  500. data/vendor/plugins/rspec/spec/spec/runner_spec.rb +11 -0
  501. data/vendor/plugins/rspec/spec/spec/spec_classes.rb +123 -0
  502. data/vendor/plugins/rspec/spec/spec/story/builders.rb +46 -0
  503. data/vendor/plugins/rspec/spec/spec/story/documenter/plain_text_documenter_spec.rb +100 -0
  504. data/vendor/plugins/rspec/spec/spec/story/extensions_spec.rb +14 -0
  505. data/vendor/plugins/rspec/spec/spec/story/given_scenario_spec.rb +27 -0
  506. data/vendor/plugins/rspec/spec/spec/story/reporter/plain_text_reporter_spec.rb +114 -0
  507. data/vendor/plugins/rspec/spec/spec/story/rspec_adapter.rb +49 -0
  508. data/vendor/plugins/rspec/spec/spec/story/runner/scenario_collector_spec.rb +27 -0
  509. data/vendor/plugins/rspec/spec/spec/story/runner/scenario_runner_spec.rb +145 -0
  510. data/vendor/plugins/rspec/spec/spec/story/runner/story_runner_spec.rb +247 -0
  511. data/vendor/plugins/rspec/spec/spec/story/runner_spec.rb +64 -0
  512. data/vendor/plugins/rspec/spec/spec/story/scenario_spec.rb +20 -0
  513. data/vendor/plugins/rspec/spec/spec/story/simple_step_spec.rb +37 -0
  514. data/vendor/plugins/rspec/spec/spec/story/step_mother_spec.rb +59 -0
  515. data/vendor/plugins/rspec/spec/spec/story/story_helper.rb +3 -0
  516. data/vendor/plugins/rspec/spec/spec/story/story_spec.rb +45 -0
  517. data/vendor/plugins/rspec/spec/spec/story/world_spec.rb +406 -0
  518. data/vendor/plugins/rspec/spec/spec/test/unit/autorunner_test.rb +12 -0
  519. data/vendor/plugins/rspec/spec/spec/test/unit/sample_spec_test.rb +28 -0
  520. data/vendor/plugins/rspec/spec/spec/test/unit/spec_helper.rb +4 -0
  521. data/vendor/plugins/rspec/spec/spec/test/unit/test_unit_and_rspec_spec.rb +28 -0
  522. data/vendor/plugins/rspec/spec/spec/translator_spec.rb +264 -0
  523. data/vendor/plugins/rspec/spec/spec_helper.rb +56 -0
  524. data/vendor/plugins/rspec_on_rails/MIT-LICENSE +31 -0
  525. data/vendor/plugins/rspec_on_rails/README +1 -0
  526. data/vendor/plugins/rspec_on_rails/Rakefile +9 -0
  527. data/vendor/plugins/rspec_on_rails/generators/rspec/CHANGES +1 -0
  528. data/vendor/plugins/rspec_on_rails/generators/rspec/rspec_generator.rb +34 -0
  529. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/all_stories.rb +4 -0
  530. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/previous_failures.txt +0 -0
  531. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/script/spec +4 -0
  532. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/script/spec_server +103 -0
  533. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec.opts +6 -0
  534. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec_helper.rb +23 -0
  535. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/stories_helper.rb +3 -0
  536. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/USAGE +33 -0
  537. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/rspec_controller_generator.rb +49 -0
  538. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/controller_spec.rb +23 -0
  539. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/helper_spec.rb +11 -0
  540. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/view_spec.rb +12 -0
  541. data/vendor/plugins/rspec_on_rails/generators/rspec_model/USAGE +18 -0
  542. data/vendor/plugins/rspec_on_rails/generators/rspec_model/rspec_model_generator.rb +30 -0
  543. data/vendor/plugins/rspec_on_rails/generators/rspec_model/templates/model_spec.rb +11 -0
  544. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/rspec_scaffold_generator.rb +165 -0
  545. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/controller_spec.rb +355 -0
  546. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/edit_erb_spec.rb +25 -0
  547. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/helper_spec.rb +4 -0
  548. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/index_erb_spec.rb +22 -0
  549. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/new_erb_spec.rb +26 -0
  550. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/show_erb_spec.rb +22 -0
  551. data/vendor/plugins/rspec_on_rails/init.rb +9 -0
  552. data/vendor/plugins/rspec_on_rails/lib/autotest/rails_rspec.rb +81 -0
  553. data/vendor/plugins/rspec_on_rails/lib/spec/dsl.rb +2 -0
  554. data/vendor/plugins/rspec_on_rails/lib/spec/dsl/configuration.rb +23 -0
  555. data/vendor/plugins/rspec_on_rails/lib/spec/matchers.rb +3 -0
  556. data/vendor/plugins/rspec_on_rails/lib/spec/matchers/have.rb +19 -0
  557. data/vendor/plugins/rspec_on_rails/lib/spec/rails.rb +57 -0
  558. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl.rb +40 -0
  559. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/assigns_hash_proxy.rb +42 -0
  560. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour.rb +7 -0
  561. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/controller_example.rb +251 -0
  562. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/functional_example.rb +67 -0
  563. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/helper_example.rb +82 -0
  564. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/model_example.rb +14 -0
  565. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/rails_example.rb +93 -0
  566. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/render_observer.rb +90 -0
  567. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/view_example.rb +181 -0
  568. data/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/ivar_proxy.rb +62 -0
  569. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions.rb +7 -0
  570. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/base.rb +11 -0
  571. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/rescue.rb +21 -0
  572. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/test_response.rb +11 -0
  573. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_view/base.rb +27 -0
  574. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/active_record/base.rb +29 -0
  575. data/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/object.rb +5 -0
  576. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers.rb +29 -0
  577. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/assert_select.rb +130 -0
  578. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/have_text.rb +55 -0
  579. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/redirect_to.rb +114 -0
  580. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/render_template.rb +66 -0
  581. data/vendor/plugins/rspec_on_rails/lib/spec/rails/story_adapter.rb +47 -0
  582. data/vendor/plugins/rspec_on_rails/lib/spec/rails/version.rb +26 -0
  583. data/vendor/plugins/rspec_on_rails/spec/rails/autotest/mappings_spec.rb +39 -0
  584. data/vendor/plugins/rspec_on_rails/spec/rails/autotest/rails_rspec_spec.rb +8 -0
  585. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/assigns_hash_proxy_spec.rb +55 -0
  586. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/behaviour_factory_spec.rb +83 -0
  587. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/configuration_spec.rb +56 -0
  588. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/controller_isolation_spec.rb +43 -0
  589. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/controller_spec_spec.rb +166 -0
  590. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/helper_spec_spec.rb +106 -0
  591. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/ivar_proxy_spec.rb +64 -0
  592. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/model_spec_spec.rb +14 -0
  593. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/shared_behaviour_spec.rb +16 -0
  594. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/test_unit_assertion_accessibility_spec.rb +33 -0
  595. data/vendor/plugins/rspec_on_rails/spec/rails/dsl/view_spec_spec.rb +245 -0
  596. data/vendor/plugins/rspec_on_rails/spec/rails/extensions/action_controller_rescue_action_spec.rb +54 -0
  597. data/vendor/plugins/rspec_on_rails/spec/rails/extensions/action_view_base_spec.rb +34 -0
  598. data/vendor/plugins/rspec_on_rails/spec/rails/extensions/active_record_spec.rb +17 -0
  599. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/assert_select_spec.rb +783 -0
  600. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/description_generation_spec.rb +40 -0
  601. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/errors_on_spec.rb +13 -0
  602. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/redirect_to_spec.rb +203 -0
  603. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/render_spec.rb +131 -0
  604. data/vendor/plugins/rspec_on_rails/spec/rails/mocks/mock_model_spec.rb +65 -0
  605. data/vendor/plugins/rspec_on_rails/spec/rails/sample_spec.rb +7 -0
  606. data/vendor/plugins/rspec_on_rails/spec/rails/spec_server_spec.rb +47 -0
  607. data/vendor/plugins/rspec_on_rails/spec/rails/spec_spec.rb +11 -0
  608. data/vendor/plugins/rspec_on_rails/spec/rails_suite.rb +7 -0
  609. data/vendor/plugins/rspec_on_rails/spec/spec_helper.rb +48 -0
  610. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/action_view_base_spec_controller.rb +2 -0
  611. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/controller_spec_controller.rb +48 -0
  612. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/redirect_spec_controller.rb +59 -0
  613. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/render_spec_controller.rb +22 -0
  614. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/rjs_spec_controller.rb +58 -0
  615. data/vendor/plugins/rspec_on_rails/spec_resources/helpers/explicit_helper.rb +10 -0
  616. data/vendor/plugins/rspec_on_rails/spec_resources/helpers/more_explicit_helper.rb +5 -0
  617. data/vendor/plugins/rspec_on_rails/spec_resources/helpers/plugin_application_helper.rb +6 -0
  618. data/vendor/plugins/rspec_on_rails/spec_resources/helpers/view_spec_helper.rb +13 -0
  619. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/_partial.rhtml +0 -0
  620. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_flash_after_session_reset.rhtml +1 -0
  621. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_flash_before_session_reset.rhtml +1 -0
  622. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_the_assigns_hash.rhtml +0 -0
  623. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_with_errors_in_template.rhtml +1 -0
  624. data/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_with_template.rhtml +1 -0
  625. data/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/_a_partial.rhtml +0 -0
  626. data/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.js.rjs +1 -0
  627. data/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.rhtml +0 -0
  628. data/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.rjs +1 -0
  629. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/_replacement_partial.rhtml +1 -0
  630. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/hide_div.rjs +1 -0
  631. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/hide_page_element.rjs +1 -0
  632. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/insert_html.rjs +1 -0
  633. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace.rjs +1 -0
  634. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace_html.rjs +1 -0
  635. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace_html_with_partial.rjs +1 -0
  636. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/visual_effect.rjs +1 -0
  637. data/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/visual_toggle_effect.rjs +1 -0
  638. data/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/no_tags.rhtml +1 -0
  639. data/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/single_div_with_no_attributes.rhtml +1 -0
  640. data/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/single_div_with_one_attribute.rhtml +1 -0
  641. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial.rhtml +2 -0
  642. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_used_twice.rhtml +0 -0
  643. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_with_local_variable.rhtml +1 -0
  644. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_with_sub_partial.rhtml +1 -0
  645. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_spacer.rhtml +1 -0
  646. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/accessor.rhtml +3 -0
  647. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/entry_form.rhtml +2 -0
  648. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/explicit_helper.rhtml +2 -0
  649. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/foo/show.rhtml +1 -0
  650. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/implicit_helper.rhtml +2 -0
  651. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/multiple_helpers.rhtml +3 -0
  652. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/template_with_partial.rhtml +5 -0
  653. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/template_with_partial_using_collection.rhtml +3 -0
  654. data/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/template_with_partial_with_array.rhtml +1 -0
  655. data/vendor/plugins/rspec_on_rails/tasks/rspec.rake +133 -0
  656. metadata +875 -0
@@ -0,0 +1,113 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper'
2
+
3
+ module Spec
4
+ module Mocks
5
+ describe "a Mock expectation with multiple return values and no specified count" do
6
+ before(:each) do
7
+ @mock = Mock.new("mock")
8
+ @return_values = ["1",2,Object.new]
9
+ @mock.should_receive(:message).and_return(@return_values[0],@return_values[1],@return_values[2])
10
+ end
11
+
12
+ it "should return values in order to consecutive calls" do
13
+ @mock.message.should == @return_values[0]
14
+ @mock.message.should == @return_values[1]
15
+ @mock.message.should == @return_values[2]
16
+ @mock.rspec_verify
17
+ end
18
+
19
+ it "should complain when there are too few calls" do
20
+ third = Object.new
21
+ @mock.message.should == @return_values[0]
22
+ @mock.message.should == @return_values[1]
23
+ lambda { @mock.rspec_verify }.should raise_error(MockExpectationError, "Mock 'mock' expected :message with (any args) 3 times, but received it twice")
24
+ end
25
+
26
+ it "should complain when there are too many calls" do
27
+ third = Object.new
28
+ @mock.message.should == @return_values[0]
29
+ @mock.message.should == @return_values[1]
30
+ @mock.message.should == @return_values[2]
31
+ @mock.message.should == @return_values[2]
32
+ lambda { @mock.rspec_verify }.should raise_error(MockExpectationError, "Mock 'mock' expected :message with (any args) 3 times, but received it 4 times")
33
+ end
34
+ end
35
+
36
+ describe "a Mock expectation with multiple return values with a specified count equal to the number of values" do
37
+ before(:each) do
38
+ @mock = Mock.new("mock")
39
+ @return_values = ["1",2,Object.new]
40
+ @mock.should_receive(:message).exactly(3).times.and_return(@return_values[0],@return_values[1],@return_values[2])
41
+ end
42
+
43
+ it "should return values in order to consecutive calls" do
44
+ @mock.message.should == @return_values[0]
45
+ @mock.message.should == @return_values[1]
46
+ @mock.message.should == @return_values[2]
47
+ @mock.rspec_verify
48
+ end
49
+
50
+ it "should complain when there are too few calls" do
51
+ third = Object.new
52
+ @mock.message.should == @return_values[0]
53
+ @mock.message.should == @return_values[1]
54
+ lambda { @mock.rspec_verify }.should raise_error(MockExpectationError, "Mock 'mock' expected :message with (any args) 3 times, but received it twice")
55
+ end
56
+
57
+ it "should complain when there are too many calls" do
58
+ third = Object.new
59
+ @mock.message.should == @return_values[0]
60
+ @mock.message.should == @return_values[1]
61
+ @mock.message.should == @return_values[2]
62
+ @mock.message.should == @return_values[2]
63
+ lambda { @mock.rspec_verify }.should raise_error(MockExpectationError, "Mock 'mock' expected :message with (any args) 3 times, but received it 4 times")
64
+ end
65
+ end
66
+
67
+ describe "a Mock expectation with multiple return values specifying at_least less than the number of values" do
68
+ before(:each) do
69
+ @mock = Mock.new("mock")
70
+ @mock.should_receive(:message).at_least(:twice).with(no_args).and_return(11, 22)
71
+ end
72
+
73
+ it "should use last return value for subsequent calls" do
74
+ @mock.message.should equal(11)
75
+ @mock.message.should equal(22)
76
+ @mock.message.should equal(22)
77
+ @mock.rspec_verify
78
+ end
79
+
80
+ it "should fail when called less than the specified number" do
81
+ @mock.message.should equal(11)
82
+ lambda { @mock.rspec_verify }.should raise_error(MockExpectationError, "Mock 'mock' expected :message with (no args) twice, but received it once")
83
+ end
84
+ end
85
+ describe "a Mock expectation with multiple return values with a specified count larger than the number of values" do
86
+ before(:each) do
87
+ @mock = Mock.new("mock")
88
+ @mock.should_receive(:message).exactly(3).times.and_return(11, 22)
89
+ end
90
+
91
+ it "should use last return value for subsequent calls" do
92
+ @mock.message.should equal(11)
93
+ @mock.message.should equal(22)
94
+ @mock.message.should equal(22)
95
+ @mock.rspec_verify
96
+ end
97
+
98
+ it "should fail when called less than the specified number" do
99
+ @mock.message.should equal(11)
100
+ lambda { @mock.rspec_verify }.should raise_error(MockExpectationError, "Mock 'mock' expected :message with (any args) 3 times, but received it once")
101
+ end
102
+
103
+ it "should fail when called greater than the specified number" do
104
+ @mock.message.should equal(11)
105
+ @mock.message.should equal(22)
106
+ @mock.message.should equal(22)
107
+ @mock.message.should equal(22)
108
+ lambda { @mock.rspec_verify }.should raise_error(MockExpectationError, "Mock 'mock' expected :message with (any args) 3 times, but received it 4 times")
109
+ end
110
+ end
111
+ end
112
+ end
113
+
@@ -0,0 +1,40 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper.rb'
2
+
3
+ module Spec
4
+ module Mocks
5
+ describe "a mock acting as a NullObject" do
6
+ before(:each) do
7
+ @mock = Mock.new("null_object", :null_object => true)
8
+ end
9
+
10
+ it "should allow explicit expectation" do
11
+ @mock.should_receive(:something)
12
+ @mock.something
13
+ end
14
+
15
+ it "should fail verification when explicit exception not met" do
16
+ lambda do
17
+ @mock.should_receive(:something)
18
+ @mock.rspec_verify
19
+ end.should raise_error(MockExpectationError)
20
+ end
21
+
22
+ it "should ignore unexpected methods" do
23
+ @mock.random_call("a", "d", "c")
24
+ @mock.rspec_verify
25
+ end
26
+
27
+ it "should expected message with different args first" do
28
+ @mock.should_receive(:message).with(:expected_arg)
29
+ @mock.message(:unexpected_arg)
30
+ @mock.message(:expected_arg)
31
+ end
32
+
33
+ it "should expected message with different args second" do
34
+ @mock.should_receive(:message).with(:expected_arg)
35
+ @mock.message(:expected_arg)
36
+ @mock.message(:unexpected_arg)
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,53 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper.rb'
2
+
3
+ module Spec
4
+ module Mocks
5
+ describe "OnceCounts" do
6
+ before(:each) do
7
+ @mock = mock("test mock")
8
+ end
9
+
10
+ it "once should fail when called once with wrong args" do
11
+ @mock.should_receive(:random_call).once.with("a", "b", "c")
12
+ lambda do
13
+ @mock.random_call("d", "e", "f")
14
+ end.should raise_error(MockExpectationError)
15
+ @mock.rspec_reset
16
+ end
17
+
18
+ it "once should fail when called twice" do
19
+ @mock.should_receive(:random_call).once
20
+ @mock.random_call
21
+ @mock.random_call
22
+ lambda do
23
+ @mock.rspec_verify
24
+ end.should raise_error(MockExpectationError)
25
+ end
26
+
27
+ it "once should fail when not called" do
28
+ @mock.should_receive(:random_call).once
29
+ lambda do
30
+ @mock.rspec_verify
31
+ end.should raise_error(MockExpectationError)
32
+ end
33
+
34
+ it "once should pass when called once" do
35
+ @mock.should_receive(:random_call).once
36
+ @mock.random_call
37
+ @mock.rspec_verify
38
+ end
39
+
40
+ it "once should pass when called once with specified args" do
41
+ @mock.should_receive(:random_call).once.with("a", "b", "c")
42
+ @mock.random_call("a", "b", "c")
43
+ @mock.rspec_verify
44
+ end
45
+
46
+ it "once should pass when called once with unspecified args" do
47
+ @mock.should_receive(:random_call).once
48
+ @mock.random_call("a", "b", "c")
49
+ @mock.rspec_verify
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,42 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper.rb'
2
+
3
+ module Spec
4
+ module Mocks
5
+ describe "calling :should_receive with an options hash" do
6
+ before do
7
+ @options = ::Spec::Runner::Options.new(StringIO.new, StringIO.new)
8
+ @reporter = ::Spec::Runner::Reporter.new(@options)
9
+ @behaviour = Class.new(::Spec::DSL::Example).describe("My Behaviour")
10
+ end
11
+
12
+ it "should report the file and line submitted with :expected_from" do
13
+ example_definition = @behaviour.create_example_definition "spec" do
14
+ mock = Spec::Mocks::Mock.new("a mock")
15
+ mock.should_receive(:message, :expected_from => "/path/to/blah.ext:37")
16
+ mock.rspec_verify
17
+ end
18
+ example = @behaviour.new(example_definition)
19
+ proxy = ::Spec::DSL::ExampleRunner.new(@options, example)
20
+
21
+ @reporter.should_receive(:example_finished) do |spec, error|
22
+ error.backtrace.detect {|line| line =~ /\/path\/to\/blah.ext:37/}.should_not be_nil
23
+ end
24
+ proxy.run
25
+ end
26
+
27
+ it "should use the message supplied with :message" do
28
+ example_definition = @behaviour.create_example_definition "spec" do
29
+ mock = Spec::Mocks::Mock.new("a mock")
30
+ mock.should_receive(:message, :message => "recebi nada")
31
+ mock.rspec_verify
32
+ end
33
+ example = @behaviour.new(example_definition)
34
+ proxy = ::Spec::DSL::ExampleRunner.new(@options, example)
35
+ @reporter.should_receive(:example_finished) do |spec, error|
36
+ error.message.should == "recebi nada"
37
+ end
38
+ proxy.run
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,106 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper.rb'
2
+
3
+ module Spec
4
+ module Mocks
5
+ describe "using a Partial Mock," do
6
+ before(:each) do
7
+ @object = Object.new
8
+ end
9
+
10
+ it "should name the class in the failure message" do
11
+ @object.should_receive(:foo)
12
+ lambda do
13
+ @object.rspec_verify
14
+ end.should raise_error(Spec::Mocks::MockExpectationError, /Object/)
15
+ end
16
+
17
+ it "should not conflict with @options in the object" do
18
+ @object.instance_eval { @options = Object.new }
19
+ @object.should_receive(:blah)
20
+ @object.blah
21
+ end
22
+
23
+ it "should_not_receive should mock out the method" do
24
+ @object.should_not_receive(:fuhbar)
25
+ @object.fuhbar
26
+ lambda do
27
+ @object.rspec_verify
28
+ end.should raise_error(Spec::Mocks::MockExpectationError)
29
+ end
30
+
31
+ it "should_not_receive should return a negative message expectation" do
32
+ @object.should_not_receive(:foobar).should be_kind_of(NegativeMessageExpectation)
33
+ end
34
+
35
+ it "should_receive should mock out the method" do
36
+ @object.should_receive(:foobar).with(:test_param).and_return(1)
37
+ @object.foobar(:test_param).should equal(1)
38
+ end
39
+
40
+ it "should_receive should handle a hash" do
41
+ @object.should_receive(:foobar).with(:key => "value").and_return(1)
42
+ @object.foobar(:key => "value").should equal(1)
43
+ end
44
+
45
+ it "should_receive should handle an inner hash" do
46
+ hash = {:a => {:key => "value"}}
47
+ @object.should_receive(:foobar).with(:key => "value").and_return(1)
48
+ @object.foobar(hash[:a]).should equal(1)
49
+ end
50
+
51
+ it "should_receive should return a message expectation" do
52
+ @object.should_receive(:foobar).should be_kind_of(MessageExpectation)
53
+ @object.foobar
54
+ end
55
+
56
+ it "should_receive should verify method was called" do
57
+ @object.should_receive(:foobar).with(:test_param).and_return(1)
58
+ lambda do
59
+ @object.rspec_verify
60
+ end.should raise_error(Spec::Mocks::MockExpectationError)
61
+ end
62
+
63
+ it "should_receive should also take a String argument" do
64
+ @object.should_receive('foobar')
65
+ @object.foobar
66
+ end
67
+
68
+ it "should_not_receive should also take a String argument" do
69
+ @object.should_not_receive('foobar')
70
+ @object.foobar
71
+ lambda do
72
+ @object.rspec_verify
73
+ end.should raise_error(Spec::Mocks::MockExpectationError)
74
+ end
75
+
76
+ it "should use report nil in the error message" do
77
+ @this_will_resolve_to_nil.should_receive(:foobar)
78
+ lambda do
79
+ @this_will_resolve_to_nil.rspec_verify
80
+ end.should raise_error(Spec::Mocks::MockExpectationError, /NilClass.*expected :foobar with/)
81
+ end
82
+ end
83
+
84
+ describe "Partially mocking an object that defines ==, after another mock has been defined" do
85
+ before(:each) do
86
+ stub("existing mock", :foo => :foo)
87
+ end
88
+
89
+ class PartiallyMockedEquals
90
+ attr_reader :val
91
+ def initialize(val)
92
+ @val = val
93
+ end
94
+
95
+ def ==(other)
96
+ @val == other.val
97
+ end
98
+ end
99
+
100
+ it "should not raise an error when stubbing the object" do
101
+ o = PartiallyMockedEquals.new :foo
102
+ lambda { o.stub!(:bar) }.should_not raise_error(NoMethodError)
103
+ end
104
+ end
105
+ end
106
+ end
@@ -0,0 +1,66 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper.rb'
2
+
3
+ module Spec
4
+ module Mocks
5
+ describe "PartialMockUsingMocksDirectly" do
6
+ before(:each) do
7
+
8
+ klass=Class.new
9
+ klass.class_eval do
10
+ def existing_method
11
+ :original_value
12
+ end
13
+ end
14
+ @obj = klass.new
15
+
16
+ end
17
+
18
+ # See http://rubyforge.org/tracker/index.php?func=detail&aid=10263&group_id=797&atid=3149
19
+ # specify "should clear expectations on verify" do
20
+ # @obj.should_receive(:msg)
21
+ # @obj.msg
22
+ # @obj.rspec_verify
23
+ # lambda do
24
+ # @obj.msg
25
+ # end.should raise_error(NoMethodError)
26
+ #
27
+ # end
28
+ it "should fail when expected message is not received" do
29
+ @obj.should_receive(:msg)
30
+ lambda do
31
+ @obj.rspec_verify
32
+ end.should raise_error(MockExpectationError)
33
+
34
+ end
35
+ it "should fail when message is received with incorrect args" do
36
+ @obj.should_receive(:msg).with(:correct_arg)
37
+ lambda do
38
+ @obj.msg(:incorrect_arg)
39
+ end.should raise_error(MockExpectationError)
40
+ @obj.msg(:correct_arg)
41
+
42
+ end
43
+ it "should pass when expected message is received" do
44
+ @obj.should_receive(:msg)
45
+ @obj.msg
46
+ @obj.rspec_verify
47
+
48
+ end
49
+ it "should pass when message is received with correct args" do
50
+ @obj.should_receive(:msg).with(:correct_arg)
51
+ @obj.msg(:correct_arg)
52
+ @obj.rspec_verify
53
+
54
+ end
55
+ it "should revert to original method if existed" do
56
+ @obj.existing_method.should equal(:original_value)
57
+ @obj.should_receive(:existing_method).and_return(:mock_value)
58
+ @obj.existing_method.should equal(:mock_value)
59
+ @obj.rspec_verify
60
+ @obj.existing_method.should equal(:original_value)
61
+
62
+ end
63
+
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,154 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper.rb'
2
+
3
+ module Spec
4
+ module Mocks
5
+ describe "mock argument constraints", :shared => true do
6
+ before(:each) do
7
+ @mock = Mock.new("test mock")
8
+ Kernel.stub!(:warn)
9
+ end
10
+
11
+ after(:each) do
12
+ @mock.rspec_verify
13
+ end
14
+ end
15
+
16
+ describe Methods, "handling argument constraints with DEPRECATED symbols" do
17
+ it_should_behave_like "mock argument constraints"
18
+
19
+ it "should accept true as boolean" do
20
+ @mock.should_receive(:random_call).with(:boolean)
21
+ @mock.random_call(true)
22
+ end
23
+
24
+ it "should accept false as boolean" do
25
+ @mock.should_receive(:random_call).with(:boolean)
26
+ @mock.random_call(false)
27
+ end
28
+
29
+ it "should accept fixnum as numeric" do
30
+ @mock.should_receive(:random_call).with(:numeric)
31
+ @mock.random_call(1)
32
+ end
33
+
34
+ it "should accept float as numeric" do
35
+ @mock.should_receive(:random_call).with(:numeric)
36
+ @mock.random_call(1.5)
37
+ end
38
+
39
+ it "should accept string as anything" do
40
+ @mock.should_receive(:random_call).with("a", :anything, "c")
41
+ @mock.random_call("a", "whatever", "c")
42
+ end
43
+
44
+ it "should match string" do
45
+ @mock.should_receive(:random_call).with(:string)
46
+ @mock.random_call("a string")
47
+ end
48
+
49
+ it "should match no args against any_args" do
50
+ @mock.should_receive(:random_call).with(:any_args)
51
+ @mock.random_call("a string")
52
+ end
53
+
54
+ it "should match no args against no_args" do
55
+ @mock.should_receive(:random_call).with(:no_args)
56
+ @mock.random_call
57
+ end
58
+ end
59
+
60
+ describe Methods, "handling argument constraints" do
61
+ it_should_behave_like "mock argument constraints"
62
+
63
+ it "should accept true as boolean()" do
64
+ @mock.should_receive(:random_call).with(boolean())
65
+ @mock.random_call(true)
66
+ end
67
+
68
+ it "should accept false as boolean()" do
69
+ @mock.should_receive(:random_call).with(boolean())
70
+ @mock.random_call(false)
71
+ end
72
+
73
+ it "should accept fixnum as an_instance_of(Numeric)" do
74
+ @mock.should_receive(:random_call).with(an_instance_of(Numeric))
75
+ @mock.random_call(1)
76
+ end
77
+
78
+ it "should accept float as an_instance_of(Numeric)" do
79
+ @mock.should_receive(:random_call).with(an_instance_of(Numeric))
80
+ @mock.random_call(1.5)
81
+ end
82
+
83
+ it "should accept string as anything()" do
84
+ @mock.should_receive(:random_call).with("a", anything(), "c")
85
+ @mock.random_call("a", "whatever", "c")
86
+ end
87
+
88
+ it "should match duck type with one method" do
89
+ @mock.should_receive(:random_call).with(duck_type(:length))
90
+ @mock.random_call([])
91
+ end
92
+
93
+ it "should match duck type with two methods" do
94
+ @mock.should_receive(:random_call).with(duck_type(:abs, :div))
95
+ @mock.random_call(1)
96
+ end
97
+
98
+ it "should match no args against any_args()" do
99
+ @mock.should_receive(:random_call).with(any_args)
100
+ @mock.random_call()
101
+ end
102
+
103
+ it "should match one arg against any_args()" do
104
+ @mock.should_receive(:random_call).with(any_args)
105
+ @mock.random_call("a string")
106
+ end
107
+
108
+ it "should match no args against no_args()" do
109
+ @mock.should_receive(:random_call).with(no_args)
110
+ @mock.random_call()
111
+ end
112
+ end
113
+
114
+ describe Methods, "handling non-constraint arguments" do
115
+
116
+ it "should match non special symbol (can be removed when deprecated symbols are removed)" do
117
+ @mock.should_receive(:random_call).with(:some_symbol)
118
+ @mock.random_call(:some_symbol)
119
+ end
120
+
121
+ it "should match string against regexp" do
122
+ @mock.should_receive(:random_call).with(/bcd/)
123
+ @mock.random_call("abcde")
124
+ end
125
+
126
+ it "should match regexp against regexp" do
127
+ @mock.should_receive(:random_call).with(/bcd/)
128
+ @mock.random_call(/bcd/)
129
+ end
130
+
131
+ it "should match against a hash submitted and received by value" do
132
+ @mock.should_receive(:random_call).with(:a => "a", :b => "b")
133
+ @mock.random_call(:a => "a", :b => "b")
134
+ end
135
+
136
+ it "should match against a hash submitted by reference and received by value" do
137
+ opts = {:a => "a", :b => "b"}
138
+ @mock.should_receive(:random_call).with(opts)
139
+ @mock.random_call(:a => "a", :b => "b")
140
+ end
141
+
142
+ it "should match against a hash submitted by value and received by reference" do
143
+ opts = {:a => "a", :b => "b"}
144
+ @mock.should_receive(:random_call).with(:a => "a", :b => "b")
145
+ @mock.random_call(opts)
146
+ end
147
+
148
+ it "should match against a Matcher" do
149
+ @mock.should_receive(:msg).with(equal(37))
150
+ @mock.msg(37)
151
+ end
152
+ end
153
+ end
154
+ end