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,230 @@
1
+ module RSpec
2
+ module Matchers
3
+ module BuiltIn
4
+ # @api private
5
+ # Provides the implementation for `raise_error`.
6
+ # Not intended to be instantiated directly.
7
+ # rubocop:disable ClassLength
8
+ # rubocop:disable RescueException
9
+ class RaiseError
10
+ include Composable
11
+
12
+ def initialize(expected_error_or_message=nil, expected_message=nil, &block)
13
+ @block = block
14
+ @actual_error = nil
15
+ @warn_about_bare_error = expected_error_or_message.nil?
16
+
17
+ case expected_error_or_message
18
+ when nil
19
+ @expected_error = Exception
20
+ @expected_message = expected_message
21
+ when String
22
+ @expected_error = Exception
23
+ @expected_message = expected_error_or_message
24
+ else
25
+ @expected_error = expected_error_or_message
26
+ @expected_message = expected_message
27
+ end
28
+ end
29
+
30
+ # @api public
31
+ # Specifies the expected error message.
32
+ def with_message(expected_message)
33
+ raise_message_already_set if @expected_message
34
+ @warn_about_bare_error = false
35
+ @expected_message = expected_message
36
+ self
37
+ end
38
+
39
+ # rubocop:disable MethodLength
40
+ # @private
41
+ def matches?(given_proc, negative_expectation=false, &block)
42
+ @given_proc = given_proc
43
+ @block ||= block
44
+ @raised_expected_error = false
45
+ @with_expected_message = false
46
+ @eval_block = false
47
+ @eval_block_passed = false
48
+
49
+ return false unless Proc === given_proc
50
+
51
+ begin
52
+ given_proc.call
53
+ rescue Exception => @actual_error
54
+ if values_match?(@expected_error, @actual_error) ||
55
+ values_match?(@expected_error, @actual_error.message)
56
+ @raised_expected_error = true
57
+ @with_expected_message = verify_message
58
+ end
59
+ end
60
+
61
+ warn_about_bare_error if warning_about_bare_error && !negative_expectation
62
+ eval_block if !negative_expectation && ready_to_eval_block?
63
+
64
+ expectation_matched?
65
+ end
66
+ # rubocop:enable MethodLength
67
+
68
+ # @private
69
+ def does_not_match?(given_proc)
70
+ warn_for_false_positives
71
+ !matches?(given_proc, :negative_expectation) && Proc === given_proc
72
+ end
73
+
74
+ # @private
75
+ def supports_block_expectations?
76
+ true
77
+ end
78
+
79
+ def expects_call_stack_jump?
80
+ true
81
+ end
82
+
83
+ # @api private
84
+ # @return [String]
85
+ def failure_message
86
+ @eval_block ? @actual_error.message : "expected #{expected_error}#{given_error}"
87
+ end
88
+
89
+ # @api private
90
+ # @return [String]
91
+ def failure_message_when_negated
92
+ "expected no #{expected_error}#{given_error}"
93
+ end
94
+
95
+ # @api private
96
+ # @return [String]
97
+ def description
98
+ "raise #{expected_error}"
99
+ end
100
+
101
+ private
102
+
103
+ def expectation_matched?
104
+ error_and_message_match? && block_matches?
105
+ end
106
+
107
+ def error_and_message_match?
108
+ @raised_expected_error && @with_expected_message
109
+ end
110
+
111
+ def block_matches?
112
+ @eval_block ? @eval_block_passed : true
113
+ end
114
+
115
+ def ready_to_eval_block?
116
+ @raised_expected_error && @with_expected_message && @block
117
+ end
118
+
119
+ def eval_block
120
+ @eval_block = true
121
+ begin
122
+ @block[@actual_error]
123
+ @eval_block_passed = true
124
+ rescue Exception => err
125
+ @actual_error = err
126
+ end
127
+ end
128
+
129
+ def verify_message
130
+ return true if @expected_message.nil?
131
+ values_match?(@expected_message, @actual_error.message.to_s)
132
+ end
133
+
134
+ def warn_for_false_positives
135
+ expression = if expecting_specific_exception? && @expected_message
136
+ "`expect { }.not_to raise_error(SpecificErrorClass, message)`"
137
+ elsif expecting_specific_exception?
138
+ "`expect { }.not_to raise_error(SpecificErrorClass)`"
139
+ elsif @expected_message
140
+ "`expect { }.not_to raise_error(message)`"
141
+ end
142
+
143
+ return unless expression
144
+
145
+ warn_about_negative_false_positive expression
146
+ end
147
+
148
+ def handle_warning(message)
149
+ RSpec::Expectations.configuration.false_positives_handler.call(message)
150
+ end
151
+
152
+ def warning_about_bare_error
153
+ @warn_about_bare_error && @block.nil?
154
+ end
155
+
156
+ def warn_about_bare_error
157
+ handle_warning("Using the `raise_error` matcher without providing a specific " \
158
+ "error or message risks false positives, since `raise_error` " \
159
+ "will match when Ruby raises a `NoMethodError`, `NameError` or " \
160
+ "`ArgumentError`, potentially allowing the expectation to pass " \
161
+ "without even executing the method you are intending to call. " \
162
+ "#{warning}"\
163
+ "Instead consider providing a specific error class or message. " \
164
+ "This message can be suppressed by setting: " \
165
+ "`RSpec::Expectations.configuration.on_potential_false" \
166
+ "_positives = :nothing`")
167
+ end
168
+
169
+ def warn_about_negative_false_positive(expression)
170
+ handle_warning("Using #{expression} risks false positives, since literally " \
171
+ "any other error would cause the expectation to pass, " \
172
+ "including those raised by Ruby (e.g. NoMethodError, NameError " \
173
+ "and ArgumentError), meaning the code you are intending to test " \
174
+ "may not even get reached. Instead consider using " \
175
+ "`expect {}.not_to raise_error` or `expect { }.to raise_error" \
176
+ "(DifferentSpecificErrorClass)`. This message can be suppressed by " \
177
+ "setting: `RSpec::Expectations.configuration.on_potential_false" \
178
+ "_positives = :nothing`")
179
+ end
180
+
181
+ def expected_error
182
+ case @expected_message
183
+ when nil
184
+ if RSpec::Support.is_a_matcher?(@expected_error)
185
+ "Exception with #{description_of(@expected_error)}"
186
+ else
187
+ description_of(@expected_error)
188
+ end
189
+ when Regexp
190
+ "#{@expected_error} with message matching #{description_of(@expected_message)}"
191
+ else
192
+ "#{@expected_error} with #{description_of(@expected_message)}"
193
+ end
194
+ end
195
+
196
+ def format_backtrace(backtrace)
197
+ formatter = Matchers.configuration.backtrace_formatter
198
+ formatter.format_backtrace(backtrace)
199
+ end
200
+
201
+ def given_error
202
+ return " but was not given a block" unless Proc === @given_proc
203
+ return " but nothing was raised" unless @actual_error
204
+
205
+ backtrace = format_backtrace(@actual_error.backtrace)
206
+ [
207
+ ", got #{description_of(@actual_error)} with backtrace:",
208
+ *backtrace
209
+ ].join("\n # ")
210
+ end
211
+
212
+ def expecting_specific_exception?
213
+ @expected_error != Exception
214
+ end
215
+
216
+ def raise_message_already_set
217
+ raise "`expect { }.to raise_error(message).with_message(message)` is not valid. " \
218
+ 'The matcher only allows the expected message to be specified once'
219
+ end
220
+
221
+ def warning
222
+ warning = "Actual error raised was #{description_of(@actual_error)}. "
223
+ warning if @actual_error
224
+ end
225
+ end
226
+ # rubocop:enable RescueException
227
+ # rubocop:enable ClassLength
228
+ end
229
+ end
230
+ end
@@ -0,0 +1,165 @@
1
+ RSpec::Support.require_rspec_support "method_signature_verifier"
2
+
3
+ module RSpec
4
+ module Matchers
5
+ module BuiltIn
6
+ # @api private
7
+ # Provides the implementation for `respond_to`.
8
+ # Not intended to be instantiated directly.
9
+ class RespondTo < BaseMatcher
10
+ def initialize(*names)
11
+ @names = names
12
+ @expected_arity = nil
13
+ @expected_keywords = []
14
+ @unlimited_arguments = nil
15
+ @arbitrary_keywords = nil
16
+ end
17
+
18
+ # @api public
19
+ # Specifies the number of expected arguments.
20
+ #
21
+ # @example
22
+ # expect(obj).to respond_to(:message).with(3).arguments
23
+ def with(n)
24
+ @expected_arity = n
25
+ self
26
+ end
27
+
28
+ # @api public
29
+ # Specifies keyword arguments, if any.
30
+ #
31
+ # @example
32
+ # expect(obj).to respond_to(:message).with_keywords(:color, :shape)
33
+ # @example with an expected number of arguments
34
+ # expect(obj).to respond_to(:message).with(3).arguments.and_keywords(:color, :shape)
35
+ def with_keywords(*keywords)
36
+ @expected_keywords = keywords
37
+ self
38
+ end
39
+ alias :and_keywords :with_keywords
40
+
41
+ # @api public
42
+ # Specifies that the method accepts any keyword, i.e. the method has
43
+ # a splatted keyword parameter of the form **kw_args.
44
+ #
45
+ # @example
46
+ # expect(obj).to respond_to(:message).with_any_keywords
47
+ def with_any_keywords
48
+ @arbitrary_keywords = true
49
+ self
50
+ end
51
+ alias :and_any_keywords :with_any_keywords
52
+
53
+ # @api public
54
+ # Specifies that the number of arguments has no upper limit, i.e. the
55
+ # method has a splatted parameter of the form *args.
56
+ #
57
+ # @example
58
+ # expect(obj).to respond_to(:message).with_unlimited_arguments
59
+ def with_unlimited_arguments
60
+ @unlimited_arguments = true
61
+ self
62
+ end
63
+ alias :and_unlimited_arguments :with_unlimited_arguments
64
+
65
+ # @api public
66
+ # No-op. Intended to be used as syntactic sugar when using `with`.
67
+ #
68
+ # @example
69
+ # expect(obj).to respond_to(:message).with(3).arguments
70
+ def argument
71
+ self
72
+ end
73
+ alias :arguments :argument
74
+
75
+ # @private
76
+ def matches?(actual)
77
+ find_failing_method_names(actual, :reject).empty?
78
+ end
79
+
80
+ # @private
81
+ def does_not_match?(actual)
82
+ find_failing_method_names(actual, :select).empty?
83
+ end
84
+
85
+ # @api private
86
+ # @return [String]
87
+ def failure_message
88
+ "expected #{actual_formatted} to respond to #{@failing_method_names.map { |name| description_of(name) }.join(', ')}#{with_arity}"
89
+ end
90
+
91
+ # @api private
92
+ # @return [String]
93
+ def failure_message_when_negated
94
+ failure_message.sub(/to respond to/, 'not to respond to')
95
+ end
96
+
97
+ # @api private
98
+ # @return [String]
99
+ def description
100
+ "respond to #{pp_names}#{with_arity}"
101
+ end
102
+
103
+ private
104
+
105
+ def find_failing_method_names(actual, filter_method)
106
+ @actual = actual
107
+ @failing_method_names = @names.__send__(filter_method) do |name|
108
+ @actual.respond_to?(name) && matches_arity?(actual, name)
109
+ end
110
+ end
111
+
112
+ def matches_arity?(actual, name)
113
+ expectation = Support::MethodSignatureExpectation.new
114
+
115
+ if @expected_arity.is_a?(Range)
116
+ expectation.min_count = @expected_arity.min
117
+ expectation.max_count = @expected_arity.max
118
+ else
119
+ expectation.min_count = @expected_arity
120
+ end
121
+
122
+ expectation.keywords = @expected_keywords
123
+ expectation.expect_unlimited_arguments = @unlimited_arguments
124
+ expectation.expect_arbitrary_keywords = @arbitrary_keywords
125
+
126
+ return true if expectation.empty?
127
+
128
+ signature = Support::MethodSignature.new(Support.method_handle_for(actual, name))
129
+
130
+ Support::StrictSignatureVerifier.new(signature).with_expectation(expectation).valid?
131
+ end
132
+
133
+ def with_arity
134
+ str = ''
135
+ str << " with #{with_arity_string}" if @expected_arity
136
+ str << " #{str.length == 0 ? 'with' : 'and'} #{with_keywords_string}" if @expected_keywords && @expected_keywords.count > 0
137
+ str << " #{str.length == 0 ? 'with' : 'and'} unlimited arguments" if @unlimited_arguments
138
+ str << " #{str.length == 0 ? 'with' : 'and'} any keywords" if @arbitrary_keywords
139
+ str
140
+ end
141
+
142
+ def with_arity_string
143
+ "#{@expected_arity} argument#{@expected_arity == 1 ? '' : 's'}"
144
+ end
145
+
146
+ def with_keywords_string
147
+ kw_str = case @expected_keywords.count
148
+ when 1
149
+ @expected_keywords.first.inspect
150
+ when 2
151
+ @expected_keywords.map(&:inspect).join(' and ')
152
+ else
153
+ "#{@expected_keywords[0...-1].map(&:inspect).join(', ')}, and #{@expected_keywords.last.inspect}"
154
+ end
155
+
156
+ "keyword#{@expected_keywords.count == 1 ? '' : 's'} #{kw_str}"
157
+ end
158
+
159
+ def pp_names
160
+ @names.length == 1 ? "##{@names.first}" : description_of(@names)
161
+ end
162
+ end
163
+ end
164
+ end
165
+ end
@@ -0,0 +1,37 @@
1
+ module RSpec
2
+ module Matchers
3
+ module BuiltIn
4
+ # @api private
5
+ # Provides the implementation for `satisfy`.
6
+ # Not intended to be instantiated directly.
7
+ class Satisfy < BaseMatcher
8
+ # @private
9
+ attr_reader :description
10
+
11
+ def initialize(description="satisfy block", &block)
12
+ @description = description
13
+ @block = block
14
+ end
15
+
16
+ # @private
17
+ def matches?(actual, &block)
18
+ @block = block if block
19
+ @actual = actual
20
+ @block.call(actual)
21
+ end
22
+
23
+ # @api private
24
+ # @return [String]
25
+ def failure_message
26
+ "expected #{actual_formatted} to #{description}"
27
+ end
28
+
29
+ # @api private
30
+ # @return [String]
31
+ def failure_message_when_negated
32
+ "expected #{actual_formatted} not to #{description}"
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,94 @@
1
+ module RSpec
2
+ module Matchers
3
+ module BuiltIn
4
+ # @api private
5
+ # Base class for the `end_with` and `start_with` matchers.
6
+ # Not intended to be instantiated directly.
7
+ class StartOrEndWith < BaseMatcher
8
+ def initialize(*expected)
9
+ @actual_does_not_have_ordered_elements = false
10
+ @expected = expected.length == 1 ? expected.first : expected
11
+ end
12
+
13
+ # @api private
14
+ # @return [String]
15
+ def failure_message
16
+ super.tap do |msg|
17
+ if @actual_does_not_have_ordered_elements
18
+ msg << ", but it does not have ordered elements"
19
+ elsif !actual.respond_to?(:[])
20
+ msg << ", but it cannot be indexed using #[]"
21
+ end
22
+ end
23
+ end
24
+
25
+ # @api private
26
+ # @return [String]
27
+ def description
28
+ return super unless Hash === expected
29
+ english_name = EnglishPhrasing.split_words(self.class.matcher_name)
30
+ description_of_expected = surface_descriptions_in(expected).inspect
31
+ "#{english_name} #{description_of_expected}"
32
+ end
33
+
34
+ private
35
+
36
+ def match(_expected, actual)
37
+ return false unless actual.respond_to?(:[])
38
+
39
+ begin
40
+ return true if subsets_comparable? && subset_matches?
41
+ element_matches?
42
+ rescue ArgumentError
43
+ @actual_does_not_have_ordered_elements = true
44
+ return false
45
+ end
46
+ end
47
+
48
+ def subsets_comparable?
49
+ # Structs support the Enumerable interface but don't really have
50
+ # the semantics of a subset of a larger set...
51
+ return false if Struct === expected
52
+
53
+ expected.respond_to?(:length)
54
+ end
55
+ end
56
+
57
+ # For RSpec 3.1, the base class was named `StartAndEndWith`. For SemVer reasons,
58
+ # we still provide this constant until 4.0.
59
+ # @deprecated Use StartOrEndWith instead.
60
+ # @private
61
+ StartAndEndWith = StartOrEndWith
62
+
63
+ # @api private
64
+ # Provides the implementation for `start_with`.
65
+ # Not intended to be instantiated directly.
66
+ class StartWith < StartOrEndWith
67
+ private
68
+
69
+ def subset_matches?
70
+ values_match?(expected, actual[0, expected.length])
71
+ end
72
+
73
+ def element_matches?
74
+ values_match?(expected, actual[0])
75
+ end
76
+ end
77
+
78
+ # @api private
79
+ # Provides the implementation for `end_with`.
80
+ # Not intended to be instantiated directly.
81
+ class EndWith < StartOrEndWith
82
+ private
83
+
84
+ def subset_matches?
85
+ values_match?(expected, actual[-expected.length, expected.length])
86
+ end
87
+
88
+ def element_matches?
89
+ values_match?(expected, actual[-1])
90
+ end
91
+ end
92
+ end
93
+ end
94
+ end