dxruby_rp5 0.0.1

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 (554) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/.rspec +2 -0
  4. data/Gemfile +4 -0
  5. data/LICENSE.txt +22 -0
  6. data/README.md +88 -0
  7. data/Rakefile +12 -0
  8. data/bin/dxrp5 +11 -0
  9. data/dxruby_rp5.gemspec +25 -0
  10. data/lib/dxruby.rb +4 -0
  11. data/lib/dxruby_rp5/font.rb +36 -0
  12. data/lib/dxruby_rp5/image.rb +146 -0
  13. data/lib/dxruby_rp5/input.rb +319 -0
  14. data/lib/dxruby_rp5/render_target.rb +109 -0
  15. data/lib/dxruby_rp5/runner.rb +17 -0
  16. data/lib/dxruby_rp5/runners/base.rb +89 -0
  17. data/lib/dxruby_rp5/runners/run.rb +5 -0
  18. data/lib/dxruby_rp5/sound.rb +13 -0
  19. data/lib/dxruby_rp5/sound_effect.rb +20 -0
  20. data/lib/dxruby_rp5/sprite.rb +188 -0
  21. data/lib/dxruby_rp5/version.rb +4 -0
  22. data/lib/dxruby_rp5/window.rb +148 -0
  23. data/lib/dxruby_rp5.rb +246 -0
  24. data/spec/fixtures/image.jpg +0 -0
  25. data/spec/fixtures/image.png +0 -0
  26. data/spec/fixtures/sound.wav +0 -0
  27. data/spec/fixtures/test_sketch.rb +2 -0
  28. data/spec/lib/dxruby_rp5/font_spec.rb +17 -0
  29. data/spec/lib/dxruby_rp5/image_spec.rb +194 -0
  30. data/spec/lib/dxruby_rp5/input_spec.rb +407 -0
  31. data/spec/lib/dxruby_rp5/render_taret_spec.rb +105 -0
  32. data/spec/lib/dxruby_rp5/sound_effect_spec.rb +42 -0
  33. data/spec/lib/dxruby_rp5/sound_spec.rb +50 -0
  34. data/spec/lib/dxruby_rp5/sprite_spec.rb +566 -0
  35. data/spec/lib/dxruby_rp5/window_spec.rb +36 -0
  36. data/spec/lib/dxruby_rp5_spec.rb +8 -0
  37. data/spec/runner.rb +14 -0
  38. data/spec/spec.rb +15 -0
  39. data/spec/spec_helper.rb +43 -0
  40. data/spec/support/fixture_helper.rb +8 -0
  41. data/spec/vendor/diff-lcs-1.2.5/.autotest +3 -0
  42. data/spec/vendor/diff-lcs-1.2.5/.gemtest +0 -0
  43. data/spec/vendor/diff-lcs-1.2.5/.hoerc +2 -0
  44. data/spec/vendor/diff-lcs-1.2.5/.rspec +2 -0
  45. data/spec/vendor/diff-lcs-1.2.5/.travis.yml +22 -0
  46. data/spec/vendor/diff-lcs-1.2.5/Contributing.rdoc +64 -0
  47. data/spec/vendor/diff-lcs-1.2.5/Gemfile +20 -0
  48. data/spec/vendor/diff-lcs-1.2.5/History.rdoc +152 -0
  49. data/spec/vendor/diff-lcs-1.2.5/License.rdoc +39 -0
  50. data/spec/vendor/diff-lcs-1.2.5/Manifest.txt +38 -0
  51. data/spec/vendor/diff-lcs-1.2.5/README.rdoc +85 -0
  52. data/spec/vendor/diff-lcs-1.2.5/Rakefile +41 -0
  53. data/spec/vendor/diff-lcs-1.2.5/autotest/discover.rb +1 -0
  54. data/spec/vendor/diff-lcs-1.2.5/bin/htmldiff +32 -0
  55. data/spec/vendor/diff-lcs-1.2.5/bin/ldiff +6 -0
  56. data/spec/vendor/diff-lcs-1.2.5/docs/COPYING.txt +339 -0
  57. data/spec/vendor/diff-lcs-1.2.5/docs/artistic.txt +127 -0
  58. data/spec/vendor/diff-lcs-1.2.5/lib/diff/lcs/array.rb +7 -0
  59. data/spec/vendor/diff-lcs-1.2.5/lib/diff/lcs/block.rb +37 -0
  60. data/spec/vendor/diff-lcs-1.2.5/lib/diff/lcs/callbacks.rb +322 -0
  61. data/spec/vendor/diff-lcs-1.2.5/lib/diff/lcs/change.rb +177 -0
  62. data/spec/vendor/diff-lcs-1.2.5/lib/diff/lcs/htmldiff.rb +149 -0
  63. data/spec/vendor/diff-lcs-1.2.5/lib/diff/lcs/hunk.rb +276 -0
  64. data/spec/vendor/diff-lcs-1.2.5/lib/diff/lcs/internals.rb +301 -0
  65. data/spec/vendor/diff-lcs-1.2.5/lib/diff/lcs/ldiff.rb +195 -0
  66. data/spec/vendor/diff-lcs-1.2.5/lib/diff/lcs/string.rb +5 -0
  67. data/spec/vendor/diff-lcs-1.2.5/lib/diff/lcs.rb +805 -0
  68. data/spec/vendor/diff-lcs-1.2.5/lib/diff-lcs.rb +3 -0
  69. data/spec/vendor/diff-lcs-1.2.5/spec/change_spec.rb +65 -0
  70. data/spec/vendor/diff-lcs-1.2.5/spec/diff_spec.rb +47 -0
  71. data/spec/vendor/diff-lcs-1.2.5/spec/hunk_spec.rb +72 -0
  72. data/spec/vendor/diff-lcs-1.2.5/spec/issues_spec.rb +24 -0
  73. data/spec/vendor/diff-lcs-1.2.5/spec/lcs_spec.rb +54 -0
  74. data/spec/vendor/diff-lcs-1.2.5/spec/patch_spec.rb +414 -0
  75. data/spec/vendor/diff-lcs-1.2.5/spec/sdiff_spec.rb +214 -0
  76. data/spec/vendor/diff-lcs-1.2.5/spec/spec_helper.rb +290 -0
  77. data/spec/vendor/diff-lcs-1.2.5/spec/traverse_balanced_spec.rb +310 -0
  78. data/spec/vendor/diff-lcs-1.2.5/spec/traverse_sequences_spec.rb +139 -0
  79. data/spec/vendor/rspec-2.14.1/License.txt +24 -0
  80. data/spec/vendor/rspec-2.14.1/README.md +47 -0
  81. data/spec/vendor/rspec-2.14.1/lib/rspec/version.rb +5 -0
  82. data/spec/vendor/rspec-2.14.1/lib/rspec.rb +3 -0
  83. data/spec/vendor/rspec-core-2.14.7/.document +5 -0
  84. data/spec/vendor/rspec-core-2.14.7/.yardopts +6 -0
  85. data/spec/vendor/rspec-core-2.14.7/Changelog.md +904 -0
  86. data/spec/vendor/rspec-core-2.14.7/License.txt +24 -0
  87. data/spec/vendor/rspec-core-2.14.7/README.md +261 -0
  88. data/spec/vendor/rspec-core-2.14.7/exe/autospec +13 -0
  89. data/spec/vendor/rspec-core-2.14.7/exe/rspec +25 -0
  90. data/spec/vendor/rspec-core-2.14.7/features/Autotest.md +38 -0
  91. data/spec/vendor/rspec-core-2.14.7/features/README.md +17 -0
  92. data/spec/vendor/rspec-core-2.14.7/features/Upgrade.md +364 -0
  93. data/spec/vendor/rspec-core-2.14.7/features/command_line/README.md +28 -0
  94. data/spec/vendor/rspec-core-2.14.7/features/command_line/example_name_option.feature +97 -0
  95. data/spec/vendor/rspec-core-2.14.7/features/command_line/exit_status.feature +82 -0
  96. data/spec/vendor/rspec-core-2.14.7/features/command_line/format_option.feature +75 -0
  97. data/spec/vendor/rspec-core-2.14.7/features/command_line/init.feature +18 -0
  98. data/spec/vendor/rspec-core-2.14.7/features/command_line/line_number_appended_to_path.feature +140 -0
  99. data/spec/vendor/rspec-core-2.14.7/features/command_line/line_number_option.feature +58 -0
  100. data/spec/vendor/rspec-core-2.14.7/features/command_line/order.feature +29 -0
  101. data/spec/vendor/rspec-core-2.14.7/features/command_line/pattern_option.feature +49 -0
  102. data/spec/vendor/rspec-core-2.14.7/features/command_line/rake_task.feature +122 -0
  103. data/spec/vendor/rspec-core-2.14.7/features/command_line/require_option.feature +43 -0
  104. data/spec/vendor/rspec-core-2.14.7/features/command_line/ruby.feature +22 -0
  105. data/spec/vendor/rspec-core-2.14.7/features/command_line/tag.feature +98 -0
  106. data/spec/vendor/rspec-core-2.14.7/features/command_line/warnings_option.feature +29 -0
  107. data/spec/vendor/rspec-core-2.14.7/features/configuration/alias_example_to.feature +48 -0
  108. data/spec/vendor/rspec-core-2.14.7/features/configuration/backtrace_clean_patterns.feature +102 -0
  109. data/spec/vendor/rspec-core-2.14.7/features/configuration/custom_settings.feature +84 -0
  110. data/spec/vendor/rspec-core-2.14.7/features/configuration/default_path.feature +38 -0
  111. data/spec/vendor/rspec-core-2.14.7/features/configuration/deprecation_stream.feature +58 -0
  112. data/spec/vendor/rspec-core-2.14.7/features/configuration/fail_fast.feature +77 -0
  113. data/spec/vendor/rspec-core-2.14.7/features/configuration/failure_exit_code.feature +36 -0
  114. data/spec/vendor/rspec-core-2.14.7/features/configuration/order_and_seed.feature +3 -0
  115. data/spec/vendor/rspec-core-2.14.7/features/configuration/output_stream.feature +24 -0
  116. data/spec/vendor/rspec-core-2.14.7/features/configuration/pattern.feature +38 -0
  117. data/spec/vendor/rspec-core-2.14.7/features/configuration/profile.feature +220 -0
  118. data/spec/vendor/rspec-core-2.14.7/features/configuration/read_options_from_file.feature +90 -0
  119. data/spec/vendor/rspec-core-2.14.7/features/configuration/run_all_when_everything_filtered.feature +76 -0
  120. data/spec/vendor/rspec-core-2.14.7/features/configuration/show_failures_in_pending_blocks.feature +61 -0
  121. data/spec/vendor/rspec-core-2.14.7/features/configuration/treat_symbols_as_metadata_keys_with_true_values.feature +52 -0
  122. data/spec/vendor/rspec-core-2.14.7/features/example_groups/basic_structure.feature +55 -0
  123. data/spec/vendor/rspec-core-2.14.7/features/example_groups/shared_context.feature +74 -0
  124. data/spec/vendor/rspec-core-2.14.7/features/example_groups/shared_examples.feature +294 -0
  125. data/spec/vendor/rspec-core-2.14.7/features/expectation_framework_integration/configure_expectation_framework.feature +102 -0
  126. data/spec/vendor/rspec-core-2.14.7/features/filtering/exclusion_filters.feature +138 -0
  127. data/spec/vendor/rspec-core-2.14.7/features/filtering/if_and_unless.feature +168 -0
  128. data/spec/vendor/rspec-core-2.14.7/features/filtering/inclusion_filters.feature +105 -0
  129. data/spec/vendor/rspec-core-2.14.7/features/formatters/configurable_colors.feature +31 -0
  130. data/spec/vendor/rspec-core-2.14.7/features/formatters/custom_formatter.feature +36 -0
  131. data/spec/vendor/rspec-core-2.14.7/features/formatters/json_formatter.feature +30 -0
  132. data/spec/vendor/rspec-core-2.14.7/features/formatters/text_formatter.feature +46 -0
  133. data/spec/vendor/rspec-core-2.14.7/features/helper_methods/arbitrary_methods.feature +40 -0
  134. data/spec/vendor/rspec-core-2.14.7/features/helper_methods/let.feature +50 -0
  135. data/spec/vendor/rspec-core-2.14.7/features/helper_methods/modules.feature +149 -0
  136. data/spec/vendor/rspec-core-2.14.7/features/hooks/around_hooks.feature +343 -0
  137. data/spec/vendor/rspec-core-2.14.7/features/hooks/before_and_after_hooks.feature +427 -0
  138. data/spec/vendor/rspec-core-2.14.7/features/hooks/filtering.feature +234 -0
  139. data/spec/vendor/rspec-core-2.14.7/features/metadata/current_example.feature +17 -0
  140. data/spec/vendor/rspec-core-2.14.7/features/metadata/described_class.feature +17 -0
  141. data/spec/vendor/rspec-core-2.14.7/features/metadata/user_defined.feature +113 -0
  142. data/spec/vendor/rspec-core-2.14.7/features/mock_framework_integration/use_any_framework.feature +106 -0
  143. data/spec/vendor/rspec-core-2.14.7/features/mock_framework_integration/use_flexmock.feature +96 -0
  144. data/spec/vendor/rspec-core-2.14.7/features/mock_framework_integration/use_mocha.feature +97 -0
  145. data/spec/vendor/rspec-core-2.14.7/features/mock_framework_integration/use_rr.feature +98 -0
  146. data/spec/vendor/rspec-core-2.14.7/features/mock_framework_integration/use_rspec.feature +97 -0
  147. data/spec/vendor/rspec-core-2.14.7/features/pending/pending_examples.feature +229 -0
  148. data/spec/vendor/rspec-core-2.14.7/features/spec_files/arbitrary_file_suffix.feature +13 -0
  149. data/spec/vendor/rspec-core-2.14.7/features/step_definitions/additional_cli_steps.rb +49 -0
  150. data/spec/vendor/rspec-core-2.14.7/features/subject/attribute_of_subject.feature +124 -0
  151. data/spec/vendor/rspec-core-2.14.7/features/subject/explicit_subject.feature +101 -0
  152. data/spec/vendor/rspec-core-2.14.7/features/subject/implicit_receiver.feature +29 -0
  153. data/spec/vendor/rspec-core-2.14.7/features/subject/implicit_subject.feature +63 -0
  154. data/spec/vendor/rspec-core-2.14.7/features/support/env.rb +14 -0
  155. data/spec/vendor/rspec-core-2.14.7/features/support/rubinius.rb +6 -0
  156. data/spec/vendor/rspec-core-2.14.7/lib/autotest/discover.rb +1 -0
  157. data/spec/vendor/rspec-core-2.14.7/lib/autotest/rspec2.rb +73 -0
  158. data/spec/vendor/rspec-core-2.14.7/lib/rspec/autorun.rb +2 -0
  159. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/backtrace_cleaner.rb +46 -0
  160. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/backward_compatibility.rb +55 -0
  161. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/command_line.rb +36 -0
  162. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/configuration.rb +1174 -0
  163. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/configuration_options.rb +156 -0
  164. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/deprecation.rb +31 -0
  165. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/drb_command_line.rb +26 -0
  166. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/drb_options.rb +87 -0
  167. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/dsl.rb +26 -0
  168. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/example.rb +325 -0
  169. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/example_group.rb +479 -0
  170. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/extensions/instance_eval_with_args.rb +44 -0
  171. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/extensions/kernel.rb +9 -0
  172. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/extensions/module_eval_with_args.rb +38 -0
  173. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/extensions/ordered.rb +27 -0
  174. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/filter_manager.rb +203 -0
  175. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/base_formatter.rb +246 -0
  176. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/base_text_formatter.rb +329 -0
  177. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/deprecation_formatter.rb +39 -0
  178. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/documentation_formatter.rb +67 -0
  179. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/helpers.rb +110 -0
  180. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/html_formatter.rb +155 -0
  181. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/html_printer.rb +408 -0
  182. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/json_formatter.rb +70 -0
  183. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/progress_formatter.rb +32 -0
  184. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/snippet_extractor.rb +92 -0
  185. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters/text_mate_formatter.rb +34 -0
  186. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/formatters.rb +55 -0
  187. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/hooks.rb +519 -0
  188. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/memoized_helpers.rb +514 -0
  189. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/metadata.rb +299 -0
  190. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/metadata_hash_builder.rb +97 -0
  191. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/mocking/with_absolutely_nothing.rb +11 -0
  192. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/mocking/with_flexmock.rb +27 -0
  193. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/mocking/with_mocha.rb +52 -0
  194. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/mocking/with_rr.rb +27 -0
  195. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/mocking/with_rspec.rb +27 -0
  196. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/option_parser.rb +219 -0
  197. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/pending.rb +113 -0
  198. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/project_initializer.rb +86 -0
  199. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/rake_task.rb +206 -0
  200. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/reporter.rb +132 -0
  201. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/ruby_project.rb +44 -0
  202. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/runner.rb +87 -0
  203. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/shared_context.rb +55 -0
  204. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/shared_example_group/collection.rb +43 -0
  205. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/shared_example_group.rb +185 -0
  206. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/version.rb +8 -0
  207. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core/world.rb +127 -0
  208. data/spec/vendor/rspec-core-2.14.7/lib/rspec/core.rb +169 -0
  209. data/spec/vendor/rspec-core-2.14.7/spec/autotest/discover_spec.rb +19 -0
  210. data/spec/vendor/rspec-core-2.14.7/spec/autotest/failed_results_re_spec.rb +45 -0
  211. data/spec/vendor/rspec-core-2.14.7/spec/autotest/rspec_spec.rb +133 -0
  212. data/spec/vendor/rspec-core-2.14.7/spec/command_line/order_spec.rb +204 -0
  213. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/backtrace_cleaner_spec.rb +68 -0
  214. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/command_line_spec.rb +108 -0
  215. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/command_line_spec_output.txt +0 -0
  216. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/configuration_options_spec.rb +417 -0
  217. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/configuration_spec.rb +1561 -0
  218. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/deprecation_spec.rb +46 -0
  219. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/deprecations_spec.rb +73 -0
  220. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/drb_command_line_spec.rb +102 -0
  221. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/drb_options_spec.rb +193 -0
  222. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/dsl_spec.rb +25 -0
  223. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/example_group_spec.rb +1187 -0
  224. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/example_spec.rb +465 -0
  225. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/filter_manager_spec.rb +246 -0
  226. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/base_formatter_spec.rb +108 -0
  227. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/base_text_formatter_spec.rb +494 -0
  228. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/deprecation_formatter_spec.rb +96 -0
  229. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/documentation_formatter_spec.rb +88 -0
  230. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/helpers_spec.rb +104 -0
  231. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.8.7-jruby.html +404 -0
  232. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.8.7-rbx.html +477 -0
  233. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.8.7.html +414 -0
  234. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.9.2.html +425 -0
  235. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.9.3-jruby.html +404 -0
  236. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.9.3-rbx.html +477 -0
  237. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.9.3.html +425 -0
  238. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-2.0.0.html +425 -0
  239. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatter_spec.rb +110 -0
  240. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/json_formatter_spec.rb +115 -0
  241. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/progress_formatter_spec.rb +30 -0
  242. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/snippet_extractor_spec.rb +26 -0
  243. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.8.7-jruby.html +395 -0
  244. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.8.7-rbx.html +477 -0
  245. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.8.7.html +414 -0
  246. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.9.2.html +425 -0
  247. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.9.3-jruby.html +404 -0
  248. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.9.3-rbx.html +477 -0
  249. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.9.3.html +425 -0
  250. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-2.0.0.html +425 -0
  251. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatter_spec.rb +96 -0
  252. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/hooks_filtering_spec.rb +227 -0
  253. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/hooks_spec.rb +267 -0
  254. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/kernel_extensions_spec.rb +9 -0
  255. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/memoized_helpers_spec.rb +688 -0
  256. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/metadata_spec.rb +491 -0
  257. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/option_parser_spec.rb +242 -0
  258. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/pending_example_spec.rb +220 -0
  259. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/project_initializer_spec.rb +130 -0
  260. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/rake_task_spec.rb +181 -0
  261. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/reporter_spec.rb +141 -0
  262. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/resources/a_bar.rb +0 -0
  263. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/resources/a_foo.rb +0 -0
  264. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/resources/a_spec.rb +1 -0
  265. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/resources/custom_example_group_runner.rb +14 -0
  266. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/resources/formatter_specs.rb +60 -0
  267. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/resources/utf8_encoded.rb +8 -0
  268. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/rspec_matchers_spec.rb +45 -0
  269. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/ruby_project_spec.rb +26 -0
  270. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/runner_spec.rb +82 -0
  271. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/shared_context_spec.rb +114 -0
  272. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/shared_example_group/collection_spec.rb +70 -0
  273. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/shared_example_group_spec.rb +120 -0
  274. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core/world_spec.rb +142 -0
  275. data/spec/vendor/rspec-core-2.14.7/spec/rspec/core_spec.rb +74 -0
  276. data/spec/vendor/rspec-core-2.14.7/spec/spec_helper.rb +132 -0
  277. data/spec/vendor/rspec-core-2.14.7/spec/support/config_options_helper.rb +15 -0
  278. data/spec/vendor/rspec-core-2.14.7/spec/support/helper_methods.rb +36 -0
  279. data/spec/vendor/rspec-core-2.14.7/spec/support/in_sub_process.rb +37 -0
  280. data/spec/vendor/rspec-core-2.14.7/spec/support/isolate_load_path_mutation.rb +6 -0
  281. data/spec/vendor/rspec-core-2.14.7/spec/support/isolated_directory.rb +10 -0
  282. data/spec/vendor/rspec-core-2.14.7/spec/support/isolated_home_directory.rb +16 -0
  283. data/spec/vendor/rspec-core-2.14.7/spec/support/matchers.rb +65 -0
  284. data/spec/vendor/rspec-core-2.14.7/spec/support/mathn_integration_support.rb +12 -0
  285. data/spec/vendor/rspec-core-2.14.7/spec/support/sandboxed_mock_space.rb +100 -0
  286. data/spec/vendor/rspec-core-2.14.7/spec/support/shared_example_groups.rb +41 -0
  287. data/spec/vendor/rspec-core-2.14.7/spec/support/spec_files.rb +44 -0
  288. data/spec/vendor/rspec-expectations-2.14.4/.document +5 -0
  289. data/spec/vendor/rspec-expectations-2.14.4/.yardopts +6 -0
  290. data/spec/vendor/rspec-expectations-2.14.4/Changelog.md +419 -0
  291. data/spec/vendor/rspec-expectations-2.14.4/License.txt +23 -0
  292. data/spec/vendor/rspec-expectations-2.14.4/README.md +184 -0
  293. data/spec/vendor/rspec-expectations-2.14.4/features/README.md +48 -0
  294. data/spec/vendor/rspec-expectations-2.14.4/features/Upgrade.md +53 -0
  295. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/README.md +90 -0
  296. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/be.feature +175 -0
  297. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/be_within.feature +48 -0
  298. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/cover.feature +47 -0
  299. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/end_with.feature +48 -0
  300. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/equality.feature +139 -0
  301. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/exist.feature +45 -0
  302. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/expect_change.feature +59 -0
  303. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/expect_error.feature +144 -0
  304. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/have.feature +109 -0
  305. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/include.feature +174 -0
  306. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/match.feature +52 -0
  307. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/operators.feature +227 -0
  308. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/predicates.feature +137 -0
  309. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/respond_to.feature +84 -0
  310. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/satisfy.feature +33 -0
  311. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/start_with.feature +48 -0
  312. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/throw_symbol.feature +91 -0
  313. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/types.feature +116 -0
  314. data/spec/vendor/rspec-expectations-2.14.4/features/built_in_matchers/yield.feature +161 -0
  315. data/spec/vendor/rspec-expectations-2.14.4/features/custom_matchers/access_running_example.feature +53 -0
  316. data/spec/vendor/rspec-expectations-2.14.4/features/custom_matchers/define_diffable_matcher.feature +27 -0
  317. data/spec/vendor/rspec-expectations-2.14.4/features/custom_matchers/define_matcher.feature +368 -0
  318. data/spec/vendor/rspec-expectations-2.14.4/features/custom_matchers/define_matcher_outside_rspec.feature +38 -0
  319. data/spec/vendor/rspec-expectations-2.14.4/features/custom_matchers/define_matcher_with_fluent_interface.feature +24 -0
  320. data/spec/vendor/rspec-expectations-2.14.4/features/customized_message.feature +22 -0
  321. data/spec/vendor/rspec-expectations-2.14.4/features/diffing.feature +85 -0
  322. data/spec/vendor/rspec-expectations-2.14.4/features/implicit_docstrings.feature +52 -0
  323. data/spec/vendor/rspec-expectations-2.14.4/features/step_definitions/additional_cli_steps.rb +22 -0
  324. data/spec/vendor/rspec-expectations-2.14.4/features/support/env.rb +14 -0
  325. data/spec/vendor/rspec-expectations-2.14.4/features/support/rubinius.rb +6 -0
  326. data/spec/vendor/rspec-expectations-2.14.4/features/syntax_configuration.feature +71 -0
  327. data/spec/vendor/rspec-expectations-2.14.4/features/test_frameworks/test_unit.feature +44 -0
  328. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/deprecation.rb +31 -0
  329. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/differ.rb +154 -0
  330. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/errors.rb +9 -0
  331. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/expectation_target.rb +87 -0
  332. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/extensions/array.rb +9 -0
  333. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/extensions/object.rb +29 -0
  334. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/extensions.rb +2 -0
  335. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/fail_with.rb +79 -0
  336. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/handler.rb +68 -0
  337. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/syntax.rb +164 -0
  338. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations/version.rb +9 -0
  339. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/expectations.rb +73 -0
  340. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/be_close.rb +9 -0
  341. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/base_matcher.rb +68 -0
  342. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/be.rb +197 -0
  343. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/be_instance_of.rb +15 -0
  344. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/be_kind_of.rb +11 -0
  345. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/be_within.rb +55 -0
  346. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/change.rb +141 -0
  347. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/cover.rb +21 -0
  348. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/eq.rb +22 -0
  349. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/eql.rb +23 -0
  350. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/equal.rb +48 -0
  351. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/exist.rb +26 -0
  352. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/has.rb +48 -0
  353. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/have.rb +124 -0
  354. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/include.rb +61 -0
  355. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/match.rb +17 -0
  356. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/match_array.rb +51 -0
  357. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/raise_error.rb +127 -0
  358. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/respond_to.rb +74 -0
  359. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/satisfy.rb +30 -0
  360. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/start_and_end_with.rb +48 -0
  361. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/throw_symbol.rb +94 -0
  362. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/yield.rb +296 -0
  363. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/built_in.rb +39 -0
  364. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/compatibility.rb +14 -0
  365. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/configuration.rb +108 -0
  366. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/dsl.rb +24 -0
  367. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/extensions/instance_eval_with_args.rb +39 -0
  368. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/generated_descriptions.rb +35 -0
  369. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/matcher.rb +300 -0
  370. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/method_missing.rb +12 -0
  371. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/operator_matcher.rb +113 -0
  372. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/pretty.rb +70 -0
  373. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers/test_unit_integration.rb +11 -0
  374. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec/matchers.rb +694 -0
  375. data/spec/vendor/rspec-expectations-2.14.4/lib/rspec-expectations.rb +1 -0
  376. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/expectations/differ_spec.rb +229 -0
  377. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/expectations/expectation_target_spec.rb +82 -0
  378. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/expectations/extensions/kernel_spec.rb +67 -0
  379. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/expectations/fail_with_spec.rb +114 -0
  380. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/expectations/handler_spec.rb +227 -0
  381. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/expectations/syntax_spec.rb +139 -0
  382. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/expectations_spec.rb +50 -0
  383. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/base_matcher_spec.rb +62 -0
  384. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/be_close_spec.rb +22 -0
  385. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/be_instance_of_spec.rb +63 -0
  386. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/be_kind_of_spec.rb +41 -0
  387. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/be_spec.rb +522 -0
  388. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/be_within_spec.rb +137 -0
  389. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/change_spec.rb +567 -0
  390. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/configuration_spec.rb +206 -0
  391. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/cover_spec.rb +69 -0
  392. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/description_generation_spec.rb +190 -0
  393. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/dsl_spec.rb +57 -0
  394. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/eq_spec.rb +60 -0
  395. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/eql_spec.rb +41 -0
  396. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/equal_spec.rb +78 -0
  397. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/exist_spec.rb +124 -0
  398. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/has_spec.rb +122 -0
  399. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/have_spec.rb +455 -0
  400. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/include_matcher_integration_spec.rb +30 -0
  401. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/include_spec.rb +531 -0
  402. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/match_array_spec.rb +194 -0
  403. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/match_spec.rb +74 -0
  404. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/matcher_spec.rb +471 -0
  405. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/matchers_spec.rb +37 -0
  406. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/method_missing_spec.rb +28 -0
  407. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/operator_matcher_spec.rb +252 -0
  408. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/raise_error_spec.rb +535 -0
  409. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/respond_to_spec.rb +292 -0
  410. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/satisfy_spec.rb +44 -0
  411. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/start_with_end_with_spec.rb +186 -0
  412. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/throw_symbol_spec.rb +116 -0
  413. data/spec/vendor/rspec-expectations-2.14.4/spec/rspec/matchers/yield_spec.rb +514 -0
  414. data/spec/vendor/rspec-expectations-2.14.4/spec/spec_helper.rb +54 -0
  415. data/spec/vendor/rspec-expectations-2.14.4/spec/support/classes.rb +56 -0
  416. data/spec/vendor/rspec-expectations-2.14.4/spec/support/in_sub_process.rb +38 -0
  417. data/spec/vendor/rspec-expectations-2.14.4/spec/support/matchers.rb +22 -0
  418. data/spec/vendor/rspec-expectations-2.14.4/spec/support/ruby_version.rb +10 -0
  419. data/spec/vendor/rspec-expectations-2.14.4/spec/support/shared_examples.rb +13 -0
  420. data/spec/vendor/rspec-mocks-2.14.4/.document +5 -0
  421. data/spec/vendor/rspec-mocks-2.14.4/.yardopts +6 -0
  422. data/spec/vendor/rspec-mocks-2.14.4/Changelog.md +420 -0
  423. data/spec/vendor/rspec-mocks-2.14.4/License.txt +23 -0
  424. data/spec/vendor/rspec-mocks-2.14.4/README.md +315 -0
  425. data/spec/vendor/rspec-mocks-2.14.4/features/README.md +67 -0
  426. data/spec/vendor/rspec-mocks-2.14.4/features/Scope.md +17 -0
  427. data/spec/vendor/rspec-mocks-2.14.4/features/Upgrade.md +22 -0
  428. data/spec/vendor/rspec-mocks-2.14.4/features/argument_matchers/README.md +27 -0
  429. data/spec/vendor/rspec-mocks-2.14.4/features/argument_matchers/explicit.feature +59 -0
  430. data/spec/vendor/rspec-mocks-2.14.4/features/argument_matchers/general_matchers.feature +85 -0
  431. data/spec/vendor/rspec-mocks-2.14.4/features/argument_matchers/type_matchers.feature +26 -0
  432. data/spec/vendor/rspec-mocks-2.14.4/features/message_expectations/README.md +73 -0
  433. data/spec/vendor/rspec-mocks-2.14.4/features/message_expectations/allow_any_instance_of.feature +26 -0
  434. data/spec/vendor/rspec-mocks-2.14.4/features/message_expectations/any_instance.feature +21 -0
  435. data/spec/vendor/rspec-mocks-2.14.4/features/message_expectations/block_local_expectations.feature.pending +55 -0
  436. data/spec/vendor/rspec-mocks-2.14.4/features/message_expectations/call_original.feature +24 -0
  437. data/spec/vendor/rspec-mocks-2.14.4/features/message_expectations/expect_any_instance_of.feature +27 -0
  438. data/spec/vendor/rspec-mocks-2.14.4/features/message_expectations/expect_message_using_expect.feature +107 -0
  439. data/spec/vendor/rspec-mocks-2.14.4/features/message_expectations/expect_message_using_should_receive.feature +118 -0
  440. data/spec/vendor/rspec-mocks-2.14.4/features/message_expectations/receive_counts.feature +209 -0
  441. data/spec/vendor/rspec-mocks-2.14.4/features/message_expectations/warn_when_expectation_is_set_on_nil.feature +50 -0
  442. data/spec/vendor/rspec-mocks-2.14.4/features/method_stubs/README.md +73 -0
  443. data/spec/vendor/rspec-mocks-2.14.4/features/method_stubs/any_instance.feature +136 -0
  444. data/spec/vendor/rspec-mocks-2.14.4/features/method_stubs/as_null_object.feature +40 -0
  445. data/spec/vendor/rspec-mocks-2.14.4/features/method_stubs/simple_return_value_with_allow.feature +44 -0
  446. data/spec/vendor/rspec-mocks-2.14.4/features/method_stubs/simple_return_value_with_stub.feature +64 -0
  447. data/spec/vendor/rspec-mocks-2.14.4/features/method_stubs/stub_chain.feature +51 -0
  448. data/spec/vendor/rspec-mocks-2.14.4/features/method_stubs/stub_implementation.feature +48 -0
  449. data/spec/vendor/rspec-mocks-2.14.4/features/method_stubs/to_ary.feature +51 -0
  450. data/spec/vendor/rspec-mocks-2.14.4/features/mutating_constants/README.md +82 -0
  451. data/spec/vendor/rspec-mocks-2.14.4/features/mutating_constants/hiding_defined_constant.feature +64 -0
  452. data/spec/vendor/rspec-mocks-2.14.4/features/mutating_constants/stub_defined_constant.feature +79 -0
  453. data/spec/vendor/rspec-mocks-2.14.4/features/mutating_constants/stub_undefined_constant.feature +50 -0
  454. data/spec/vendor/rspec-mocks-2.14.4/features/outside_rspec/configuration.feature +62 -0
  455. data/spec/vendor/rspec-mocks-2.14.4/features/outside_rspec/standalone.feature +33 -0
  456. data/spec/vendor/rspec-mocks-2.14.4/features/spies/spy_partial_mock_method.feature +34 -0
  457. data/spec/vendor/rspec-mocks-2.14.4/features/spies/spy_pure_mock_method.feature +76 -0
  458. data/spec/vendor/rspec-mocks-2.14.4/features/spies/spy_unstubbed_method.feature +18 -0
  459. data/spec/vendor/rspec-mocks-2.14.4/features/step_definitions/additional_cli_steps.rb +11 -0
  460. data/spec/vendor/rspec-mocks-2.14.4/features/support/env.rb +13 -0
  461. data/spec/vendor/rspec-mocks-2.14.4/features/support/rubinius.rb +6 -0
  462. data/spec/vendor/rspec-mocks-2.14.4/features/test_frameworks/test_unit.feature +43 -0
  463. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/chain.rb +94 -0
  464. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/expectation_chain.rb +42 -0
  465. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/message_chains.rb +60 -0
  466. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/recorder.rb +211 -0
  467. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/stub_chain.rb +40 -0
  468. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/stub_chain_chain.rb +23 -0
  469. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/argument_list_matcher.rb +97 -0
  470. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/argument_matchers.rb +238 -0
  471. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/configuration.rb +55 -0
  472. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/deprecation.rb +18 -0
  473. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/error_generator.rb +179 -0
  474. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/errors.rb +12 -0
  475. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/example_methods.rb +156 -0
  476. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/extensions/instance_exec.rb +34 -0
  477. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/extensions/marshal.rb +17 -0
  478. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/framework.rb +34 -0
  479. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/instance_method_stasher.rb +94 -0
  480. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/matchers/have_received.rb +93 -0
  481. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/matchers/receive.rb +97 -0
  482. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/message_expectation.rb +583 -0
  483. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/method_double.rb +271 -0
  484. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/mock.rb +7 -0
  485. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/mutate_const.rb +403 -0
  486. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/order_group.rb +40 -0
  487. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/proxy.rb +223 -0
  488. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/proxy_for_nil.rb +37 -0
  489. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/space.rb +91 -0
  490. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/standalone.rb +3 -0
  491. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/stub_chain.rb +51 -0
  492. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/syntax.rb +349 -0
  493. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/targets.rb +69 -0
  494. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/test_double.rb +135 -0
  495. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks/version.rb +7 -0
  496. data/spec/vendor/rspec-mocks-2.14.4/lib/rspec/mocks.rb +96 -0
  497. data/spec/vendor/rspec-mocks-2.14.4/lib/spec/mocks.rb +4 -0
  498. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/and_call_original_spec.rb +243 -0
  499. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/and_yield_spec.rb +127 -0
  500. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/any_instance/message_chains_spec.rb +41 -0
  501. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/any_instance_spec.rb +987 -0
  502. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/any_number_of_times_spec.rb +36 -0
  503. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/argument_expectation_spec.rb +32 -0
  504. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/at_least_spec.rb +151 -0
  505. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/at_most_spec.rb +90 -0
  506. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/block_return_value_spec.rb +88 -0
  507. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_10260_spec.rb +8 -0
  508. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_10263_spec.rb +27 -0
  509. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_11545_spec.rb +32 -0
  510. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_496_spec.rb +17 -0
  511. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_600_spec.rb +22 -0
  512. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_7611_spec.rb +16 -0
  513. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_8165_spec.rb +31 -0
  514. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_830_spec.rb +21 -0
  515. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_957_spec.rb +22 -0
  516. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/combining_implementation_instructions_spec.rb +205 -0
  517. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/configuration_spec.rb +150 -0
  518. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/double_spec.rb +24 -0
  519. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/extensions/marshal_spec.rb +54 -0
  520. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/failing_argument_matchers_spec.rb +110 -0
  521. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/hash_excluding_matcher_spec.rb +67 -0
  522. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/hash_including_matcher_spec.rb +90 -0
  523. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/instance_method_stasher_spec.rb +58 -0
  524. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/matchers/have_received_spec.rb +266 -0
  525. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/matchers/receive_spec.rb +336 -0
  526. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/methods_spec.rb +27 -0
  527. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/mock_ordering_spec.rb +103 -0
  528. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/mock_space_spec.rb +113 -0
  529. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/mock_spec.rb +798 -0
  530. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/multiple_return_value_spec.rb +132 -0
  531. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/mutate_const_spec.rb +501 -0
  532. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/nil_expectation_warning_spec.rb +68 -0
  533. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/null_object_mock_spec.rb +123 -0
  534. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/once_counts_spec.rb +52 -0
  535. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/options_hash_spec.rb +35 -0
  536. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/partial_mock_spec.rb +205 -0
  537. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/partial_mock_using_mocks_directly_spec.rb +95 -0
  538. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/passing_argument_matchers_spec.rb +142 -0
  539. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/precise_counts_spec.rb +68 -0
  540. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/record_messages_spec.rb +26 -0
  541. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/serialization_spec.rb +89 -0
  542. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/space_spec.rb +32 -0
  543. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/stash_spec.rb +46 -0
  544. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/stub_chain_spec.rb +154 -0
  545. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/stub_implementation_spec.rb +81 -0
  546. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/stub_spec.rb +353 -0
  547. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/stubbed_message_expectations_spec.rb +58 -0
  548. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/syntax_agnostic_message_matchers_spec.rb +81 -0
  549. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/test_double_spec.rb +67 -0
  550. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/to_ary_spec.rb +54 -0
  551. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks/twice_counts_spec.rb +66 -0
  552. data/spec/vendor/rspec-mocks-2.14.4/spec/rspec/mocks_spec.rb +65 -0
  553. data/spec/vendor/rspec-mocks-2.14.4/spec/spec_helper.rb +60 -0
  554. metadata +1170 -0
