fucknumber 0.1.3

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 (451) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +12 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +5 -0
  5. data/Gemfile +4 -0
  6. data/README.md +36 -0
  7. data/Rakefile +6 -0
  8. data/bin/console +14 -0
  9. data/bin/setup +8 -0
  10. data/fucknumber.gemspec +29 -0
  11. data/lib/fucknumber.rb +12 -0
  12. data/lib/fucknumber/version.rb +3 -0
  13. data/vendor/bundle/bin/htmldiff +24 -0
  14. data/vendor/bundle/bin/ldiff +24 -0
  15. data/vendor/bundle/bin/rake +22 -0
  16. data/vendor/bundle/bin/rspec +22 -0
  17. data/vendor/bundle/build_info/diff-lcs-1.3.info +1 -0
  18. data/vendor/bundle/build_info/rake-10.5.0.info +1 -0
  19. data/vendor/bundle/build_info/rspec-3.5.0.info +1 -0
  20. data/vendor/bundle/build_info/rspec-core-3.5.4.info +1 -0
  21. data/vendor/bundle/build_info/rspec-expectations-3.5.0.info +1 -0
  22. data/vendor/bundle/build_info/rspec-mocks-3.5.0.info +1 -0
  23. data/vendor/bundle/build_info/rspec-support-3.5.0.info +1 -0
  24. data/vendor/bundle/cache/diff-lcs-1.3.gem +0 -0
  25. data/vendor/bundle/cache/rake-10.5.0.gem +0 -0
  26. data/vendor/bundle/cache/rspec-3.5.0.gem +0 -0
  27. data/vendor/bundle/cache/rspec-core-3.5.4.gem +0 -0
  28. data/vendor/bundle/cache/rspec-expectations-3.5.0.gem +0 -0
  29. data/vendor/bundle/cache/rspec-mocks-3.5.0.gem +0 -0
  30. data/vendor/bundle/cache/rspec-support-3.5.0.gem +0 -0
  31. data/vendor/bundle/gems/diff-lcs-1.3/.rspec +1 -0
  32. data/vendor/bundle/gems/diff-lcs-1.3/Code-of-Conduct.md +74 -0
  33. data/vendor/bundle/gems/diff-lcs-1.3/Contributing.md +83 -0
  34. data/vendor/bundle/gems/diff-lcs-1.3/History.md +220 -0
  35. data/vendor/bundle/gems/diff-lcs-1.3/License.md +39 -0
  36. data/vendor/bundle/gems/diff-lcs-1.3/Manifest.txt +37 -0
  37. data/vendor/bundle/gems/diff-lcs-1.3/README.rdoc +84 -0
  38. data/vendor/bundle/gems/diff-lcs-1.3/Rakefile +57 -0
  39. data/vendor/bundle/gems/diff-lcs-1.3/autotest/discover.rb +1 -0
  40. data/vendor/bundle/gems/diff-lcs-1.3/bin/htmldiff +32 -0
  41. data/vendor/bundle/gems/diff-lcs-1.3/bin/ldiff +6 -0
  42. data/vendor/bundle/gems/diff-lcs-1.3/docs/COPYING.txt +339 -0
  43. data/vendor/bundle/gems/diff-lcs-1.3/docs/artistic.txt +127 -0
  44. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff-lcs.rb +3 -0
  45. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs.rb +725 -0
  46. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/array.rb +7 -0
  47. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/block.rb +37 -0
  48. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/callbacks.rb +322 -0
  49. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/change.rb +181 -0
  50. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/htmldiff.rb +149 -0
  51. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/hunk.rb +276 -0
  52. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/internals.rb +307 -0
  53. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/ldiff.rb +167 -0
  54. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/string.rb +5 -0
  55. data/vendor/bundle/gems/diff-lcs-1.3/spec/change_spec.rb +65 -0
  56. data/vendor/bundle/gems/diff-lcs-1.3/spec/diff_spec.rb +47 -0
  57. data/vendor/bundle/gems/diff-lcs-1.3/spec/fixtures/ds1.csv +50 -0
  58. data/vendor/bundle/gems/diff-lcs-1.3/spec/fixtures/ds2.csv +51 -0
  59. data/vendor/bundle/gems/diff-lcs-1.3/spec/hunk_spec.rb +72 -0
  60. data/vendor/bundle/gems/diff-lcs-1.3/spec/issues_spec.rb +49 -0
  61. data/vendor/bundle/gems/diff-lcs-1.3/spec/lcs_spec.rb +56 -0
  62. data/vendor/bundle/gems/diff-lcs-1.3/spec/ldiff_spec.rb +47 -0
  63. data/vendor/bundle/gems/diff-lcs-1.3/spec/patch_spec.rb +422 -0
  64. data/vendor/bundle/gems/diff-lcs-1.3/spec/sdiff_spec.rb +214 -0
  65. data/vendor/bundle/gems/diff-lcs-1.3/spec/spec_helper.rb +321 -0
  66. data/vendor/bundle/gems/diff-lcs-1.3/spec/traverse_balanced_spec.rb +310 -0
  67. data/vendor/bundle/gems/diff-lcs-1.3/spec/traverse_sequences_spec.rb +139 -0
  68. data/vendor/bundle/gems/rake-10.5.0/.autotest +7 -0
  69. data/vendor/bundle/gems/rake-10.5.0/.rubocop.yml +27 -0
  70. data/vendor/bundle/gems/rake-10.5.0/.togglerc +7 -0
  71. data/vendor/bundle/gems/rake-10.5.0/CONTRIBUTING.rdoc +38 -0
  72. data/vendor/bundle/gems/rake-10.5.0/History.rdoc +659 -0
  73. data/vendor/bundle/gems/rake-10.5.0/MIT-LICENSE +21 -0
  74. data/vendor/bundle/gems/rake-10.5.0/Manifest.txt +166 -0
  75. data/vendor/bundle/gems/rake-10.5.0/README.rdoc +139 -0
  76. data/vendor/bundle/gems/rake-10.5.0/Rakefile +81 -0
  77. data/vendor/bundle/gems/rake-10.5.0/bin/rake +33 -0
  78. data/vendor/bundle/gems/rake-10.5.0/doc/command_line_usage.rdoc +158 -0
  79. data/vendor/bundle/gems/rake-10.5.0/doc/example/Rakefile1 +38 -0
  80. data/vendor/bundle/gems/rake-10.5.0/doc/example/Rakefile2 +35 -0
  81. data/vendor/bundle/gems/rake-10.5.0/doc/example/a.c +6 -0
  82. data/vendor/bundle/gems/rake-10.5.0/doc/example/b.c +6 -0
  83. data/vendor/bundle/gems/rake-10.5.0/doc/example/main.c +11 -0
  84. data/vendor/bundle/gems/rake-10.5.0/doc/glossary.rdoc +42 -0
  85. data/vendor/bundle/gems/rake-10.5.0/doc/jamis.rb +591 -0
  86. data/vendor/bundle/gems/rake-10.5.0/doc/proto_rake.rdoc +127 -0
  87. data/vendor/bundle/gems/rake-10.5.0/doc/rake.1 +141 -0
  88. data/vendor/bundle/gems/rake-10.5.0/doc/rakefile.rdoc +624 -0
  89. data/vendor/bundle/gems/rake-10.5.0/doc/rational.rdoc +151 -0
  90. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.4.14.rdoc +23 -0
  91. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.4.15.rdoc +35 -0
  92. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.5.0.rdoc +53 -0
  93. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.5.3.rdoc +78 -0
  94. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.5.4.rdoc +46 -0
  95. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.6.0.rdoc +141 -0
  96. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.0.rdoc +119 -0
  97. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.1.rdoc +59 -0
  98. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.2.rdoc +121 -0
  99. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.3.rdoc +47 -0
  100. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.0.rdoc +114 -0
  101. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.2.rdoc +165 -0
  102. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.3.rdoc +112 -0
  103. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.4.rdoc +147 -0
  104. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.5.rdoc +53 -0
  105. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.6.rdoc +37 -0
  106. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.7.rdoc +55 -0
  107. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.0.rdoc +112 -0
  108. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.1.rdoc +52 -0
  109. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.2.2.rdoc +55 -0
  110. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.2.rdoc +49 -0
  111. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.3.rdoc +102 -0
  112. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.4.rdoc +60 -0
  113. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.5.rdoc +55 -0
  114. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.6.rdoc +64 -0
  115. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.0.rdoc +178 -0
  116. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.1.rdoc +58 -0
  117. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.2.rdoc +53 -0
  118. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.3.rdoc +191 -0
  119. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.1.0.rdoc +61 -0
  120. data/vendor/bundle/gems/rake-10.5.0/lib/rake.rb +79 -0
  121. data/vendor/bundle/gems/rake-10.5.0/lib/rake/alt_system.rb +110 -0
  122. data/vendor/bundle/gems/rake-10.5.0/lib/rake/application.rb +790 -0
  123. data/vendor/bundle/gems/rake-10.5.0/lib/rake/backtrace.rb +23 -0
  124. data/vendor/bundle/gems/rake-10.5.0/lib/rake/clean.rb +76 -0
  125. data/vendor/bundle/gems/rake-10.5.0/lib/rake/cloneable.rb +16 -0
  126. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/.document +1 -0
  127. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/compositepublisher.rb +21 -0
  128. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/ftptools.rb +137 -0
  129. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/publisher.rb +81 -0
  130. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/rubyforgepublisher.rb +18 -0
  131. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/sshpublisher.rb +61 -0
  132. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/sys.rb +4 -0
  133. data/vendor/bundle/gems/rake-10.5.0/lib/rake/cpu_counter.rb +125 -0
  134. data/vendor/bundle/gems/rake-10.5.0/lib/rake/default_loader.rb +14 -0
  135. data/vendor/bundle/gems/rake-10.5.0/lib/rake/dsl_definition.rb +201 -0
  136. data/vendor/bundle/gems/rake-10.5.0/lib/rake/early_time.rb +21 -0
  137. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/core.rb +25 -0
  138. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/module.rb +2 -0
  139. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/pathname.rb +25 -0
  140. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/string.rb +175 -0
  141. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/time.rb +18 -0
  142. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_creation_task.rb +24 -0
  143. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_list.rb +428 -0
  144. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_task.rb +46 -0
  145. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_utils.rb +128 -0
  146. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_utils_ext.rb +144 -0
  147. data/vendor/bundle/gems/rake-10.5.0/lib/rake/gempackagetask.rb +4 -0
  148. data/vendor/bundle/gems/rake-10.5.0/lib/rake/invocation_chain.rb +56 -0
  149. data/vendor/bundle/gems/rake-10.5.0/lib/rake/invocation_exception_mixin.rb +16 -0
  150. data/vendor/bundle/gems/rake-10.5.0/lib/rake/late_time.rb +17 -0
  151. data/vendor/bundle/gems/rake-10.5.0/lib/rake/linked_list.rb +103 -0
  152. data/vendor/bundle/gems/rake-10.5.0/lib/rake/loaders/makefile.rb +53 -0
  153. data/vendor/bundle/gems/rake-10.5.0/lib/rake/multi_task.rb +13 -0
  154. data/vendor/bundle/gems/rake-10.5.0/lib/rake/name_space.rb +38 -0
  155. data/vendor/bundle/gems/rake-10.5.0/lib/rake/packagetask.rb +199 -0
  156. data/vendor/bundle/gems/rake-10.5.0/lib/rake/pathmap.rb +3 -0
  157. data/vendor/bundle/gems/rake-10.5.0/lib/rake/phony.rb +15 -0
  158. data/vendor/bundle/gems/rake-10.5.0/lib/rake/private_reader.rb +20 -0
  159. data/vendor/bundle/gems/rake-10.5.0/lib/rake/promise.rb +99 -0
  160. data/vendor/bundle/gems/rake-10.5.0/lib/rake/pseudo_status.rb +29 -0
  161. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rake_module.rb +38 -0
  162. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rake_test_loader.rb +22 -0
  163. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rdoctask.rb +4 -0
  164. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ruby182_test_unit_fix.rb +29 -0
  165. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rule_recursion_overflow_error.rb +20 -0
  166. data/vendor/bundle/gems/rake-10.5.0/lib/rake/runtest.rb +27 -0
  167. data/vendor/bundle/gems/rake-10.5.0/lib/rake/scope.rb +42 -0
  168. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task.rb +383 -0
  169. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task_argument_error.rb +7 -0
  170. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task_arguments.rb +98 -0
  171. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task_manager.rb +307 -0
  172. data/vendor/bundle/gems/rake-10.5.0/lib/rake/tasklib.rb +24 -0
  173. data/vendor/bundle/gems/rake-10.5.0/lib/rake/testtask.rb +213 -0
  174. data/vendor/bundle/gems/rake-10.5.0/lib/rake/thread_history_display.rb +48 -0
  175. data/vendor/bundle/gems/rake-10.5.0/lib/rake/thread_pool.rb +164 -0
  176. data/vendor/bundle/gems/rake-10.5.0/lib/rake/trace_output.rb +22 -0
  177. data/vendor/bundle/gems/rake-10.5.0/lib/rake/version.rb +7 -0
  178. data/vendor/bundle/gems/rake-10.5.0/lib/rake/win32.rb +56 -0
  179. data/vendor/bundle/gems/rake-10.5.0/rakelib/publish.rake +20 -0
  180. data/vendor/bundle/gems/rake-10.5.0/rakelib/test_times.rake +25 -0
  181. data/vendor/bundle/gems/rake-10.5.0/test/file_creation.rb +34 -0
  182. data/vendor/bundle/gems/rake-10.5.0/test/helper.rb +129 -0
  183. data/vendor/bundle/gems/rake-10.5.0/test/support/rakefile_definitions.rb +478 -0
  184. data/vendor/bundle/gems/rake-10.5.0/test/support/ruby_runner.rb +34 -0
  185. data/vendor/bundle/gems/rake-10.5.0/test/test_private_reader.rb +42 -0
  186. data/vendor/bundle/gems/rake-10.5.0/test/test_rake.rb +40 -0
  187. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_application.rb +643 -0
  188. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_application_options.rb +468 -0
  189. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_backtrace.rb +119 -0
  190. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_clean.rb +61 -0
  191. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_cpu_counter.rb +68 -0
  192. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_definitions.rb +84 -0
  193. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_directory_task.rb +76 -0
  194. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_dsl.rb +40 -0
  195. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_early_time.rb +31 -0
  196. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_extension.rb +59 -0
  197. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_creation_task.rb +56 -0
  198. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_list.rb +670 -0
  199. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_list_path_map.rb +8 -0
  200. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_task.rb +197 -0
  201. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_utils.rb +314 -0
  202. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_ftp_file.rb +74 -0
  203. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_functional.rb +482 -0
  204. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_invocation_chain.rb +64 -0
  205. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_late_time.rb +18 -0
  206. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_linked_list.rb +84 -0
  207. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_makefile_loader.rb +46 -0
  208. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_multi_task.rb +64 -0
  209. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_name_space.rb +57 -0
  210. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_package_task.rb +79 -0
  211. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_path_map.rb +168 -0
  212. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_path_map_explode.rb +34 -0
  213. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_path_map_partial.rb +18 -0
  214. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_pathname_extensions.rb +15 -0
  215. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_pseudo_status.rb +21 -0
  216. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_rake_test_loader.rb +20 -0
  217. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_reduce_compat.rb +26 -0
  218. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_require.rb +40 -0
  219. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_rules.rb +388 -0
  220. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_scope.rb +44 -0
  221. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task.rb +393 -0
  222. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_argument_parsing.rb +119 -0
  223. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_arguments.rb +127 -0
  224. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_lib.rb +9 -0
  225. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_manager.rb +178 -0
  226. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_manager_argument_resolution.rb +19 -0
  227. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_with_arguments.rb +172 -0
  228. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_test_task.rb +146 -0
  229. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_thread_pool.rb +145 -0
  230. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_top_level_functions.rb +71 -0
  231. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_win32.rb +72 -0
  232. data/vendor/bundle/gems/rake-10.5.0/test/test_thread_history_display.rb +101 -0
  233. data/vendor/bundle/gems/rake-10.5.0/test/test_trace_output.rb +52 -0
  234. data/vendor/bundle/gems/rspec-3.5.0/LICENSE.md +27 -0
  235. data/vendor/bundle/gems/rspec-3.5.0/README.md +39 -0
  236. data/vendor/bundle/gems/rspec-3.5.0/lib/rspec.rb +3 -0
  237. data/vendor/bundle/gems/rspec-3.5.0/lib/rspec/version.rb +5 -0
  238. data/vendor/bundle/gems/rspec-core-3.5.4/.document +5 -0
  239. data/vendor/bundle/gems/rspec-core-3.5.4/.yardopts +8 -0
  240. data/vendor/bundle/gems/rspec-core-3.5.4/Changelog.md +2102 -0
  241. data/vendor/bundle/gems/rspec-core-3.5.4/LICENSE.md +26 -0
  242. data/vendor/bundle/gems/rspec-core-3.5.4/README.md +384 -0
  243. data/vendor/bundle/gems/rspec-core-3.5.4/exe/rspec +4 -0
  244. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/autorun.rb +3 -0
  245. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core.rb +185 -0
  246. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/backtrace_formatter.rb +65 -0
  247. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/bisect/coordinator.rb +66 -0
  248. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/bisect/example_minimizer.rb +169 -0
  249. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/bisect/runner.rb +169 -0
  250. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/bisect/server.rb +65 -0
  251. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/configuration.rb +2100 -0
  252. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/configuration_options.rb +194 -0
  253. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/drb.rb +111 -0
  254. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/dsl.rb +98 -0
  255. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/example.rb +649 -0
  256. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/example_group.rb +879 -0
  257. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/example_status_persister.rb +235 -0
  258. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/filter_manager.rb +231 -0
  259. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/flat_map.rb +20 -0
  260. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters.rb +255 -0
  261. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/base_formatter.rb +70 -0
  262. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/base_text_formatter.rb +77 -0
  263. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/bisect_formatter.rb +69 -0
  264. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/bisect_progress_formatter.rb +144 -0
  265. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/console_codes.rb +65 -0
  266. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/deprecation_formatter.rb +223 -0
  267. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/documentation_formatter.rb +69 -0
  268. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/exception_presenter.rb +491 -0
  269. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/fallback_message_formatter.rb +28 -0
  270. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/helpers.rb +110 -0
  271. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/html_formatter.rb +151 -0
  272. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/html_printer.rb +414 -0
  273. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/html_snippet_extractor.rb +116 -0
  274. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/json_formatter.rb +96 -0
  275. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/profile_formatter.rb +68 -0
  276. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/progress_formatter.rb +28 -0
  277. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/protocol.rb +181 -0
  278. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/snippet_extractor.rb +136 -0
  279. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/hooks.rb +624 -0
  280. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/invocations.rb +67 -0
  281. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/memoized_helpers.rb +532 -0
  282. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/metadata.rb +499 -0
  283. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/metadata_filter.rb +243 -0
  284. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/minitest_assertions_adapter.rb +31 -0
  285. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/mocking_adapters/flexmock.rb +31 -0
  286. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/mocking_adapters/mocha.rb +57 -0
  287. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/mocking_adapters/null.rb +14 -0
  288. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/mocking_adapters/rr.rb +31 -0
  289. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/mocking_adapters/rspec.rb +32 -0
  290. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/notifications.rb +498 -0
  291. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/option_parser.rb +289 -0
  292. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/ordering.rb +158 -0
  293. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/pending.rb +165 -0
  294. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/profiler.rb +32 -0
  295. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/project_initializer.rb +48 -0
  296. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/project_initializer/.rspec +2 -0
  297. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/project_initializer/spec/spec_helper.rb +103 -0
  298. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/rake_task.rb +168 -0
  299. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/reporter.rb +248 -0
  300. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/ruby_project.rb +53 -0
  301. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/runner.rb +188 -0
  302. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/sandbox.rb +37 -0
  303. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/set.rb +49 -0
  304. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/shared_context.rb +55 -0
  305. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/shared_example_group.rb +247 -0
  306. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/shell_escape.rb +49 -0
  307. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/source.rb +86 -0
  308. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/source/location.rb +13 -0
  309. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/source/node.rb +93 -0
  310. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/source/syntax_highlighter.rb +71 -0
  311. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/source/token.rb +87 -0
  312. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/test_unit_assertions_adapter.rb +30 -0
  313. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/version.rb +9 -0
  314. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/warnings.rb +40 -0
  315. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/world.rb +256 -0
  316. data/vendor/bundle/gems/rspec-expectations-3.5.0/.document +5 -0
  317. data/vendor/bundle/gems/rspec-expectations-3.5.0/.yardopts +6 -0
  318. data/vendor/bundle/gems/rspec-expectations-3.5.0/Changelog.md +1034 -0
  319. data/vendor/bundle/gems/rspec-expectations-3.5.0/LICENSE.md +25 -0
  320. data/vendor/bundle/gems/rspec-expectations-3.5.0/README.md +303 -0
  321. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations.rb +81 -0
  322. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/configuration.rb +201 -0
  323. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/expectation_target.rb +127 -0
  324. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/fail_with.rb +31 -0
  325. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/failure_aggregator.rb +194 -0
  326. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/handler.rb +170 -0
  327. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/minitest_integration.rb +58 -0
  328. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/syntax.rb +132 -0
  329. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/version.rb +8 -0
  330. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers.rb +1038 -0
  331. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/aliased_matcher.rb +116 -0
  332. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in.rb +52 -0
  333. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/all.rb +85 -0
  334. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/base_matcher.rb +181 -0
  335. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/be.rb +288 -0
  336. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/be_between.rb +77 -0
  337. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/be_instance_of.rb +22 -0
  338. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/be_kind_of.rb +16 -0
  339. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/be_within.rb +72 -0
  340. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/change.rb +354 -0
  341. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/compound.rb +272 -0
  342. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/contain_exactly.rb +286 -0
  343. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/cover.rb +24 -0
  344. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/eq.rb +40 -0
  345. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/eql.rb +34 -0
  346. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/equal.rb +81 -0
  347. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/exist.rb +86 -0
  348. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/has.rb +103 -0
  349. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/have_attributes.rb +114 -0
  350. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/include.rb +143 -0
  351. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/match.rb +106 -0
  352. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/operators.rb +128 -0
  353. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/output.rb +200 -0
  354. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/raise_error.rb +230 -0
  355. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/respond_to.rb +165 -0
  356. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/satisfy.rb +37 -0
  357. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/start_or_end_with.rb +94 -0
  358. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/throw_symbol.rb +132 -0
  359. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/yield.rb +419 -0
  360. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/composable.rb +185 -0
  361. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/dsl.rb +466 -0
  362. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/english_phrasing.rb +58 -0
  363. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +73 -0
  364. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/fail_matchers.rb +42 -0
  365. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/generated_descriptions.rb +42 -0
  366. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/matcher_delegator.rb +35 -0
  367. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/matcher_protocol.rb +99 -0
  368. data/vendor/bundle/gems/rspec-mocks-3.5.0/.document +5 -0
  369. data/vendor/bundle/gems/rspec-mocks-3.5.0/.yardopts +6 -0
  370. data/vendor/bundle/gems/rspec-mocks-3.5.0/Changelog.md +1043 -0
  371. data/vendor/bundle/gems/rspec-mocks-3.5.0/LICENSE.md +25 -0
  372. data/vendor/bundle/gems/rspec-mocks-3.5.0/README.md +445 -0
  373. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks.rb +130 -0
  374. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance.rb +11 -0
  375. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/chain.rb +110 -0
  376. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/error_generator.rb +31 -0
  377. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/expect_chain_chain.rb +35 -0
  378. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/expectation_chain.rb +48 -0
  379. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/message_chains.rb +83 -0
  380. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/proxy.rb +116 -0
  381. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/recorder.rb +289 -0
  382. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/stub_chain.rb +47 -0
  383. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/stub_chain_chain.rb +28 -0
  384. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/argument_list_matcher.rb +100 -0
  385. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/argument_matchers.rb +320 -0
  386. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/configuration.rb +205 -0
  387. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/error_generator.rb +369 -0
  388. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/example_methods.rb +422 -0
  389. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/instance_method_stasher.rb +135 -0
  390. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/marshal_extension.rb +41 -0
  391. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/matchers/expectation_customization.rb +20 -0
  392. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/matchers/have_received.rb +130 -0
  393. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/matchers/receive.rb +132 -0
  394. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/matchers/receive_message_chain.rb +82 -0
  395. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/matchers/receive_messages.rb +77 -0
  396. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/message_chain.rb +87 -0
  397. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/message_expectation.rb +740 -0
  398. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/method_double.rb +287 -0
  399. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/method_reference.rb +202 -0
  400. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/minitest_integration.rb +68 -0
  401. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/mutate_const.rb +335 -0
  402. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/object_reference.rb +149 -0
  403. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/order_group.rb +81 -0
  404. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/proxy.rb +489 -0
  405. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/space.rb +238 -0
  406. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/standalone.rb +3 -0
  407. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/syntax.rb +325 -0
  408. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/targets.rb +124 -0
  409. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/test_double.rb +170 -0
  410. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/verifying_double.rb +129 -0
  411. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/verifying_message_expectation.rb +54 -0
  412. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/verifying_proxy.rb +213 -0
  413. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/version.rb +9 -0
  414. data/vendor/bundle/gems/rspec-support-3.5.0/Changelog.md +192 -0
  415. data/vendor/bundle/gems/rspec-support-3.5.0/LICENSE.md +23 -0
  416. data/vendor/bundle/gems/rspec-support-3.5.0/README.md +40 -0
  417. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support.rb +139 -0
  418. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/caller_filter.rb +83 -0
  419. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/comparable_version.rb +46 -0
  420. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/differ.rb +215 -0
  421. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/directory_maker.rb +63 -0
  422. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/encoded_string.rb +165 -0
  423. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/fuzzy_matcher.rb +48 -0
  424. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/hunk_generator.rb +47 -0
  425. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/matcher_definition.rb +42 -0
  426. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/method_signature_verifier.rb +392 -0
  427. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/mutex.rb +73 -0
  428. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/object_formatter.rb +249 -0
  429. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/recursive_const_methods.rb +76 -0
  430. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/reentrant_mutex.rb +53 -0
  431. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/ruby_features.rb +149 -0
  432. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec.rb +81 -0
  433. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/deprecation_helpers.rb +64 -0
  434. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/formatting_support.rb +9 -0
  435. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/in_sub_process.rb +52 -0
  436. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/library_wide_checks.rb +150 -0
  437. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/shell_out.rb +82 -0
  438. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/stderr_splitter.rb +63 -0
  439. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/string_matcher.rb +46 -0
  440. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/with_isolated_directory.rb +13 -0
  441. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/with_isolated_stderr.rb +13 -0
  442. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/version.rb +7 -0
  443. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/warnings.rb +39 -0
  444. data/vendor/bundle/specifications/diff-lcs-1.3.gemspec +61 -0
  445. data/vendor/bundle/specifications/rake-10.5.0.gemspec +43 -0
  446. data/vendor/bundle/specifications/rspec-3.5.0.gemspec +42 -0
  447. data/vendor/bundle/specifications/rspec-core-3.5.4.gemspec +62 -0
  448. data/vendor/bundle/specifications/rspec-expectations-3.5.0.gemspec +50 -0
  449. data/vendor/bundle/specifications/rspec-mocks-3.5.0.gemspec +50 -0
  450. data/vendor/bundle/specifications/rspec-support-3.5.0.gemspec +41 -0
  451. metadata +534 -0
