tuktuk-rails 0.0.6 → 0.0.7

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 (531) hide show
  1. checksums.yaml +4 -4
  2. data/lib/tasks/tuktuk_tasks.rake +0 -1
  3. data/lib/tuktuk/version.rb +1 -1
  4. data/{app → vendor}/assets/javascripts/index.js +0 -0
  5. data/{app → vendor}/assets/javascripts/tuktuk/tuktuk.js +0 -0
  6. data/{app → vendor}/assets/stylesheets/index.css +0 -0
  7. data/{app → vendor}/assets/stylesheets/tuktuk/tuktuk.css +0 -0
  8. data/{app → vendor}/assets/stylesheets/tuktuk/tuktuk.icons.css +0 -0
  9. data/{app → vendor}/assets/stylesheets/tuktuk/tuktuk.theme.css +0 -0
  10. data/vendor/bundle/ruby/2.0.0/bin/autospec +23 -0
  11. data/vendor/bundle/ruby/2.0.0/bin/htmldiff +25 -0
  12. data/vendor/bundle/ruby/2.0.0/bin/ldiff +25 -0
  13. data/vendor/bundle/ruby/2.0.0/bin/rspec +23 -0
  14. data/vendor/bundle/ruby/2.0.0/build_info/diff-lcs-1.2.5.info +1 -0
  15. data/vendor/bundle/ruby/2.0.0/build_info/rspec-2.14.1.info +1 -0
  16. data/vendor/bundle/ruby/2.0.0/build_info/rspec-core-2.14.7.info +1 -0
  17. data/vendor/bundle/ruby/2.0.0/build_info/rspec-expectations-2.14.4.info +1 -0
  18. data/vendor/bundle/ruby/2.0.0/build_info/rspec-mocks-2.14.4.info +1 -0
  19. data/vendor/bundle/ruby/2.0.0/cache/diff-lcs-1.2.5.gem +0 -0
  20. data/vendor/bundle/ruby/2.0.0/cache/rspec-2.14.1.gem +0 -0
  21. data/vendor/bundle/ruby/2.0.0/cache/rspec-core-2.14.7.gem +0 -0
  22. data/vendor/bundle/ruby/2.0.0/cache/rspec-expectations-2.14.4.gem +0 -0
  23. data/vendor/bundle/ruby/2.0.0/cache/rspec-mocks-2.14.4.gem +0 -0
  24. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/Contributing.rdoc +64 -0
  25. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/Gemfile +20 -0
  26. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/History.rdoc +152 -0
  27. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/License.rdoc +39 -0
  28. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/Manifest.txt +38 -0
  29. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/README.rdoc +85 -0
  30. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/Rakefile +41 -0
  31. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/autotest/discover.rb +1 -0
  32. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/bin/htmldiff +32 -0
  33. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/bin/ldiff +6 -0
  34. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/docs/COPYING.txt +339 -0
  35. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/docs/artistic.txt +127 -0
  36. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff-lcs.rb +3 -0
  37. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff/lcs.rb +805 -0
  38. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff/lcs/array.rb +7 -0
  39. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff/lcs/block.rb +37 -0
  40. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff/lcs/callbacks.rb +322 -0
  41. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff/lcs/change.rb +177 -0
  42. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff/lcs/htmldiff.rb +149 -0
  43. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff/lcs/hunk.rb +276 -0
  44. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff/lcs/internals.rb +301 -0
  45. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff/lcs/ldiff.rb +195 -0
  46. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/lib/diff/lcs/string.rb +5 -0
  47. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/change_spec.rb +65 -0
  48. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/diff_spec.rb +47 -0
  49. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/hunk_spec.rb +72 -0
  50. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/issues_spec.rb +24 -0
  51. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/lcs_spec.rb +54 -0
  52. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/patch_spec.rb +414 -0
  53. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/sdiff_spec.rb +214 -0
  54. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/spec_helper.rb +290 -0
  55. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/traverse_balanced_spec.rb +310 -0
  56. data/vendor/bundle/ruby/2.0.0/gems/diff-lcs-1.2.5/spec/traverse_sequences_spec.rb +139 -0
  57. data/vendor/bundle/ruby/2.0.0/gems/rspec-2.14.1/License.txt +24 -0
  58. data/vendor/bundle/ruby/2.0.0/gems/rspec-2.14.1/README.md +47 -0
  59. data/vendor/bundle/ruby/2.0.0/gems/rspec-2.14.1/lib/rspec.rb +3 -0
  60. data/vendor/bundle/ruby/2.0.0/gems/rspec-2.14.1/lib/rspec/version.rb +5 -0
  61. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/Changelog.md +904 -0
  62. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/License.txt +24 -0
  63. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/README.md +261 -0
  64. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/exe/autospec +13 -0
  65. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/exe/rspec +25 -0
  66. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/Autotest.md +38 -0
  67. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/README.md +17 -0
  68. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/Upgrade.md +364 -0
  69. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/README.md +28 -0
  70. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/example_name_option.feature +97 -0
  71. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/exit_status.feature +82 -0
  72. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/format_option.feature +75 -0
  73. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/init.feature +18 -0
  74. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/line_number_appended_to_path.feature +140 -0
  75. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/line_number_option.feature +58 -0
  76. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/order.feature +29 -0
  77. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/pattern_option.feature +49 -0
  78. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/rake_task.feature +122 -0
  79. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/require_option.feature +43 -0
  80. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/ruby.feature +22 -0
  81. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/tag.feature +98 -0
  82. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/command_line/warnings_option.feature +29 -0
  83. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/alias_example_to.feature +48 -0
  84. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/backtrace_clean_patterns.feature +102 -0
  85. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/custom_settings.feature +84 -0
  86. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/default_path.feature +38 -0
  87. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/deprecation_stream.feature +58 -0
  88. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/fail_fast.feature +77 -0
  89. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/failure_exit_code.feature +36 -0
  90. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/order_and_seed.feature +3 -0
  91. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/output_stream.feature +24 -0
  92. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/pattern.feature +38 -0
  93. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/profile.feature +220 -0
  94. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/read_options_from_file.feature +90 -0
  95. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/run_all_when_everything_filtered.feature +76 -0
  96. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/show_failures_in_pending_blocks.feature +61 -0
  97. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/configuration/treat_symbols_as_metadata_keys_with_true_values.feature +52 -0
  98. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/example_groups/basic_structure.feature +55 -0
  99. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/example_groups/shared_context.feature +74 -0
  100. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/example_groups/shared_examples.feature +294 -0
  101. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/expectation_framework_integration/configure_expectation_framework.feature +102 -0
  102. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/filtering/exclusion_filters.feature +138 -0
  103. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/filtering/if_and_unless.feature +168 -0
  104. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/filtering/inclusion_filters.feature +105 -0
  105. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/formatters/configurable_colors.feature +31 -0
  106. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/formatters/custom_formatter.feature +36 -0
  107. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/formatters/json_formatter.feature +30 -0
  108. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/formatters/text_formatter.feature +46 -0
  109. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/helper_methods/arbitrary_methods.feature +40 -0
  110. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/helper_methods/let.feature +50 -0
  111. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/helper_methods/modules.feature +149 -0
  112. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/hooks/around_hooks.feature +343 -0
  113. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/hooks/before_and_after_hooks.feature +427 -0
  114. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/hooks/filtering.feature +234 -0
  115. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/metadata/current_example.feature +17 -0
  116. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/metadata/described_class.feature +17 -0
  117. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/metadata/user_defined.feature +113 -0
  118. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/mock_framework_integration/use_any_framework.feature +106 -0
  119. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/mock_framework_integration/use_flexmock.feature +96 -0
  120. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/mock_framework_integration/use_mocha.feature +97 -0
  121. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/mock_framework_integration/use_rr.feature +98 -0
  122. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/mock_framework_integration/use_rspec.feature +97 -0
  123. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/pending/pending_examples.feature +229 -0
  124. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/spec_files/arbitrary_file_suffix.feature +13 -0
  125. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/step_definitions/additional_cli_steps.rb +49 -0
  126. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/subject/attribute_of_subject.feature +124 -0
  127. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/subject/explicit_subject.feature +101 -0
  128. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/subject/implicit_receiver.feature +29 -0
  129. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/subject/implicit_subject.feature +63 -0
  130. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/support/env.rb +14 -0
  131. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/features/support/rubinius.rb +6 -0
  132. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/autotest/discover.rb +1 -0
  133. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/autotest/rspec2.rb +73 -0
  134. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/autorun.rb +2 -0
  135. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core.rb +169 -0
  136. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/backtrace_cleaner.rb +46 -0
  137. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/backward_compatibility.rb +55 -0
  138. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/command_line.rb +36 -0
  139. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/configuration.rb +1174 -0
  140. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/configuration_options.rb +156 -0
  141. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/deprecation.rb +31 -0
  142. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/drb_command_line.rb +26 -0
  143. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/drb_options.rb +87 -0
  144. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/dsl.rb +26 -0
  145. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/example.rb +325 -0
  146. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/example_group.rb +479 -0
  147. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/extensions/instance_eval_with_args.rb +44 -0
  148. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/extensions/kernel.rb +9 -0
  149. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/extensions/module_eval_with_args.rb +38 -0
  150. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/extensions/ordered.rb +27 -0
  151. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/filter_manager.rb +203 -0
  152. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters.rb +55 -0
  153. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/base_formatter.rb +246 -0
  154. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/base_text_formatter.rb +329 -0
  155. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/deprecation_formatter.rb +39 -0
  156. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/documentation_formatter.rb +67 -0
  157. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/helpers.rb +110 -0
  158. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/html_formatter.rb +155 -0
  159. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/html_printer.rb +408 -0
  160. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/json_formatter.rb +70 -0
  161. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/progress_formatter.rb +32 -0
  162. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/snippet_extractor.rb +92 -0
  163. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/formatters/text_mate_formatter.rb +34 -0
  164. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/hooks.rb +519 -0
  165. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/memoized_helpers.rb +514 -0
  166. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/metadata.rb +299 -0
  167. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/metadata_hash_builder.rb +97 -0
  168. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/mocking/with_absolutely_nothing.rb +11 -0
  169. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/mocking/with_flexmock.rb +27 -0
  170. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/mocking/with_mocha.rb +52 -0
  171. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/mocking/with_rr.rb +27 -0
  172. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/mocking/with_rspec.rb +27 -0
  173. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/option_parser.rb +219 -0
  174. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/pending.rb +113 -0
  175. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/project_initializer.rb +86 -0
  176. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/rake_task.rb +206 -0
  177. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/reporter.rb +132 -0
  178. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/ruby_project.rb +44 -0
  179. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/runner.rb +87 -0
  180. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/shared_context.rb +55 -0
  181. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/shared_example_group.rb +185 -0
  182. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/shared_example_group/collection.rb +43 -0
  183. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/version.rb +8 -0
  184. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/lib/rspec/core/world.rb +127 -0
  185. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/autotest/discover_spec.rb +19 -0
  186. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/autotest/failed_results_re_spec.rb +45 -0
  187. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/autotest/rspec_spec.rb +133 -0
  188. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/command_line/order_spec.rb +204 -0
  189. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/backtrace_cleaner_spec.rb +68 -0
  190. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/command_line_spec.rb +108 -0
  191. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/command_line_spec_output.txt +0 -0
  192. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/configuration_options_spec.rb +417 -0
  193. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/configuration_spec.rb +1561 -0
  194. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/deprecation_spec.rb +46 -0
  195. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/deprecations_spec.rb +73 -0
  196. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/drb_command_line_spec.rb +102 -0
  197. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/drb_options_spec.rb +193 -0
  198. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/dsl_spec.rb +25 -0
  199. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/example_group_spec.rb +1187 -0
  200. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/example_spec.rb +465 -0
  201. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/filter_manager_spec.rb +246 -0
  202. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/base_formatter_spec.rb +108 -0
  203. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/base_text_formatter_spec.rb +494 -0
  204. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/deprecation_formatter_spec.rb +96 -0
  205. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/documentation_formatter_spec.rb +88 -0
  206. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/helpers_spec.rb +104 -0
  207. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.8.7-jruby.html +404 -0
  208. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.8.7-rbx.html +477 -0
  209. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.8.7.html +414 -0
  210. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.9.2.html +425 -0
  211. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.9.3-jruby.html +404 -0
  212. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.9.3-rbx.html +477 -0
  213. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-1.9.3.html +425 -0
  214. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatted-2.0.0.html +425 -0
  215. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/html_formatter_spec.rb +110 -0
  216. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/json_formatter_spec.rb +115 -0
  217. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/progress_formatter_spec.rb +30 -0
  218. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/snippet_extractor_spec.rb +26 -0
  219. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.8.7-jruby.html +395 -0
  220. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.8.7-rbx.html +477 -0
  221. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.8.7.html +414 -0
  222. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.9.2.html +425 -0
  223. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.9.3-jruby.html +404 -0
  224. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.9.3-rbx.html +477 -0
  225. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-1.9.3.html +425 -0
  226. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatted-2.0.0.html +425 -0
  227. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/formatters/text_mate_formatter_spec.rb +96 -0
  228. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/hooks_filtering_spec.rb +227 -0
  229. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/hooks_spec.rb +267 -0
  230. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/kernel_extensions_spec.rb +9 -0
  231. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/memoized_helpers_spec.rb +688 -0
  232. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/metadata_spec.rb +491 -0
  233. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/option_parser_spec.rb +242 -0
  234. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/pending_example_spec.rb +220 -0
  235. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/project_initializer_spec.rb +130 -0
  236. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/rake_task_spec.rb +181 -0
  237. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/reporter_spec.rb +141 -0
  238. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/resources/a_bar.rb +0 -0
  239. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/resources/a_foo.rb +0 -0
  240. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/resources/a_spec.rb +1 -0
  241. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/resources/custom_example_group_runner.rb +14 -0
  242. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/resources/formatter_specs.rb +60 -0
  243. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/resources/utf8_encoded.rb +8 -0
  244. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/rspec_matchers_spec.rb +45 -0
  245. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/ruby_project_spec.rb +26 -0
  246. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/runner_spec.rb +82 -0
  247. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/shared_context_spec.rb +114 -0
  248. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/shared_example_group/collection_spec.rb +70 -0
  249. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/shared_example_group_spec.rb +120 -0
  250. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core/world_spec.rb +142 -0
  251. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/rspec/core_spec.rb +74 -0
  252. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/spec_helper.rb +132 -0
  253. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/config_options_helper.rb +15 -0
  254. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/helper_methods.rb +36 -0
  255. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/in_sub_process.rb +37 -0
  256. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/isolate_load_path_mutation.rb +6 -0
  257. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/isolated_directory.rb +10 -0
  258. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/isolated_home_directory.rb +16 -0
  259. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/matchers.rb +65 -0
  260. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/mathn_integration_support.rb +12 -0
  261. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/sandboxed_mock_space.rb +100 -0
  262. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/shared_example_groups.rb +41 -0
  263. data/vendor/bundle/ruby/2.0.0/gems/rspec-core-2.14.7/spec/support/spec_files.rb +44 -0
  264. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/Changelog.md +419 -0
  265. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/License.txt +23 -0
  266. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/README.md +184 -0
  267. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/README.md +48 -0
  268. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/Upgrade.md +53 -0
  269. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/README.md +90 -0
  270. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/be.feature +175 -0
  271. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/be_within.feature +48 -0
  272. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/cover.feature +47 -0
  273. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/end_with.feature +48 -0
  274. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/equality.feature +139 -0
  275. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/exist.feature +45 -0
  276. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/expect_change.feature +59 -0
  277. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/expect_error.feature +144 -0
  278. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/have.feature +109 -0
  279. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/include.feature +174 -0
  280. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/match.feature +52 -0
  281. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/operators.feature +227 -0
  282. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/predicates.feature +137 -0
  283. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/respond_to.feature +84 -0
  284. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/satisfy.feature +33 -0
  285. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/start_with.feature +48 -0
  286. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/throw_symbol.feature +91 -0
  287. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/types.feature +116 -0
  288. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/built_in_matchers/yield.feature +161 -0
  289. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/custom_matchers/access_running_example.feature +53 -0
  290. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/custom_matchers/define_diffable_matcher.feature +27 -0
  291. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/custom_matchers/define_matcher.feature +368 -0
  292. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/custom_matchers/define_matcher_outside_rspec.feature +38 -0
  293. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/custom_matchers/define_matcher_with_fluent_interface.feature +24 -0
  294. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/customized_message.feature +22 -0
  295. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/diffing.feature +85 -0
  296. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/implicit_docstrings.feature +52 -0
  297. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/step_definitions/additional_cli_steps.rb +22 -0
  298. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/support/env.rb +14 -0
  299. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/support/rubinius.rb +6 -0
  300. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/syntax_configuration.feature +71 -0
  301. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/features/test_frameworks/test_unit.feature +44 -0
  302. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec-expectations.rb +1 -0
  303. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations.rb +73 -0
  304. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/deprecation.rb +31 -0
  305. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/differ.rb +154 -0
  306. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/errors.rb +9 -0
  307. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/expectation_target.rb +87 -0
  308. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/extensions.rb +2 -0
  309. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/extensions/array.rb +9 -0
  310. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/extensions/object.rb +29 -0
  311. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/fail_with.rb +79 -0
  312. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/handler.rb +68 -0
  313. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/syntax.rb +164 -0
  314. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/expectations/version.rb +9 -0
  315. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers.rb +694 -0
  316. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/be_close.rb +9 -0
  317. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in.rb +39 -0
  318. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/base_matcher.rb +68 -0
  319. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/be.rb +197 -0
  320. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/be_instance_of.rb +15 -0
  321. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/be_kind_of.rb +11 -0
  322. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/be_within.rb +55 -0
  323. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/change.rb +141 -0
  324. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/cover.rb +21 -0
  325. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/eq.rb +22 -0
  326. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/eql.rb +23 -0
  327. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/equal.rb +48 -0
  328. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/exist.rb +26 -0
  329. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/has.rb +48 -0
  330. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/have.rb +124 -0
  331. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/include.rb +61 -0
  332. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/match.rb +17 -0
  333. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/match_array.rb +51 -0
  334. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/raise_error.rb +127 -0
  335. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/respond_to.rb +74 -0
  336. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/satisfy.rb +30 -0
  337. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/start_and_end_with.rb +48 -0
  338. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/throw_symbol.rb +94 -0
  339. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/built_in/yield.rb +296 -0
  340. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/compatibility.rb +14 -0
  341. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/configuration.rb +108 -0
  342. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/dsl.rb +24 -0
  343. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/extensions/instance_eval_with_args.rb +39 -0
  344. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/generated_descriptions.rb +35 -0
  345. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/matcher.rb +300 -0
  346. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/method_missing.rb +12 -0
  347. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/operator_matcher.rb +113 -0
  348. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/pretty.rb +70 -0
  349. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/lib/rspec/matchers/test_unit_integration.rb +11 -0
  350. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/expectations/differ_spec.rb +229 -0
  351. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/expectations/expectation_target_spec.rb +82 -0
  352. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/expectations/extensions/kernel_spec.rb +67 -0
  353. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/expectations/fail_with_spec.rb +114 -0
  354. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/expectations/handler_spec.rb +227 -0
  355. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/expectations/syntax_spec.rb +139 -0
  356. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/expectations_spec.rb +50 -0
  357. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/base_matcher_spec.rb +62 -0
  358. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/be_close_spec.rb +22 -0
  359. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/be_instance_of_spec.rb +63 -0
  360. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/be_kind_of_spec.rb +41 -0
  361. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/be_spec.rb +522 -0
  362. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/be_within_spec.rb +137 -0
  363. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/change_spec.rb +567 -0
  364. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/configuration_spec.rb +206 -0
  365. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/cover_spec.rb +69 -0
  366. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/description_generation_spec.rb +190 -0
  367. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/dsl_spec.rb +57 -0
  368. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/eq_spec.rb +60 -0
  369. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/eql_spec.rb +41 -0
  370. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/equal_spec.rb +78 -0
  371. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/exist_spec.rb +124 -0
  372. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/has_spec.rb +122 -0
  373. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/have_spec.rb +455 -0
  374. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/include_matcher_integration_spec.rb +30 -0
  375. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/include_spec.rb +531 -0
  376. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/match_array_spec.rb +194 -0
  377. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/match_spec.rb +74 -0
  378. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/matcher_spec.rb +471 -0
  379. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/matchers_spec.rb +37 -0
  380. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/method_missing_spec.rb +28 -0
  381. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/operator_matcher_spec.rb +252 -0
  382. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/raise_error_spec.rb +535 -0
  383. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/respond_to_spec.rb +292 -0
  384. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/satisfy_spec.rb +44 -0
  385. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/start_with_end_with_spec.rb +186 -0
  386. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/throw_symbol_spec.rb +116 -0
  387. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/rspec/matchers/yield_spec.rb +514 -0
  388. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/spec_helper.rb +54 -0
  389. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/support/classes.rb +56 -0
  390. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/support/in_sub_process.rb +38 -0
  391. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/support/matchers.rb +22 -0
  392. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/support/ruby_version.rb +10 -0
  393. data/vendor/bundle/ruby/2.0.0/gems/rspec-expectations-2.14.4/spec/support/shared_examples.rb +13 -0
  394. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/Changelog.md +420 -0
  395. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/License.txt +23 -0
  396. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/README.md +315 -0
  397. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/README.md +67 -0
  398. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/Scope.md +17 -0
  399. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/Upgrade.md +22 -0
  400. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/argument_matchers/README.md +27 -0
  401. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/argument_matchers/explicit.feature +59 -0
  402. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/argument_matchers/general_matchers.feature +85 -0
  403. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/argument_matchers/type_matchers.feature +26 -0
  404. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/message_expectations/README.md +73 -0
  405. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/message_expectations/allow_any_instance_of.feature +26 -0
  406. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/message_expectations/any_instance.feature +21 -0
  407. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/message_expectations/block_local_expectations.feature.pending +55 -0
  408. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/message_expectations/call_original.feature +24 -0
  409. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/message_expectations/expect_any_instance_of.feature +27 -0
  410. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/message_expectations/expect_message_using_expect.feature +107 -0
  411. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/message_expectations/expect_message_using_should_receive.feature +118 -0
  412. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/message_expectations/receive_counts.feature +209 -0
  413. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/message_expectations/warn_when_expectation_is_set_on_nil.feature +50 -0
  414. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/method_stubs/README.md +73 -0
  415. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/method_stubs/any_instance.feature +136 -0
  416. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/method_stubs/as_null_object.feature +40 -0
  417. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/method_stubs/simple_return_value_with_allow.feature +44 -0
  418. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/method_stubs/simple_return_value_with_stub.feature +64 -0
  419. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/method_stubs/stub_chain.feature +51 -0
  420. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/method_stubs/stub_implementation.feature +48 -0
  421. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/method_stubs/to_ary.feature +51 -0
  422. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/mutating_constants/README.md +82 -0
  423. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/mutating_constants/hiding_defined_constant.feature +64 -0
  424. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/mutating_constants/stub_defined_constant.feature +79 -0
  425. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/mutating_constants/stub_undefined_constant.feature +50 -0
  426. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/outside_rspec/configuration.feature +62 -0
  427. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/outside_rspec/standalone.feature +33 -0
  428. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/spies/spy_partial_mock_method.feature +34 -0
  429. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/spies/spy_pure_mock_method.feature +76 -0
  430. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/spies/spy_unstubbed_method.feature +18 -0
  431. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/step_definitions/additional_cli_steps.rb +11 -0
  432. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/support/env.rb +13 -0
  433. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/support/rubinius.rb +6 -0
  434. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/features/test_frameworks/test_unit.feature +43 -0
  435. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks.rb +96 -0
  436. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/chain.rb +94 -0
  437. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/expectation_chain.rb +42 -0
  438. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/message_chains.rb +60 -0
  439. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/recorder.rb +211 -0
  440. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/stub_chain.rb +40 -0
  441. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/any_instance/stub_chain_chain.rb +23 -0
  442. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/argument_list_matcher.rb +97 -0
  443. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/argument_matchers.rb +238 -0
  444. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/configuration.rb +55 -0
  445. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/deprecation.rb +18 -0
  446. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/error_generator.rb +179 -0
  447. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/errors.rb +12 -0
  448. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/example_methods.rb +156 -0
  449. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/extensions/instance_exec.rb +34 -0
  450. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/extensions/marshal.rb +17 -0
  451. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/framework.rb +34 -0
  452. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/instance_method_stasher.rb +94 -0
  453. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/matchers/have_received.rb +93 -0
  454. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/matchers/receive.rb +97 -0
  455. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/message_expectation.rb +583 -0
  456. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/method_double.rb +271 -0
  457. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/mock.rb +7 -0
  458. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/mutate_const.rb +403 -0
  459. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/order_group.rb +40 -0
  460. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/proxy.rb +223 -0
  461. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/proxy_for_nil.rb +37 -0
  462. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/space.rb +91 -0
  463. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/standalone.rb +3 -0
  464. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/stub_chain.rb +51 -0
  465. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/syntax.rb +349 -0
  466. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/targets.rb +69 -0
  467. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/test_double.rb +135 -0
  468. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/rspec/mocks/version.rb +7 -0
  469. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/lib/spec/mocks.rb +4 -0
  470. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/and_call_original_spec.rb +243 -0
  471. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/and_yield_spec.rb +127 -0
  472. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/any_instance/message_chains_spec.rb +41 -0
  473. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/any_instance_spec.rb +987 -0
  474. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/any_number_of_times_spec.rb +36 -0
  475. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/argument_expectation_spec.rb +32 -0
  476. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/at_least_spec.rb +151 -0
  477. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/at_most_spec.rb +90 -0
  478. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/block_return_value_spec.rb +88 -0
  479. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_10260_spec.rb +8 -0
  480. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_10263_spec.rb +27 -0
  481. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_11545_spec.rb +32 -0
  482. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_496_spec.rb +17 -0
  483. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_600_spec.rb +22 -0
  484. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_7611_spec.rb +16 -0
  485. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_8165_spec.rb +31 -0
  486. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_830_spec.rb +21 -0
  487. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/bug_report_957_spec.rb +22 -0
  488. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/combining_implementation_instructions_spec.rb +205 -0
  489. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/configuration_spec.rb +150 -0
  490. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/double_spec.rb +24 -0
  491. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/extensions/marshal_spec.rb +54 -0
  492. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/failing_argument_matchers_spec.rb +110 -0
  493. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/hash_excluding_matcher_spec.rb +67 -0
  494. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/hash_including_matcher_spec.rb +90 -0
  495. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/instance_method_stasher_spec.rb +58 -0
  496. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/matchers/have_received_spec.rb +266 -0
  497. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/matchers/receive_spec.rb +336 -0
  498. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/methods_spec.rb +27 -0
  499. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/mock_ordering_spec.rb +103 -0
  500. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/mock_space_spec.rb +113 -0
  501. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/mock_spec.rb +798 -0
  502. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/multiple_return_value_spec.rb +132 -0
  503. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/mutate_const_spec.rb +501 -0
  504. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/nil_expectation_warning_spec.rb +68 -0
  505. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/null_object_mock_spec.rb +123 -0
  506. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/once_counts_spec.rb +52 -0
  507. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/options_hash_spec.rb +35 -0
  508. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/partial_mock_spec.rb +205 -0
  509. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/partial_mock_using_mocks_directly_spec.rb +95 -0
  510. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/passing_argument_matchers_spec.rb +142 -0
  511. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/precise_counts_spec.rb +68 -0
  512. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/record_messages_spec.rb +26 -0
  513. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/serialization_spec.rb +89 -0
  514. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/space_spec.rb +32 -0
  515. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/stash_spec.rb +46 -0
  516. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/stub_chain_spec.rb +154 -0
  517. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/stub_implementation_spec.rb +81 -0
  518. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/stub_spec.rb +353 -0
  519. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/stubbed_message_expectations_spec.rb +58 -0
  520. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/syntax_agnostic_message_matchers_spec.rb +81 -0
  521. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/test_double_spec.rb +67 -0
  522. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/to_ary_spec.rb +54 -0
  523. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks/twice_counts_spec.rb +66 -0
  524. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/rspec/mocks_spec.rb +65 -0
  525. data/vendor/bundle/ruby/2.0.0/gems/rspec-mocks-2.14.4/spec/spec_helper.rb +60 -0
  526. data/vendor/bundle/ruby/2.0.0/specifications/diff-lcs-1.2.5.gemspec +65 -0
  527. data/vendor/bundle/ruby/2.0.0/specifications/rspec-2.14.1.gemspec +39 -0
  528. data/vendor/bundle/ruby/2.0.0/specifications/rspec-core-2.14.7.gemspec +58 -0
  529. data/vendor/bundle/ruby/2.0.0/specifications/rspec-expectations-2.14.4.gemspec +40 -0
  530. data/vendor/bundle/ruby/2.0.0/specifications/rspec-mocks-2.14.4.gemspec +37 -0
  531. metadata +528 -7