@@ -0,0 +1,79 @@
1
+ Feature: Stub Defined Constant
2
+
3
+ Use `stub_const` to stub constants. When the constant is already defined,
4
+ the stubbed value will replace the original value for the duration of the
5
+ example.
6
+
7
+ Scenario: Stub top-level constant
8
+ Given a file named "stub_const_spec.rb" with:
9
+ """ruby
10
+ FOO = 7
11
+
12
+ describe "stubbing FOO" do
13
+ it "can stub FOO with a different value" do
14
+ stub_const("FOO", 5)
15
+ FOO.should eq(5)
16
+ end
17
+
18
+ it "restores the stubbed constant when the example completes" do
19
+ FOO.should eq(7)
20
+ end
21
+ end
22
+ """
23
+ When I run `rspec stub_const_spec.rb`
24
+ Then the examples should all pass
25
+
26
+ Scenario: Stub nested constant
27
+ Given a file named "stub_const_spec.rb" with:
28
+ """ruby
29
+ module MyGem
30
+ class SomeClass
31
+ FOO = 7
32
+ end
33
+ end
34
+
35
+ module MyGem
36
+ describe SomeClass do
37
+ it "stubs the nested constant when it is fully qualified" do
38
+ stub_const("MyGem::SomeClass::FOO", 5)
39
+ SomeClass::FOO.should eq(5)
40
+ end
41
+ end
42
+ end
43
+ """
44
+ When I run `rspec stub_const_spec.rb`
45
+ Then the examples should all pass
46
+
47
+ Scenario: Transfer nested constants
48
+ Given a file named "stub_const_spec.rb" with:
49
+ """ruby
50
+ module MyGem
51
+ class SomeClass
52
+ FOO = 7
53
+ end
54
+ end
55
+
56
+ module MyGem
57
+ describe SomeClass do
58
+ let(:fake_class) { Class.new }
59
+
60
+ it "does not transfer nested constants by default" do
61
+ stub_const("MyGem::SomeClass", fake_class)
62
+ expect { SomeClass::FOO }.to raise_error(NameError)
63
+ end
64
+
65
+ it "transfers nested constants when using :transfer_nested_constants => true" do
66
+ stub_const("MyGem::SomeClass", fake_class, :transfer_nested_constants => true)
67
+ SomeClass::FOO.should eq(7)
68
+ end
69
+
70
+ it "can specify a list of nested constants to transfer" do
71
+ stub_const("MyGem::SomeClass", fake_class, :transfer_nested_constants => [:FOO])
72
+ SomeClass::FOO.should eq(7)
73
+ end
74
+ end
75
+ end
76
+ """
77
+ When I run `rspec stub_const_spec.rb`
78
+ Then the examples should all pass
79
+
@@ -0,0 +1,50 @@
1
+ Feature: Stub Undefined Constant
2
+
3
+ Use `stub_const` to stub constants. When the constant is not already defined,
4
+ all the necessary intermediary modules will be dynamically created. When the
5
+ example completes, the intermediary module constants will be removed to return
6
+ the constant state to how it started.
7
+
8
+ Scenario: Stub top-level constant
9
+ Given a file named "stub_const_spec.rb" with:
10
+ """ruby
11
+ describe "stubbing FOO" do
12
+ it "can stub undefined constant FOO" do
13
+ stub_const("FOO", 5)
14
+ FOO.should eq(5)
15
+ end
16
+
17
+ it "undefines the constant when the example completes" do
18
+ expect { FOO }.to raise_error(NameError)
19
+ end
20
+ end
21
+ """
22
+ When I run `rspec stub_const_spec.rb`
23
+ Then the examples should all pass
24
+
25
+ Scenario: Stub nested constant
26
+ Given a file named "stub_const_spec.rb" with:
27
+ """ruby
28
+ module MyGem
29
+ class SomeClass
30
+ end
31
+ end
32
+
33
+ module MyGem
34
+ describe SomeClass do
35
+ it "can stub an arbitrarily deep constant that is undefined" do
36
+ defined?(SomeClass::A).should be_false
37
+ stub_const("MyGem::SomeClass::A::B::C", 3)
38
+ SomeClass::A::B::C.should eq(3)
39
+ SomeClass::A.should be_a(Module)
40
+ end
41
+
42
+ it 'undefines the intermediary constants that were dynamically created' do
43
+ defined?(SomeClass).should be_true
44
+ defined?(SomeClass::A).should be_false
45
+ end
46
+ end
47
+ end
48
+ """
49
+ When I run `rspec stub_const_spec.rb`
50
+ Then the examples should all pass
@@ -0,0 +1,62 @@
1
+ Feature: configure any test framework to use rspec-mocks
2
+
3
+ Test frameworks that want to use rspec-mocks can use
4
+ RSpec::Mocks::setup(self) to hook into rspec-mocks. Doing so adds the
5
+ following:
6
+
7
+ To the object passed to setup:
8
+
9
+ double # creates a test double
10
+ mock # creates a test double
11
+ stub # creates a test double
12
+
13
+ To every object in the system:
14
+
15
+ should_receive
16
+ should_not_receive
17
+ stub
18
+
19
+ NOTICE: the stub() method that is added to the object passed to setup is not
20
+ the same stub() method that is added to every other object.
21
+
22
+ Scenario: RSpec::Mocks::setup(object) adds double, mock, and stub methods to the submitted object
23
+ Given a file named "foo.rb" with:
24
+ """ruby
25
+ require 'rspec/mocks'
26
+
27
+ class CodeExample
28
+ def init
29
+ RSpec::Mocks::setup(self)
30
+ end
31
+ end
32
+
33
+ example = CodeExample.new
34
+ example.init
35
+
36
+ puts example.respond_to?(:double)
37
+ puts example.respond_to?(:mock)
38
+ puts example.respond_to?(:stub)
39
+ """
40
+
41
+ When I run `ruby foo.rb`
42
+ Then the output should contain "true"
43
+ But the output should not contain "false"
44
+
45
+ Scenario: RSpec::Mocks::setup(anything) adds methods to Object
46
+ Given a file named "foo.rb" with:
47
+ """ruby
48
+ require 'rspec/mocks'
49
+
50
+ RSpec::Mocks::setup(Object.new)
51
+
52
+ obj = Object.new
53
+
54
+ puts obj.respond_to?(:should_receive)
55
+ puts obj.respond_to?(:should_not_receive)
56
+ puts obj.respond_to?(:stub)
57
+ """
58
+
59
+ When I run `ruby foo.rb`
60
+ Then the output should contain "true"
61
+ But the output should not contain "false"
62
+
@@ -0,0 +1,33 @@
1
+ Feature: standalone
2
+
3
+ require "rspec/mocks/standalone" to expose the mock framework
4
+ outside the RSpec environment. This is especially useful for
5
+ exploring rspec-mocks in irb.
6
+
7
+ Scenario: method stub outside rspec
8
+ Given a file named "example.rb" with:
9
+ """ruby
10
+ require "rspec/mocks/standalone"
11
+
12
+ greeter = double("greeter")
13
+ greeter.stub(:say_hi) { "Hello!" }
14
+ puts greeter.say_hi
15
+ """
16
+ When I run `ruby example.rb`
17
+ Then the output should contain "Hello!"
18
+
19
+ Scenario: message expectation outside rspec
20
+ Given a file named "example.rb" with:
21
+ """ruby
22
+ require "rspec/mocks/standalone"
23
+
24
+ greeter = double("greeter")
25
+ greeter.should_receive(:say_hi)
26
+
27
+ RSpec::Mocks.verify
28
+ """
29
+ When I run `ruby example.rb`
30
+ Then the output should contain "RSpec::Mocks::MockExpectationError"
31
+ And the output should contain "say_hi(any args)"
32
+ And the output should contain "expected: 1 time"
33
+ And the output should contain "received: 0 times"
@@ -0,0 +1,34 @@
1
+ Feature: Spy on a stubbed method on a partial mock
2
+
3
+ You can also use `have_received` to verify that a stubbed method was invoked
4
+ on a partial mock.
5
+
6
+ Scenario: verify a stubbed method
7
+ Given a file named "verified_spy_spec.rb" with:
8
+ """ruby
9
+ describe "have_received" do
10
+ it "passes when the expectation is met" do
11
+ invitation = Object.new
12
+ invitation.stub(:deliver => true)
13
+ invitation.deliver
14
+ invitation.should have_received(:deliver)
15
+ end
16
+ end
17
+ """
18
+ When I run `rspec verified_spy_spec.rb`
19
+ Then the examples should all pass
20
+
21
+ Scenario: fail to verify a stubbed method
22
+ Given a file named "failed_spy_spec.rb" with:
23
+ """ruby
24
+ describe "have_received" do
25
+ it "fails when the expectation is not met" do
26
+ invitation = Object.new
27
+ invitation.stub(:deliver => true)
28
+ invitation.should have_received(:deliver)
29
+ end
30
+ end
31
+ """
32
+ When I run `rspec failed_spy_spec.rb`
33
+ Then the output should contain "expected: 1 time"
34
+ And the output should contain "received: 0 times"
@@ -0,0 +1,76 @@
1
+ Feature: Spy on a stubbed method on a pure mock
2
+
3
+ You can use `have_received` to verify that a stubbed method was invoked,
4
+ rather than setting an expectation for it to be invoked beforehand.
5
+
6
+ Scenario: verify a stubbed method
7
+ Given a file named "verified_spy_spec.rb" with:
8
+ """ruby
9
+ describe "have_received" do
10
+ it "passes when the expectation is met" do
11
+ invitation = double('invitation', :deliver => true)
12
+ invitation.deliver
13
+ invitation.should have_received(:deliver)
14
+ end
15
+ end
16
+ """
17
+ When I run `rspec verified_spy_spec.rb`
18
+ Then the examples should all pass
19
+
20
+ Scenario: verify a stubbed method with message expectations
21
+ Given a file named "verified_message_expectations_spec.rb" with:
22
+ """ruby
23
+ describe "have_received" do
24
+ it "passes when the expectation is met" do
25
+ invitation = double('invitation', :deliver => true)
26
+ 2.times { invitation.deliver(:expected, :arguments) }
27
+ invitation.should have_received(:deliver).
28
+ with(:expected, :arguments).
29
+ twice
30
+ end
31
+ end
32
+ """
33
+ When I run `rspec verified_message_expectations_spec.rb`
34
+ Then the examples should all pass
35
+
36
+ Scenario: fail to verify a stubbed method
37
+ Given a file named "failed_spy_spec.rb" with:
38
+ """ruby
39
+ describe "have_received" do
40
+ it "fails when the expectation is not met" do
41
+ invitation = double('invitation', :deliver => true)
42
+ invitation.should have_received(:deliver)
43
+ end
44
+ end
45
+ """
46
+ When I run `rspec failed_spy_spec.rb`
47
+ Then the output should contain "expected: 1 time"
48
+ And the output should contain "received: 0 times"
49
+
50
+ Scenario: fail to verify message expectations
51
+ Given a file named "failed_message_expectations_spec.rb" with:
52
+ """ruby
53
+ describe "have_received" do
54
+ it "fails when the arguments are different" do
55
+ invitation = double('invitation', :deliver => true)
56
+ invitation.deliver(:unexpected)
57
+ invitation.should have_received(:deliver).with(:expected, :arguments)
58
+ end
59
+ end
60
+ """
61
+ When I run `rspec failed_message_expectations_spec.rb`
62
+ Then the output should contain "expected: (:expected, :arguments)"
63
+ And the output should contain "got: (:unexpected)"
64
+
65
+ Scenario: generate a spy message
66
+ Given a file named "spy_message_spec.rb" with:
67
+ """ruby
68
+ describe "have_received" do
69
+ subject(:invitation) { double('invitation', :deliver => true) }
70
+ before { invitation.deliver }
71
+
72
+ it { should have_received(:deliver) }
73
+ end
74
+ """
75
+ When I run `rspec --format documentation spy_message_spec.rb`
76
+ Then the output should contain "should have received deliver"
@@ -0,0 +1,18 @@
1
+ Feature: Spy on an unstubbed method
2
+
3
+ Using have_received on an unstubbed method will never pass, so rspec-mocks
4
+ issues a helpful error message.
5
+
6
+ Scenario: fail to verify a stubbed method
7
+ Given a file named "failed_spy_spec.rb" with:
8
+ """ruby
9
+ describe "have_received" do
10
+ it "raises a helpful error for unstubbed methods" do
11
+ object = Object.new
12
+ object.object_id
13
+ object.should have_received(:object_id)
14
+ end
15
+ end
16
+ """
17
+ When I run `rspec failed_spy_spec.rb`
18
+ Then the output should contain "that method has not been stubbed"
@@ -0,0 +1,11 @@
1
+ Then /^the example(?:s)? should(?: all)? pass$/ do
2
+ step %q{the output should contain "0 failures"}
3
+ step %q{the exit status should be 0}
4
+ end
5
+
6
+ # Useful for when the output is slightly different on different versions of ruby
7
+ Then /^the output should contain "([^"]*)" or "([^"]*)"$/ do |string1, string2|
8
+ unless [string1, string2].any? { |s| all_output =~ regexp(s) }
9
+ fail %Q{Neither "#{string1}" or "#{string2}" were found in:\n#{all_output}}
10
+ end
11
+ end
@@ -0,0 +1,13 @@
1
+ require 'aruba/cucumber'
2
+ require 'rspec/expectations'
3
+
4
+ Before do
5
+ RUBY_PLATFORM =~ /java/ ? @aruba_timeout_seconds = 60 : @aruba_timeout_seconds = 5
6
+ end
7
+
8
+ Aruba.configure do |config|
9
+ config.before_cmd do |cmd|
10
+ set_env('JRUBY_OPTS', "-X-C #{ENV['JRUBY_OPTS']}") # disable JIT since these processes are so short lived
11
+ end
12
+ end if RUBY_PLATFORM == 'java'
13
+
@@ -0,0 +1,6 @@
1
+ # Required until https://github.com/rubinius/rubinius/issues/2430 is resolved
2
+ ENV['RBXOPT'] = "#{ENV["RBXOPT"]} -Xcompiler.no_rbc"
3
+
4
+ Around "@unsupported-on-rbx" do |scenario, block|
5
+ block.call unless defined?(Rubinius)
6
+ end
@@ -0,0 +1,43 @@
1
+ Feature: Test::Unit integration
2
+
3
+ rspec-mocks is a stand-alone gem that can be used without the rest of
4
+ RSpec. If you like the way Test::Unit (or MiniTest) organizes tests, but
5
+ prefer RSpec's approach to mocking/stubbing/doubles etc, you can have both.
6
+
7
+ The one downside is that failures are reported as errors with MiniTest.
8
+
9
+ Scenario: use rspec/mocks with Test::Unit
10
+ Given a file named "rspec_mocks_test.rb" with:
11
+ """ruby
12
+ require 'test/unit'
13
+ require 'rspec/mocks'
14
+
15
+ class RSpecMocksTest < Test::Unit::TestCase
16
+ def setup
17
+ RSpec::Mocks.setup(Object)
18
+ RSpec::Mocks.setup(self)
19
+ end
20
+
21
+ def test_passing_expectation
22
+ obj = Object.new
23
+ expect(obj).to receive(:message)
24
+ obj.message
25
+ end
26
+
27
+ def test_failing_expectation
28
+ obj = Object.new
29
+ expect(obj).to_not receive(:message)
30
+ obj.message
31
+ end
32
+
33
+ def test_with_deprecation_warning
34
+ obj = Object.new
35
+ obj.stub(:old_message) { RSpec.deprecate(:old_message, :replacement => :message) }
36
+ obj.old_message
37
+ end
38
+ end
39
+ """
40
+ When I run `ruby rspec_mocks_test.rb`
41
+ Then the output should contain "3 tests, 0 assertions, 0 failures, 1 errors" or "3 tests, 0 assertions, 1 failures, 0 errors"
42
+ And the output should contain "expected: 0 times with any arguments"
43
+ And the output should contain "old_message is deprecated. Use message instead."
@@ -0,0 +1,94 @@
1
+ module RSpec
2
+ module Mocks
3
+ module AnyInstance
4
+ class Chain
5
+ def initialize(recorder, *args, &block)
6
+ @recorder = recorder
7
+ @expectation_args = args
8
+ @expectation_block = block
9
+ end
10
+
11
+ module Customizations
12
+ # @macro [attach] record
13
+ # @method $1(*args, &block)
14
+ # Records the `$1` message for playback against an instance that
15
+ # invokes a method stubbed or mocked using `any_instance`.
16
+ #
17
+ # @see RSpec::Mocks::MessageExpectation#$1
18
+ #
19
+ def self.record(method_name)
20
+ class_eval(<<-EOM, __FILE__, __LINE__ + 1)
21
+ def #{method_name}(*args, &block)
22
+ record(:#{method_name}, *args, &block)
23
+ end
24
+ EOM
25
+ end
26
+
27
+ record :and_return
28
+ record :and_raise
29
+ record :and_throw
30
+ record :and_yield
31
+ record :and_call_original
32
+ record :with
33
+ record :once
34
+ record :twice
35
+ record :any_number_of_times
36
+ record :exactly
37
+ record :times
38
+ record :never
39
+ record :at_least
40
+ record :at_most
41
+ end
42
+
43
+ include Customizations
44
+
45
+ # @private
46
+ def playback!(instance)
47
+ message_expectation = create_message_expectation_on(instance)
48
+ messages.inject(message_expectation) do |object, message|
49
+ object.__send__(*message.first, &message.last)
50
+ end
51
+ end
52
+
53
+ # @private
54
+ def constrained_to_any_of?(*constraints)
55
+ constraints.any? do |constraint|
56
+ messages.any? do |message|
57
+ message.first.first == constraint
58
+ end
59
+ end
60
+ end
61
+
62
+ # @private
63
+ def expectation_fulfilled!
64
+ @expectation_fulfilled = true
65
+ end
66
+
67
+ def never
68
+ ErrorGenerator.raise_double_negation_error("expect_any_instance_of(MyClass)") if negated?
69
+ super
70
+ end
71
+
72
+ private
73
+
74
+ def negated?
75
+ messages.any? { |(message, *_), _| message.to_sym == :never }
76
+ end
77
+
78
+ def messages
79
+ @messages ||= []
80
+ end
81
+
82
+ def last_message
83
+ messages.last.first.first unless messages.empty?
84
+ end
85
+
86
+ def record(rspec_method_name, *args, &block)
87
+ verify_invocation_order(rspec_method_name, *args, &block)
88
+ messages << [args.unshift(rspec_method_name), block]
89
+ self
90
+ end
91
+ end
92
+ end
93
+ end
94
+ end
@@ -0,0 +1,42 @@
1
+ module RSpec
2
+ module Mocks
3
+ module AnyInstance
4
+ # @api private
5
+ class ExpectationChain < Chain
6
+ def expectation_fulfilled?
7
+ @expectation_fulfilled || constrained_to_any_of?(:never, :any_number_of_times)
8
+ end
9
+
10
+ def initialize(*args, &block)
11
+ @expectation_fulfilled = false
12
+ super
13
+ end
14
+
15
+ private
16
+ def verify_invocation_order(rspec_method_name, *args, &block)
17
+ end
18
+ end
19
+
20
+ # @api private
21
+ class PositiveExpectationChain < ExpectationChain
22
+
23
+ private
24
+
25
+ def create_message_expectation_on(instance)
26
+ proxy = ::RSpec::Mocks.proxy_for(instance)
27
+ expected_from = IGNORED_BACKTRACE_LINE
28
+ proxy.add_message_expectation(expected_from, *@expectation_args, &@expectation_block)
29
+ end
30
+
31
+ def invocation_order
32
+ @invocation_order ||= {
33
+ :with => [nil],
34
+ :and_return => [:with, nil],
35
+ :and_raise => [:with, nil]
36
+ }
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
42
+
@@ -0,0 +1,60 @@
1
+ module RSpec
2
+ module Mocks
3
+ module AnyInstance
4
+ # @private
5
+ class MessageChains < Hash
6
+ def initialize
7
+ super {|h,k| h[k] = []}
8
+ end
9
+
10
+ # @private
11
+ def add(method_name, chain)
12
+ self[method_name] << chain
13
+ chain
14
+ end
15
+
16
+ # @private
17
+ def remove_stub_chains_for!(method_name)
18
+ self[method_name].reject! {|chain| chain.is_a?(StubChain)}
19
+ end
20
+
21
+ # @private
22
+ def has_expectation?(method_name)
23
+ self[method_name].find {|chain| chain.is_a?(ExpectationChain)}
24
+ end
25
+
26
+ # @private
27
+ def all_expectations_fulfilled?
28
+ all? {|method_name, chains| chains.all? {|chain| chain.expectation_fulfilled?}}
29
+ end
30
+
31
+ # @private
32
+ def unfulfilled_expectations
33
+ map do |method_name, chains|
34
+ method_name.to_s if chains.last.is_a?(ExpectationChain) unless chains.last.expectation_fulfilled?
35
+ end.compact
36
+ end
37
+
38
+ # @private
39
+ def received_expected_message!(method_name)
40
+ self[method_name].each {|chain| chain.expectation_fulfilled!}
41
+ end
42
+
43
+ # @private
44
+ def playback!(instance, method_name)
45
+ raise_if_second_instance_to_receive_message(instance)
46
+ self[method_name].each {|chain| chain.playback!(instance)}
47
+ end
48
+
49
+ private
50
+
51
+ def raise_if_second_instance_to_receive_message(instance)
52
+ @instance_with_expectation ||= instance if instance.is_a?(ExpectationChain)
53
+ if instance.is_a?(ExpectationChain) && !@instance_with_expectation.equal?(instance)
54
+ raise RSpec::Mocks::MockExpectationError, "Exactly one instance should have received the following message(s) but didn't: #{unfulfilled_expectations.sort.join(', ')}"
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end