@@ -0,0 +1,143 @@
1
+ module RSpec
2
+ module Matchers
3
+ module BuiltIn
4
+ # @api private
5
+ # Provides the implementation for `include`.
6
+ # Not intended to be instantiated directly.
7
+ class Include < BaseMatcher
8
+ # @private
9
+ attr_reader :expecteds
10
+
11
+ def initialize(*expecteds)
12
+ @expecteds = expecteds
13
+ end
14
+
15
+ # @api private
16
+ # @return [Boolean]
17
+ def matches?(actual)
18
+ perform_match(actual) { |v| v }
19
+ end
20
+
21
+ # @api private
22
+ # @return [Boolean]
23
+ def does_not_match?(actual)
24
+ perform_match(actual) { |v| !v }
25
+ end
26
+
27
+ # @api private
28
+ # @return [String]
29
+ def description
30
+ improve_hash_formatting("include#{readable_list_of(expecteds)}")
31
+ end
32
+
33
+ # @api private
34
+ # @return [String]
35
+ def failure_message
36
+ format_failure_message("to") { super }
37
+ end
38
+
39
+ # @api private
40
+ # @return [String]
41
+ def failure_message_when_negated
42
+ format_failure_message("not to") { super }
43
+ end
44
+
45
+ # @api private
46
+ # @return [Boolean]
47
+ def diffable?
48
+ !diff_would_wrongly_highlight_matched_item?
49
+ end
50
+
51
+ # @api private
52
+ # @return [Array, Hash]
53
+ def expected
54
+ if expecteds.one? && Hash === expecteds.first
55
+ expecteds.first
56
+ else
57
+ expecteds
58
+ end
59
+ end
60
+
61
+ private
62
+
63
+ def format_failure_message(preposition)
64
+ if actual.respond_to?(:include?)
65
+ improve_hash_formatting("expected #{description_of @actual} #{preposition} include#{readable_list_of @divergent_items}")
66
+ else
67
+ improve_hash_formatting(yield) + ", but it does not respond to `include?`"
68
+ end
69
+ end
70
+
71
+ def readable_list_of(items)
72
+ described_items = surface_descriptions_in(items)
73
+ if described_items.all? { |item| item.is_a?(Hash) }
74
+ " #{described_items.inject(:merge).inspect}"
75
+ else
76
+ EnglishPhrasing.list(described_items)
77
+ end
78
+ end
79
+
80
+ def perform_match(actual, &block)
81
+ @actual = actual
82
+ @divergent_items = excluded_from_actual(&block)
83
+ actual.respond_to?(:include?) && @divergent_items.empty?
84
+ end
85
+
86
+ def excluded_from_actual
87
+ return [] unless @actual.respond_to?(:include?)
88
+
89
+ expecteds.inject([]) do |memo, expected_item|
90
+ if comparing_hash_to_a_subset?(expected_item)
91
+ expected_item.each do |(key, value)|
92
+ memo << { key => value } unless yield actual_hash_includes?(key, value)
93
+ end
94
+ elsif comparing_hash_keys?(expected_item)
95
+ memo << expected_item unless yield actual_hash_has_key?(expected_item)
96
+ else
97
+ memo << expected_item unless yield actual_collection_includes?(expected_item)
98
+ end
99
+ memo
100
+ end
101
+ end
102
+
103
+ def comparing_hash_to_a_subset?(expected_item)
104
+ actual.is_a?(Hash) && expected_item.is_a?(Hash)
105
+ end
106
+
107
+ def actual_hash_includes?(expected_key, expected_value)
108
+ actual_value = actual.fetch(expected_key) { return false }
109
+ values_match?(expected_value, actual_value)
110
+ end
111
+
112
+ def comparing_hash_keys?(expected_item)
113
+ actual.is_a?(Hash) && !expected_item.is_a?(Hash)
114
+ end
115
+
116
+ def actual_hash_has_key?(expected_key)
117
+ # We check `key?` first for perf:
118
+ # `key?` is O(1), but `any?` is O(N).
119
+ actual.key?(expected_key) ||
120
+ actual.keys.any? { |key| values_match?(expected_key, key) }
121
+ end
122
+
123
+ def actual_collection_includes?(expected_item)
124
+ return true if actual.include?(expected_item)
125
+
126
+ # String lacks an `any?` method...
127
+ return false unless actual.respond_to?(:any?)
128
+
129
+ actual.any? { |value| values_match?(expected_item, value) }
130
+ end
131
+
132
+ def diff_would_wrongly_highlight_matched_item?
133
+ return false unless actual.is_a?(String) && expected.is_a?(Array)
134
+
135
+ lines = actual.split("\n")
136
+ expected.any? do |str|
137
+ actual.include?(str) && lines.none? { |line| line == str }
138
+ end
139
+ end
140
+ end
141
+ end
142
+ end
143
+ end
@@ -0,0 +1,106 @@
1
+ module RSpec
2
+ module Matchers
3
+ module BuiltIn
4
+ # @api private
5
+ # Provides the implementation for `match`.
6
+ # Not intended to be instantiated directly.
7
+ class Match < BaseMatcher
8
+ def initialize(expected)
9
+ super(expected)
10
+
11
+ @expected_captures = nil
12
+ end
13
+ # @api private
14
+ # @return [String]
15
+ def description
16
+ if @expected_captures && @expected.match(actual)
17
+ "match #{surface_descriptions_in(expected).inspect} with captures #{surface_descriptions_in(@expected_captures).inspect}"
18
+ else
19
+ "match #{surface_descriptions_in(expected).inspect}"
20
+ end
21
+ end
22
+
23
+ # @api private
24
+ # @return [Boolean]
25
+ def diffable?
26
+ true
27
+ end
28
+
29
+ # Used to specify the captures we match against
30
+ # @return [self]
31
+ def with_captures(*captures)
32
+ @expected_captures = captures
33
+ self
34
+ end
35
+
36
+ private
37
+
38
+ def match(expected, actual)
39
+ return match_captures(expected, actual) if @expected_captures
40
+ return true if values_match?(expected, actual)
41
+ return false unless can_safely_call_match?(expected, actual)
42
+ actual.match(expected)
43
+ end
44
+
45
+ def can_safely_call_match?(expected, actual)
46
+ return false unless actual.respond_to?(:match)
47
+
48
+ !(RSpec::Matchers.is_a_matcher?(expected) &&
49
+ (String === actual || Regexp === actual))
50
+ end
51
+
52
+ def match_captures(expected, actual)
53
+ match = actual.match(expected)
54
+ if match
55
+ match = ReliableMatchData.new(match)
56
+ if match.names.empty?
57
+ values_match?(@expected_captures, match.captures)
58
+ else
59
+ expected_matcher = @expected_captures.last
60
+ values_match?(expected_matcher, Hash[match.names.zip(match.captures)]) ||
61
+ values_match?(expected_matcher, Hash[match.names.map(&:to_sym).zip(match.captures)]) ||
62
+ values_match?(@expected_captures, match.captures)
63
+ end
64
+ else
65
+ false
66
+ end
67
+ end
68
+ end
69
+
70
+ # @api private
71
+ # Used to wrap match data and make it reliable for 1.8.7
72
+ class ReliableMatchData
73
+ def initialize(match_data)
74
+ @match_data = match_data
75
+ end
76
+
77
+ if RUBY_VERSION == "1.8.7"
78
+ # @api private
79
+ # Returns match data names for named captures
80
+ # @return Array
81
+ def names
82
+ []
83
+ end
84
+ else
85
+ # @api private
86
+ # Returns match data names for named captures
87
+ # @return Array
88
+ def names
89
+ match_data.names
90
+ end
91
+ end
92
+
93
+ # @api private
94
+ # returns an array of captures from the match data
95
+ # @return Array
96
+ def captures
97
+ match_data.captures
98
+ end
99
+
100
+ protected
101
+
102
+ attr_reader :match_data
103
+ end
104
+ end
105
+ end
106
+ end
@@ -0,0 +1,128 @@
1
+ require 'rspec/support'
2
+
3
+ module RSpec
4
+ module Matchers
5
+ module BuiltIn
6
+ # @api private
7
+ # Provides the implementation for operator matchers.
8
+ # Not intended to be instantiated directly.
9
+ # Only available for use with `should`.
10
+ class OperatorMatcher
11
+ class << self
12
+ # @private
13
+ def registry
14
+ @registry ||= {}
15
+ end
16
+
17
+ # @private
18
+ def register(klass, operator, matcher)
19
+ registry[klass] ||= {}
20
+ registry[klass][operator] = matcher
21
+ end
22
+
23
+ # @private
24
+ def unregister(klass, operator)
25
+ registry[klass] && registry[klass].delete(operator)
26
+ end
27
+
28
+ # @private
29
+ def get(klass, operator)
30
+ klass.ancestors.each do |ancestor|
31
+ matcher = registry[ancestor] && registry[ancestor][operator]
32
+ return matcher if matcher
33
+ end
34
+
35
+ nil
36
+ end
37
+ end
38
+
39
+ register Enumerable, '=~', BuiltIn::ContainExactly
40
+
41
+ def initialize(actual)
42
+ @actual = actual
43
+ end
44
+
45
+ # @private
46
+ def self.use_custom_matcher_or_delegate(operator)
47
+ define_method(operator) do |expected|
48
+ if !has_non_generic_implementation_of?(operator) && (matcher = OperatorMatcher.get(@actual.class, operator))
49
+ @actual.__send__(::RSpec::Matchers.last_expectation_handler.should_method, matcher.new(expected))
50
+ else
51
+ eval_match(@actual, operator, expected)
52
+ end
53
+ end
54
+
55
+ negative_operator = operator.sub(/^=/, '!')
56
+ if negative_operator != operator && respond_to?(negative_operator)
57
+ define_method(negative_operator) do |_expected|
58
+ opposite_should = ::RSpec::Matchers.last_expectation_handler.opposite_should_method
59
+ raise "RSpec does not support `#{::RSpec::Matchers.last_expectation_handler.should_method} #{negative_operator} expected`. " \
60
+ "Use `#{opposite_should} #{operator} expected` instead."
61
+ end
62
+ end
63
+ end
64
+
65
+ ['==', '===', '=~', '>', '>=', '<', '<='].each do |operator|
66
+ use_custom_matcher_or_delegate operator
67
+ end
68
+
69
+ # @private
70
+ def fail_with_message(message)
71
+ RSpec::Expectations.fail_with(message, @expected, @actual)
72
+ end
73
+
74
+ # @api private
75
+ # @return [String]
76
+ def description
77
+ "#{@operator} #{RSpec::Support::ObjectFormatter.format(@expected)}"
78
+ end
79
+
80
+ private
81
+
82
+ def has_non_generic_implementation_of?(op)
83
+ Support.method_handle_for(@actual, op).owner != ::Kernel
84
+ rescue NameError
85
+ false
86
+ end
87
+
88
+ def eval_match(actual, operator, expected)
89
+ ::RSpec::Matchers.last_matcher = self
90
+ @operator, @expected = operator, expected
91
+ __delegate_operator(actual, operator, expected)
92
+ end
93
+ end
94
+
95
+ # @private
96
+ # Handles operator matcher for `should`.
97
+ class PositiveOperatorMatcher < OperatorMatcher
98
+ def __delegate_operator(actual, operator, expected)
99
+ if actual.__send__(operator, expected)
100
+ true
101
+ else
102
+ expected_formatted = RSpec::Support::ObjectFormatter.format(expected)
103
+ actual_formatted = RSpec::Support::ObjectFormatter.format(actual)
104
+
105
+ if ['==', '===', '=~'].include?(operator)
106
+ fail_with_message("expected: #{expected_formatted}\n got: #{actual_formatted} (using #{operator})")
107
+ else
108
+ fail_with_message("expected: #{operator} #{expected_formatted}\n got: #{operator.gsub(/./, ' ')} #{actual_formatted}")
109
+ end
110
+ end
111
+ end
112
+ end
113
+
114
+ # @private
115
+ # Handles operator matcher for `should_not`.
116
+ class NegativeOperatorMatcher < OperatorMatcher
117
+ def __delegate_operator(actual, operator, expected)
118
+ return false unless actual.__send__(operator, expected)
119
+
120
+ expected_formatted = RSpec::Support::ObjectFormatter.format(expected)
121
+ actual_formatted = RSpec::Support::ObjectFormatter.format(actual)
122
+
123
+ fail_with_message("expected not: #{operator} #{expected_formatted}\n got: #{operator.gsub(/./, ' ')} #{actual_formatted}")
124
+ end
125
+ end
126
+ end
127
+ end
128
+ end
@@ -0,0 +1,200 @@
1
+ require 'stringio'
2
+
3
+ module RSpec
4
+ module Matchers
5
+ module BuiltIn
6
+ # @api private
7
+ # Provides the implementation for `output`.
8
+ # Not intended to be instantiated directly.
9
+ class Output < BaseMatcher
10
+ def initialize(expected)
11
+ @expected = expected
12
+ @actual = ""
13
+ @block = nil
14
+ @stream_capturer = NullCapture
15
+ end
16
+
17
+ def matches?(block)
18
+ @block = block
19
+ return false unless Proc === block
20
+ @actual = @stream_capturer.capture(block)
21
+ @expected ? values_match?(@expected, @actual) : captured?
22
+ end
23
+
24
+ def does_not_match?(block)
25
+ !matches?(block) && Proc === block
26
+ end
27
+
28
+ # @api public
29
+ # Tells the matcher to match against stdout.
30
+ # Works only when the main Ruby process prints to stdout
31
+ def to_stdout
32
+ @stream_capturer = CaptureStdout
33
+ self
34
+ end
35
+
36
+ # @api public
37
+ # Tells the matcher to match against stderr.
38
+ # Works only when the main Ruby process prints to stderr
39
+ def to_stderr
40
+ @stream_capturer = CaptureStderr
41
+ self
42
+ end
43
+
44
+ # @api public
45
+ # Tells the matcher to match against stdout.
46
+ # Works when subprocesses print to stdout as well.
47
+ # This is significantly (~30x) slower than `to_stdout`
48
+ def to_stdout_from_any_process
49
+ @stream_capturer = CaptureStreamToTempfile.new("stdout", $stdout)
50
+ self
51
+ end
52
+
53
+ # @api public
54
+ # Tells the matcher to match against stderr.
55
+ # Works when subprocesses print to stderr as well.
56
+ # This is significantly (~30x) slower than `to_stderr`
57
+ def to_stderr_from_any_process
58
+ @stream_capturer = CaptureStreamToTempfile.new("stderr", $stderr)
59
+ self
60
+ end
61
+
62
+ # @api private
63
+ # @return [String]
64
+ def failure_message
65
+ "expected block to #{description}, but #{positive_failure_reason}"
66
+ end
67
+
68
+ # @api private
69
+ # @return [String]
70
+ def failure_message_when_negated
71
+ "expected block to not #{description}, but #{negative_failure_reason}"
72
+ end
73
+
74
+ # @api private
75
+ # @return [String]
76
+ def description
77
+ if @expected
78
+ "output #{description_of @expected} to #{@stream_capturer.name}"
79
+ else
80
+ "output to #{@stream_capturer.name}"
81
+ end
82
+ end
83
+
84
+ # @api private
85
+ # @return [Boolean]
86
+ def diffable?
87
+ true
88
+ end
89
+
90
+ # @api private
91
+ # Indicates this matcher matches against a block.
92
+ # @return [True]
93
+ def supports_block_expectations?
94
+ true
95
+ end
96
+
97
+ private
98
+
99
+ def captured?
100
+ @actual.length > 0
101
+ end
102
+
103
+ def positive_failure_reason
104
+ return "was not a block" unless Proc === @block
105
+ return "output #{actual_output_description}" if @expected
106
+ "did not"
107
+ end
108
+
109
+ def negative_failure_reason
110
+ return "was not a block" unless Proc === @block
111
+ "output #{actual_output_description}"
112
+ end
113
+
114
+ def actual_output_description
115
+ return "nothing" unless captured?
116
+ actual_formatted
117
+ end
118
+ end
119
+
120
+ # @private
121
+ module NullCapture
122
+ def self.name
123
+ "some stream"
124
+ end
125
+
126
+ def self.capture(_block)
127
+ raise "You must chain `to_stdout` or `to_stderr` off of the `output(...)` matcher."
128
+ end
129
+ end
130
+
131
+ # @private
132
+ module CaptureStdout
133
+ def self.name
134
+ 'stdout'
135
+ end
136
+
137
+ def self.capture(block)
138
+ captured_stream = StringIO.new
139
+
140
+ original_stream = $stdout
141
+ $stdout = captured_stream
142
+
143
+ block.call
144
+
145
+ captured_stream.string
146
+ ensure
147
+ $stdout = original_stream
148
+ end
149
+ end
150
+
151
+ # @private
152
+ module CaptureStderr
153
+ def self.name
154
+ 'stderr'
155
+ end
156
+
157
+ def self.capture(block)
158
+ captured_stream = StringIO.new
159
+
160
+ original_stream = $stderr
161
+ $stderr = captured_stream
162
+
163
+ block.call
164
+
165
+ captured_stream.string
166
+ ensure
167
+ $stderr = original_stream
168
+ end
169
+ end
170
+
171
+ # @private
172
+ class CaptureStreamToTempfile < Struct.new(:name, :stream)
173
+ def capture(block)
174
+ # We delay loading tempfile until it is actually needed because
175
+ # we want to minimize stdlibs loaded so that users who use a
176
+ # portion of the stdlib can't have passing specs while forgetting
177
+ # to load it themselves. `CaptureStreamToTempfile` is rarely used
178
+ # and `tempfile` pulls in a bunch of things (delegate, tmpdir,
179
+ # thread, fileutils, etc), so it's worth delaying it until this point.
180
+ require 'tempfile'
181
+
182
+ original_stream = stream.clone
183
+ captured_stream = Tempfile.new(name)
184
+
185
+ begin
186
+ captured_stream.sync = true
187
+ stream.reopen(captured_stream)
188
+ block.call
189
+ captured_stream.rewind
190
+ captured_stream.read
191
+ ensure
192
+ stream.reopen(original_stream)
193
+ captured_stream.close
194
+ captured_stream.unlink
195
+ end
196
+ end
197
+ end
198
+ end
199
+ end
200
+ end