@@ -0,0 +1,271 @@
1
+ module RSpec
2
+ module Mocks
3
+ # @private
4
+ class MethodDouble < Hash
5
+ # @private
6
+ attr_reader :method_name, :object
7
+
8
+ # @private
9
+ def initialize(object, method_name, proxy)
10
+ @method_name = method_name
11
+ @object = object
12
+ @proxy = proxy
13
+
14
+ @method_stasher = InstanceMethodStasher.new(object_singleton_class, @method_name)
15
+ @method_is_proxied = false
16
+ store(:expectations, [])
17
+ store(:stubs, [])
18
+ end
19
+
20
+ # @private
21
+ def expectations
22
+ self[:expectations]
23
+ end
24
+
25
+ # @private
26
+ def stubs
27
+ self[:stubs]
28
+ end
29
+
30
+ # @private
31
+ def visibility
32
+ if TestDouble === @object
33
+ 'public'
34
+ elsif object_singleton_class.private_method_defined?(@method_name)
35
+ 'private'
36
+ elsif object_singleton_class.protected_method_defined?(@method_name)
37
+ 'protected'
38
+ else
39
+ 'public'
40
+ end
41
+ end
42
+
43
+ class ProcWithBlock < Struct.new(:object, :method_name)
44
+
45
+ def call(*args, &block)
46
+ self.object.__send__(:method_missing, self.method_name, *args, &block)
47
+ end
48
+
49
+ end
50
+
51
+ # @private
52
+ def original_method
53
+ if @method_stasher.method_is_stashed?
54
+ # Example: a singleton method defined on @object
55
+ ::RSpec::Mocks.method_handle_for(@object, @method_stasher.stashed_method_name)
56
+ elsif meth = original_unrecorded_any_instance_method
57
+ # Example: a method that has been mocked through
58
+ # klass.any_instance.should_receive(:msg).and_call_original
59
+ # any_instance.should_receive(:msg) causes the method to be
60
+ # replaced with a proxy method, and then `and_call_original`
61
+ # is recorded and played back on the object instance. We need
62
+ # special handling here to get a handle on the original method
63
+ # object rather than the proxy method.
64
+ meth
65
+ else
66
+ # Example: an instance method defined on one of @object's ancestors.
67
+ original_method_from_ancestry
68
+ end
69
+ rescue NameError
70
+ # We have no way of knowing if the object's method_missing
71
+ # will handle this message or not...but we can at least try.
72
+ # If it's not handled, a `NoMethodError` will be raised, just
73
+ # like normally.
74
+ ProcWithBlock.new(@object,@method_name)
75
+ end
76
+
77
+ def original_unrecorded_any_instance_method
78
+ return nil unless any_instance_class_recorder_observing_method?(@object.class)
79
+ alias_name = ::RSpec::Mocks.any_instance_recorder_for(@object.class).build_alias_method_name(@method_name)
80
+ @object.method(alias_name)
81
+ end
82
+
83
+ def any_instance_class_recorder_observing_method?(klass)
84
+ return true if ::RSpec::Mocks.any_instance_recorder_for(klass).already_observing?(@method_name)
85
+ superklass = klass.superclass
86
+ return false if superklass.nil?
87
+ any_instance_class_recorder_observing_method?(superklass)
88
+ end
89
+
90
+ our_singleton_class = class << self; self; end
91
+ if our_singleton_class.ancestors.include? our_singleton_class
92
+ # In Ruby 2.1, ancestors include the correct ancestors, including the singleton classes
93
+ def original_method_from_ancestry
94
+ # Lookup in the ancestry, skipping over the singleton class itself
95
+ original_method_from_ancestor(object_singleton_class.ancestors.drop(1))
96
+ end
97
+ else
98
+ # @private
99
+ def original_method_from_ancestry
100
+ original_method_from_ancestor(object_singleton_class.ancestors)
101
+ rescue NameError
102
+ raise unless @object.respond_to?(:superclass)
103
+
104
+ # Example: a singleton method defined on @object's superclass.
105
+ #
106
+ # Note: we have to give precedence to instance methods
107
+ # defined on @object's class, because in a case like:
108
+ #
109
+ # `klass.should_receive(:new).and_call_original`
110
+ #
111
+ # ...we want `Class#new` bound to `klass` (which will return
112
+ # an instance of `klass`), not `klass.superclass.new` (which
113
+ # would return an instance of `klass.superclass`).
114
+ original_method_from_superclass
115
+ end
116
+ end
117
+
118
+ def original_method_from_ancestor(ancestors)
119
+ klass, *rest = ancestors
120
+ klass.instance_method(@method_name).bind(@object)
121
+ rescue NameError
122
+ raise if rest.empty?
123
+ original_method_from_ancestor(rest)
124
+ end
125
+
126
+ if RUBY_VERSION.to_f > 1.8
127
+ # @private
128
+ def original_method_from_superclass
129
+ @object.superclass.
130
+ singleton_class.
131
+ instance_method(@method_name).
132
+ bind(@object)
133
+ end
134
+ else
135
+ # Our implementation for 1.9 (above) causes an error on 1.8:
136
+ # TypeError: singleton method bound for a different object
137
+ #
138
+ # This doesn't work quite right in all circumstances but it's the
139
+ # best we can do.
140
+ # @private
141
+ def original_method_from_superclass
142
+ ::Kernel.warn <<-WARNING.gsub(/^ +\|/, '')
143
+ |
144
+ |WARNING: On ruby 1.8, rspec-mocks is unable to bind the original
145
+ |`#{@method_name}` method to your partial mock object (#{@object})
146
+ |for `and_call_original`. The superclass's `#{@method_name}` is being
147
+ |used instead; however, it may not work correctly when executed due
148
+ |to the fact that `self` will be #{@object.superclass}, not #{@object}.
149
+ |
150
+ |Called from: #{caller[2]}
151
+ WARNING
152
+
153
+ @object.superclass.method(@method_name)
154
+ end
155
+ end
156
+ # @private
157
+ def object_singleton_class
158
+ class << @object; self; end
159
+ end
160
+
161
+ # @private
162
+ def configure_method
163
+ @original_visibility = visibility_for_method
164
+ @method_stasher.stash unless @method_is_proxied
165
+ define_proxy_method
166
+ end
167
+
168
+ # @private
169
+ def define_proxy_method
170
+ return if @method_is_proxied
171
+
172
+ object_singleton_class.class_eval <<-EOF, __FILE__, __LINE__ + 1
173
+ def #{@method_name}(*args, &block)
174
+ ::RSpec::Mocks.proxy_for(self).message_received :#{@method_name}, *args, &block
175
+ end
176
+ #{visibility_for_method}
177
+ EOF
178
+ @method_is_proxied = true
179
+ end
180
+
181
+ # @private
182
+ def visibility_for_method
183
+ "#{visibility} :#{method_name}"
184
+ end
185
+
186
+ # @private
187
+ def restore_original_method
188
+ return unless @method_is_proxied
189
+
190
+ object_singleton_class.__send__(:remove_method, @method_name)
191
+ @method_stasher.restore
192
+ restore_original_visibility
193
+
194
+ @method_is_proxied = false
195
+ end
196
+
197
+ # @private
198
+ def restore_original_visibility
199
+ return unless object_singleton_class.method_defined?(@method_name) || object_singleton_class.private_method_defined?(@method_name)
200
+ object_singleton_class.class_eval(@original_visibility, __FILE__, __LINE__)
201
+ end
202
+
203
+ # @private
204
+ def verify
205
+ expectations.each {|e| e.verify_messages_received}
206
+ end
207
+
208
+ # @private
209
+ def reset
210
+ restore_original_method
211
+ clear
212
+ end
213
+
214
+ # @private
215
+ def clear
216
+ expectations.clear
217
+ stubs.clear
218
+ end
219
+
220
+ # @private
221
+ def add_expectation(error_generator, expectation_ordering, expected_from, opts, &implementation)
222
+ configure_method
223
+ expectation = MessageExpectation.new(error_generator, expectation_ordering,
224
+ expected_from, self, 1, opts, &implementation)
225
+ expectations << expectation
226
+ expectation
227
+ end
228
+
229
+ # @private
230
+ def build_expectation(error_generator, expectation_ordering)
231
+ expected_from = IGNORED_BACKTRACE_LINE
232
+ MessageExpectation.new(error_generator, expectation_ordering, expected_from, self)
233
+ end
234
+
235
+ # @private
236
+ def add_stub(error_generator, expectation_ordering, expected_from, opts={}, &implementation)
237
+ configure_method
238
+ stub = MessageExpectation.new(error_generator, expectation_ordering, expected_from,
239
+ self, :any, opts, &implementation)
240
+ stubs.unshift stub
241
+ stub
242
+ end
243
+
244
+ # @private
245
+ def add_default_stub(*args, &implementation)
246
+ return if stubs.any?
247
+ add_stub(*args, &implementation)
248
+ end
249
+
250
+ # @private
251
+ def remove_stub
252
+ raise_method_not_stubbed_error if stubs.empty?
253
+ expectations.empty? ? reset : stubs.clear
254
+ end
255
+
256
+ # @private
257
+ def remove_single_stub(stub)
258
+ stubs.delete(stub)
259
+ restore_original_method if stubs.empty? && expectations.empty?
260
+ end
261
+
262
+ # @private
263
+ def raise_method_not_stubbed_error
264
+ raise MockExpectationError, "The method `#{method_name}` was not stubbed or was already unstubbed"
265
+ end
266
+
267
+ # @private
268
+ IGNORED_BACKTRACE_LINE = 'this backtrace line is ignored'
269
+ end
270
+ end
271
+ end
@@ -0,0 +1,7 @@
1
+ module RSpec
2
+ module Mocks
3
+ class Mock
4
+ include TestDouble
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,403 @@
1
+ module RSpec
2
+ module Mocks
3
+ # Provides recursive constant lookup methods useful for
4
+ # constant stubbing.
5
+ # @api private
6
+ module RecursiveConstMethods
7
+ # We only want to consider constants that are defined directly on a
8
+ # particular module, and not include top-level/inherited constants.
9
+ # Unfortunately, the constant API changed between 1.8 and 1.9, so
10
+ # we need to conditionally define methods to ignore the top-level/inherited
11
+ # constants.
12
+ #
13
+ # Given:
14
+ # class A; B = 1; end
15
+ # class C < A; end
16
+ #
17
+ # On 1.8:
18
+ # - C.const_get("Hash") # => ::Hash
19
+ # - C.const_defined?("Hash") # => false
20
+ # - C.constants # => ["B"]
21
+ # - None of these methods accept the extra `inherit` argument
22
+ # On 1.9:
23
+ # - C.const_get("Hash") # => ::Hash
24
+ # - C.const_defined?("Hash") # => true
25
+ # - C.const_get("Hash", false) # => raises NameError
26
+ # - C.const_defined?("Hash", false) # => false
27
+ # - C.constants # => [:B]
28
+ # - C.constants(false) #=> []
29
+ if Module.method(:const_defined?).arity == 1
30
+ def const_defined_on?(mod, const_name)
31
+ mod.const_defined?(const_name)
32
+ end
33
+
34
+ def get_const_defined_on(mod, const_name)
35
+ if const_defined_on?(mod, const_name)
36
+ return mod.const_get(const_name)
37
+ end
38
+
39
+ raise NameError, "uninitialized constant #{mod.name}::#{const_name}"
40
+ end
41
+
42
+ def constants_defined_on(mod)
43
+ mod.constants.select { |c| const_defined_on?(mod, c) }
44
+ end
45
+ else
46
+ def const_defined_on?(mod, const_name)
47
+ mod.const_defined?(const_name, false)
48
+ end
49
+
50
+ def get_const_defined_on(mod, const_name)
51
+ mod.const_get(const_name, false)
52
+ end
53
+
54
+ def constants_defined_on(mod)
55
+ mod.constants(false)
56
+ end
57
+ end
58
+
59
+ def recursive_const_get(const_name)
60
+ normalize_const_name(const_name).split('::').inject(Object) do |mod, name|
61
+ get_const_defined_on(mod, name)
62
+ end
63
+ end
64
+
65
+ def recursive_const_defined?(const_name)
66
+ normalize_const_name(const_name).split('::').inject([Object, '']) do |(mod, full_name), name|
67
+ yield(full_name, name) if block_given? && !mod.is_a?(Module)
68
+ return false unless const_defined_on?(mod, name)
69
+ [get_const_defined_on(mod, name), [mod, name].join('::')]
70
+ end
71
+ end
72
+
73
+ def normalize_const_name(const_name)
74
+ const_name.sub(/\A::/, '')
75
+ end
76
+ end
77
+
78
+ # Provides information about constants that may (or may not)
79
+ # have been mutated by rspec-mocks.
80
+ class Constant
81
+ extend RecursiveConstMethods
82
+
83
+ # @api private
84
+ def initialize(name)
85
+ @name = name
86
+ @previously_defined = false
87
+ @stubbed = false
88
+ @hidden = false
89
+ end
90
+
91
+ # @return [String] The fully qualified name of the constant.
92
+ attr_reader :name
93
+
94
+ # @return [Object, nil] The original value (e.g. before it
95
+ # was mutated by rspec-mocks) of the constant, or
96
+ # nil if the constant was not previously defined.
97
+ attr_accessor :original_value
98
+
99
+ # @api private
100
+ attr_writer :previously_defined, :stubbed, :hidden
101
+
102
+ # @return [Boolean] Whether or not the constant was defined
103
+ # before the current example.
104
+ def previously_defined?
105
+ @previously_defined
106
+ end
107
+
108
+ # @return [Boolean] Whether or not rspec-mocks has mutated
109
+ # (stubbed or hidden) this constant.
110
+ def mutated?
111
+ @stubbed || @hidden
112
+ end
113
+
114
+ # @return [Boolean] Whether or not rspec-mocks has stubbed
115
+ # this constant.
116
+ def stubbed?
117
+ @stubbed
118
+ end
119
+
120
+ # @return [Boolean] Whether or not rspec-mocks has hidden
121
+ # this constant.
122
+ def hidden?
123
+ @hidden
124
+ end
125
+
126
+ def to_s
127
+ "#<#{self.class.name} #{name}>"
128
+ end
129
+ alias inspect to_s
130
+
131
+ # @api private
132
+ def self.unmutated(name)
133
+ const = new(name)
134
+ const.previously_defined = recursive_const_defined?(name)
135
+ const.stubbed = false
136
+ const.hidden = false
137
+ const.original_value = recursive_const_get(name) if const.previously_defined?
138
+
139
+ const
140
+ end
141
+ private_class_method :unmutated
142
+
143
+ # Queries rspec-mocks to find out information about the named constant.
144
+ #
145
+ # @param [String] name the name of the constant
146
+ # @return [Constant] an object contaning information about the named
147
+ # constant.
148
+ def self.original(name)
149
+ mutator = ConstantMutator.find(name)
150
+ mutator ? mutator.to_constant : unmutated(name)
151
+ end
152
+ end
153
+
154
+ # Provides a means to stub constants.
155
+ class ConstantMutator
156
+ extend RecursiveConstMethods
157
+
158
+ # Stubs a constant.
159
+ #
160
+ # @param (see ExampleMethods#stub_const)
161
+ # @option (see ExampleMethods#stub_const)
162
+ # @return (see ExampleMethods#stub_const)
163
+ #
164
+ # @see ExampleMethods#stub_const
165
+ # @note It's recommended that you use `stub_const` in your
166
+ # examples. This is an alternate public API that is provided
167
+ # so you can stub constants in other contexts (e.g. helper
168
+ # classes).
169
+ def self.stub(constant_name, value, options = {})
170
+ mutator = if recursive_const_defined?(constant_name, &raise_on_invalid_const)
171
+ DefinedConstantReplacer
172
+ else
173
+ UndefinedConstantSetter
174
+ end
175
+
176
+ mutate(mutator.new(constant_name, value, options[:transfer_nested_constants]))
177
+ value
178
+ end
179
+
180
+ # Hides a constant.
181
+ #
182
+ # @param (see ExampleMethods#hide_const)
183
+ #
184
+ # @see ExampleMethods#hide_const
185
+ # @note It's recommended that you use `hide_const` in your
186
+ # examples. This is an alternate public API that is provided
187
+ # so you can hide constants in other contexts (e.g. helper
188
+ # classes).
189
+ def self.hide(constant_name)
190
+ return unless recursive_const_defined?(constant_name)
191
+
192
+ mutate(ConstantHider.new(constant_name, nil, { }))
193
+ nil
194
+ end
195
+
196
+ # Contains common functionality used by all of the constant mutators.
197
+ #
198
+ # @api private
199
+ class BaseMutator
200
+ include RecursiveConstMethods
201
+
202
+ attr_reader :original_value, :full_constant_name
203
+
204
+ def initialize(full_constant_name, mutated_value, transfer_nested_constants)
205
+ @full_constant_name = normalize_const_name(full_constant_name)
206
+ @mutated_value = mutated_value
207
+ @transfer_nested_constants = transfer_nested_constants
208
+ @context_parts = @full_constant_name.split('::')
209
+ @const_name = @context_parts.pop
210
+ end
211
+
212
+ def to_constant
213
+ const = Constant.new(full_constant_name)
214
+ const.original_value = original_value
215
+
216
+ const
217
+ end
218
+ end
219
+
220
+ # Hides a defined constant for the duration of an example.
221
+ #
222
+ # @api private
223
+ class ConstantHider < BaseMutator
224
+ def mutate
225
+ @context = recursive_const_get(@context_parts.join('::'))
226
+ @original_value = get_const_defined_on(@context, @const_name)
227
+
228
+ @context.__send__(:remove_const, @const_name)
229
+ end
230
+
231
+ def to_constant
232
+ const = super
233
+ const.hidden = true
234
+ const.previously_defined = true
235
+
236
+ const
237
+ end
238
+
239
+ def rspec_reset
240
+ @context.const_set(@const_name, @original_value)
241
+ end
242
+ end
243
+
244
+ # Replaces a defined constant for the duration of an example.
245
+ #
246
+ # @api private
247
+ class DefinedConstantReplacer < BaseMutator
248
+ def mutate
249
+ @context = recursive_const_get(@context_parts.join('::'))
250
+ @original_value = get_const_defined_on(@context, @const_name)
251
+
252
+ constants_to_transfer = verify_constants_to_transfer!
253
+
254
+ @context.__send__(:remove_const, @const_name)
255
+ @context.const_set(@const_name, @mutated_value)
256
+
257
+ transfer_nested_constants(constants_to_transfer)
258
+ end
259
+
260
+ def to_constant
261
+ const = super
262
+ const.stubbed = true
263
+ const.previously_defined = true
264
+
265
+ const
266
+ end
267
+
268
+ def rspec_reset
269
+ @context.__send__(:remove_const, @const_name)
270
+ @context.const_set(@const_name, @original_value)
271
+ end
272
+
273
+ def transfer_nested_constants(constants)
274
+ constants.each do |const|
275
+ @mutated_value.const_set(const, get_const_defined_on(original_value, const))
276
+ end
277
+ end
278
+
279
+ def verify_constants_to_transfer!
280
+ return [] unless @transfer_nested_constants
281
+
282
+ { @original_value => "the original value", @mutated_value => "the stubbed value" }.each do |value, description|
283
+ unless value.respond_to?(:constants)
284
+ raise ArgumentError,
285
+ "Cannot transfer nested constants for #{@full_constant_name} " +
286
+ "since #{description} is not a class or module and only classes " +
287
+ "and modules support nested constants."
288
+ end
289
+ end
290
+
291
+ if @transfer_nested_constants.is_a?(Array)
292
+ @transfer_nested_constants = @transfer_nested_constants.map(&:to_s) if RUBY_VERSION == '1.8.7'
293
+ undefined_constants = @transfer_nested_constants - constants_defined_on(@original_value)
294
+
295
+ if undefined_constants.any?
296
+ available_constants = constants_defined_on(@original_value) - @transfer_nested_constants
297
+ raise ArgumentError,
298
+ "Cannot transfer nested constant(s) #{undefined_constants.join(' and ')} " +
299
+ "for #{@full_constant_name} since they are not defined. Did you mean " +
300
+ "#{available_constants.join(' or ')}?"
301
+ end
302
+
303
+ @transfer_nested_constants
304
+ else
305
+ constants_defined_on(@original_value)
306
+ end
307
+ end
308
+ end
309
+
310
+ # Sets an undefined constant for the duration of an example.
311
+ #
312
+ # @api private
313
+ class UndefinedConstantSetter < BaseMutator
314
+ def mutate
315
+ remaining_parts = @context_parts.dup
316
+ @deepest_defined_const = @context_parts.inject(Object) do |klass, name|
317
+ break klass unless const_defined_on?(klass, name)
318
+ remaining_parts.shift
319
+ get_const_defined_on(klass, name)
320
+ end
321
+
322
+ context = remaining_parts.inject(@deepest_defined_const) do |klass, name|
323
+ klass.const_set(name, Module.new)
324
+ end
325
+
326
+ @const_to_remove = remaining_parts.first || @const_name
327
+ context.const_set(@const_name, @mutated_value)
328
+ end
329
+
330
+ def to_constant
331
+ const = super
332
+ const.stubbed = true
333
+ const.previously_defined = false
334
+
335
+ const
336
+ end
337
+
338
+ def rspec_reset
339
+ @deepest_defined_const.__send__(:remove_const, @const_to_remove)
340
+ end
341
+ end
342
+
343
+ # Uses the mutator to mutate (stub or hide) a constant. Ensures that
344
+ # the mutator is correctly registered so it can be backed out at the end
345
+ # of the test.
346
+ #
347
+ # @api private
348
+ def self.mutate(mutator)
349
+ register_mutator(mutator)
350
+ mutator.mutate
351
+ end
352
+
353
+ # Resets all stubbed constants. This is called automatically
354
+ # by rspec-mocks when an example finishes.
355
+ #
356
+ # @api private
357
+ def self.reset_all
358
+ # We use reverse order so that if the same constant
359
+ # was stubbed multiple times, the original value gets
360
+ # properly restored.
361
+ mutators.reverse.each { |s| s.rspec_reset }
362
+
363
+ mutators.clear
364
+ end
365
+
366
+ # The list of constant mutators that have been used for
367
+ # the current example.
368
+ #
369
+ # @api private
370
+ def self.mutators
371
+ @mutators ||= []
372
+ end
373
+
374
+ # @api private
375
+ def self.register_mutator(mutator)
376
+ mutators << mutator
377
+ end
378
+
379
+ def self.find(name)
380
+ mutators.find { |s| s.full_constant_name == name }
381
+ end
382
+
383
+ # Used internally by the constant stubbing to raise a helpful
384
+ # error when a constant like "A::B::C" is stubbed and A::B is
385
+ # not a module (and thus, it's impossible to define "A::B::C"
386
+ # since only modules can have nested constants).
387
+ #
388
+ # @api private
389
+ def self.raise_on_invalid_const
390
+ lambda do |const_name, failed_name|
391
+ raise "Cannot stub constant #{failed_name} on #{const_name} " +
392
+ "since #{const_name} is not a module."
393
+ end
394
+ end
395
+ end
396
+
397
+ # Keeps backwards compatibility since we had released an rspec-mocks that
398
+ # only supported stubbing. Later, we released the hide_const feature and
399
+ # decided that the term "mutator" was a better term to wrap up the concept
400
+ # of both stubbing and hiding.
401
+ ConstantStubber = ConstantMutator
402
+ end
403
+ end