jscop 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (479) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/.replit +1 -1
  4. data/.rubocop.yml +2 -1
  5. data/.stickler.yml +2 -1
  6. data/.travis.yml +7 -0
  7. data/Gemfile +2 -2
  8. data/README.md +49 -34
  9. data/bin/console +2 -2
  10. data/exe/jscop +1 -2
  11. data/jscop.gemspec +20 -23
  12. data/lib/helpers/lint_ware.rb +1 -1
  13. data/lib/jscop/version.rb +1 -1
  14. data/lib/jscop.rb +1 -1
  15. metadata +4 -467
  16. data/Gemfile.lock +0 -59
  17. data/vendor/cache/ruby/2.6.0/bin/htmldiff +0 -29
  18. data/vendor/cache/ruby/2.6.0/bin/ldiff +0 -29
  19. data/vendor/cache/ruby/2.6.0/bin/rake +0 -27
  20. data/vendor/cache/ruby/2.6.0/bin/rspec +0 -27
  21. data/vendor/cache/ruby/2.6.0/gems/colorize-0.8.1/CHANGELOG +0 -65
  22. data/vendor/cache/ruby/2.6.0/gems/colorize-0.8.1/LICENSE +0 -339
  23. data/vendor/cache/ruby/2.6.0/gems/colorize-0.8.1/README.md +0 -105
  24. data/vendor/cache/ruby/2.6.0/gems/colorize-0.8.1/Rakefile +0 -13
  25. data/vendor/cache/ruby/2.6.0/gems/colorize-0.8.1/colorize.gemspec +0 -36
  26. data/vendor/cache/ruby/2.6.0/gems/colorize-0.8.1/lib/colorize/class_methods.rb +0 -120
  27. data/vendor/cache/ruby/2.6.0/gems/colorize-0.8.1/lib/colorize/instance_methods.rb +0 -132
  28. data/vendor/cache/ruby/2.6.0/gems/colorize-0.8.1/lib/colorize.rb +0 -12
  29. data/vendor/cache/ruby/2.6.0/gems/colorize-0.8.1/lib/colorized_string.rb +0 -19
  30. data/vendor/cache/ruby/2.6.0/gems/colorize-0.8.1/test/test_colorize.rb +0 -164
  31. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/.rspec +0 -1
  32. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/Code-of-Conduct.md +0 -74
  33. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/Contributing.md +0 -83
  34. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/History.md +0 -220
  35. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/License.md +0 -39
  36. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/Manifest.txt +0 -37
  37. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/README.rdoc +0 -84
  38. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/Rakefile +0 -57
  39. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/autotest/discover.rb +0 -1
  40. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/bin/htmldiff +0 -32
  41. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/bin/ldiff +0 -6
  42. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/docs/COPYING.txt +0 -339
  43. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/docs/artistic.txt +0 -127
  44. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff/lcs/array.rb +0 -7
  45. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff/lcs/block.rb +0 -37
  46. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff/lcs/callbacks.rb +0 -322
  47. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff/lcs/change.rb +0 -181
  48. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff/lcs/htmldiff.rb +0 -149
  49. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff/lcs/hunk.rb +0 -276
  50. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff/lcs/internals.rb +0 -307
  51. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff/lcs/ldiff.rb +0 -167
  52. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff/lcs/string.rb +0 -5
  53. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff/lcs.rb +0 -725
  54. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/lib/diff-lcs.rb +0 -3
  55. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/change_spec.rb +0 -65
  56. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/diff_spec.rb +0 -47
  57. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/fixtures/ds1.csv +0 -50
  58. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/fixtures/ds2.csv +0 -51
  59. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/hunk_spec.rb +0 -72
  60. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/issues_spec.rb +0 -49
  61. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/lcs_spec.rb +0 -56
  62. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/ldiff_spec.rb +0 -47
  63. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/patch_spec.rb +0 -422
  64. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/sdiff_spec.rb +0 -214
  65. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/spec_helper.rb +0 -321
  66. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/traverse_balanced_spec.rb +0 -310
  67. data/vendor/cache/ruby/2.6.0/gems/diff-lcs-1.3/spec/traverse_sequences_spec.rb +0 -139
  68. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/.autotest +0 -7
  69. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/.rubocop.yml +0 -27
  70. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/.togglerc +0 -7
  71. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/CONTRIBUTING.rdoc +0 -38
  72. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/History.rdoc +0 -659
  73. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/MIT-LICENSE +0 -21
  74. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/Manifest.txt +0 -166
  75. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/README.rdoc +0 -139
  76. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/Rakefile +0 -81
  77. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/bin/rake +0 -33
  78. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/command_line_usage.rdoc +0 -158
  79. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/example/Rakefile1 +0 -38
  80. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/example/Rakefile2 +0 -35
  81. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/example/a.c +0 -6
  82. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/example/b.c +0 -6
  83. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/example/main.c +0 -11
  84. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/glossary.rdoc +0 -42
  85. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/jamis.rb +0 -591
  86. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/proto_rake.rdoc +0 -127
  87. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/rake.1 +0 -141
  88. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/rakefile.rdoc +0 -624
  89. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/rational.rdoc +0 -151
  90. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.4.14.rdoc +0 -23
  91. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.4.15.rdoc +0 -35
  92. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.5.0.rdoc +0 -53
  93. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.5.3.rdoc +0 -78
  94. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.5.4.rdoc +0 -46
  95. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.6.0.rdoc +0 -141
  96. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.7.0.rdoc +0 -119
  97. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.7.1.rdoc +0 -59
  98. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.7.2.rdoc +0 -121
  99. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.7.3.rdoc +0 -47
  100. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.8.0.rdoc +0 -114
  101. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.8.2.rdoc +0 -165
  102. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.8.3.rdoc +0 -112
  103. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.8.4.rdoc +0 -147
  104. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.8.5.rdoc +0 -53
  105. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.8.6.rdoc +0 -37
  106. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.8.7.rdoc +0 -55
  107. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.9.0.rdoc +0 -112
  108. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.9.1.rdoc +0 -52
  109. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.9.2.2.rdoc +0 -55
  110. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.9.2.rdoc +0 -49
  111. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.9.3.rdoc +0 -102
  112. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.9.4.rdoc +0 -60
  113. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.9.5.rdoc +0 -55
  114. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-0.9.6.rdoc +0 -64
  115. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-10.0.0.rdoc +0 -178
  116. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-10.0.1.rdoc +0 -58
  117. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-10.0.2.rdoc +0 -53
  118. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-10.0.3.rdoc +0 -191
  119. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/doc/release_notes/rake-10.1.0.rdoc +0 -61
  120. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/alt_system.rb +0 -110
  121. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/application.rb +0 -790
  122. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/backtrace.rb +0 -23
  123. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/clean.rb +0 -76
  124. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/cloneable.rb +0 -16
  125. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/contrib/.document +0 -1
  126. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/contrib/compositepublisher.rb +0 -21
  127. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/contrib/ftptools.rb +0 -137
  128. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/contrib/publisher.rb +0 -81
  129. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/contrib/rubyforgepublisher.rb +0 -18
  130. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/contrib/sshpublisher.rb +0 -61
  131. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/contrib/sys.rb +0 -4
  132. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/cpu_counter.rb +0 -125
  133. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/default_loader.rb +0 -14
  134. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/dsl_definition.rb +0 -201
  135. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/early_time.rb +0 -21
  136. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/ext/core.rb +0 -25
  137. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/ext/module.rb +0 -2
  138. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/ext/pathname.rb +0 -25
  139. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/ext/string.rb +0 -175
  140. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/ext/time.rb +0 -18
  141. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/file_creation_task.rb +0 -24
  142. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/file_list.rb +0 -428
  143. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/file_task.rb +0 -46
  144. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/file_utils.rb +0 -128
  145. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/file_utils_ext.rb +0 -144
  146. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/gempackagetask.rb +0 -4
  147. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/invocation_chain.rb +0 -56
  148. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/invocation_exception_mixin.rb +0 -16
  149. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/late_time.rb +0 -17
  150. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/linked_list.rb +0 -103
  151. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/loaders/makefile.rb +0 -53
  152. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/multi_task.rb +0 -13
  153. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/name_space.rb +0 -38
  154. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/packagetask.rb +0 -199
  155. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/pathmap.rb +0 -3
  156. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/phony.rb +0 -15
  157. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/private_reader.rb +0 -20
  158. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/promise.rb +0 -99
  159. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/pseudo_status.rb +0 -29
  160. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/rake_module.rb +0 -38
  161. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/rake_test_loader.rb +0 -22
  162. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/rdoctask.rb +0 -4
  163. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/ruby182_test_unit_fix.rb +0 -29
  164. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/rule_recursion_overflow_error.rb +0 -20
  165. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/runtest.rb +0 -27
  166. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/scope.rb +0 -42
  167. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/task.rb +0 -383
  168. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/task_argument_error.rb +0 -7
  169. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/task_arguments.rb +0 -98
  170. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/task_manager.rb +0 -307
  171. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/tasklib.rb +0 -24
  172. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/testtask.rb +0 -213
  173. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/thread_history_display.rb +0 -48
  174. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/thread_pool.rb +0 -164
  175. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/trace_output.rb +0 -22
  176. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/version.rb +0 -7
  177. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake/win32.rb +0 -56
  178. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/lib/rake.rb +0 -79
  179. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/rakelib/publish.rake +0 -20
  180. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/rakelib/test_times.rake +0 -25
  181. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/file_creation.rb +0 -34
  182. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/helper.rb +0 -129
  183. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/support/rakefile_definitions.rb +0 -478
  184. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/support/ruby_runner.rb +0 -34
  185. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_private_reader.rb +0 -42
  186. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake.rb +0 -40
  187. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_application.rb +0 -643
  188. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_application_options.rb +0 -468
  189. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_backtrace.rb +0 -119
  190. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_clean.rb +0 -61
  191. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_cpu_counter.rb +0 -68
  192. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_definitions.rb +0 -84
  193. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_directory_task.rb +0 -76
  194. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_dsl.rb +0 -40
  195. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_early_time.rb +0 -31
  196. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_extension.rb +0 -59
  197. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_file_creation_task.rb +0 -56
  198. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_file_list.rb +0 -670
  199. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_file_list_path_map.rb +0 -8
  200. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_file_task.rb +0 -197
  201. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_file_utils.rb +0 -314
  202. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_ftp_file.rb +0 -74
  203. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_functional.rb +0 -482
  204. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_invocation_chain.rb +0 -64
  205. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_late_time.rb +0 -18
  206. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_linked_list.rb +0 -84
  207. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_makefile_loader.rb +0 -46
  208. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_multi_task.rb +0 -64
  209. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_name_space.rb +0 -57
  210. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_package_task.rb +0 -79
  211. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_path_map.rb +0 -168
  212. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_path_map_explode.rb +0 -34
  213. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_path_map_partial.rb +0 -18
  214. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_pathname_extensions.rb +0 -15
  215. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_pseudo_status.rb +0 -21
  216. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_rake_test_loader.rb +0 -20
  217. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_reduce_compat.rb +0 -26
  218. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_require.rb +0 -40
  219. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_rules.rb +0 -388
  220. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_scope.rb +0 -44
  221. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_task.rb +0 -393
  222. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_task_argument_parsing.rb +0 -119
  223. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_task_arguments.rb +0 -127
  224. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_task_lib.rb +0 -9
  225. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_task_manager.rb +0 -178
  226. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_task_manager_argument_resolution.rb +0 -19
  227. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_task_with_arguments.rb +0 -172
  228. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_test_task.rb +0 -146
  229. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_thread_pool.rb +0 -145
  230. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_top_level_functions.rb +0 -71
  231. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_rake_win32.rb +0 -72
  232. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_thread_history_display.rb +0 -101
  233. data/vendor/cache/ruby/2.6.0/gems/rake-10.5.0/test/test_trace_output.rb +0 -52
  234. data/vendor/cache/ruby/2.6.0/gems/rspec-3.9.0/LICENSE.md +0 -27
  235. data/vendor/cache/ruby/2.6.0/gems/rspec-3.9.0/README.md +0 -43
  236. data/vendor/cache/ruby/2.6.0/gems/rspec-3.9.0/lib/rspec/version.rb +0 -5
  237. data/vendor/cache/ruby/2.6.0/gems/rspec-3.9.0/lib/rspec.rb +0 -3
  238. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/.document +0 -5
  239. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/.yardopts +0 -8
  240. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/Changelog.md +0 -2274
  241. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/LICENSE.md +0 -26
  242. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/README.md +0 -384
  243. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/exe/rspec +0 -4
  244. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/autorun.rb +0 -3
  245. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/backtrace_formatter.rb +0 -65
  246. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/bisect/coordinator.rb +0 -62
  247. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/bisect/example_minimizer.rb +0 -173
  248. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/bisect/fork_runner.rb +0 -135
  249. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/bisect/server.rb +0 -61
  250. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/bisect/shell_command.rb +0 -126
  251. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/bisect/shell_runner.rb +0 -73
  252. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/bisect/utilities.rb +0 -58
  253. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/configuration.rb +0 -2336
  254. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/configuration_options.rb +0 -233
  255. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/did_you_mean.rb +0 -46
  256. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/drb.rb +0 -113
  257. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/dsl.rb +0 -98
  258. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb +0 -656
  259. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb +0 -889
  260. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_status_persister.rb +0 -235
  261. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/filter_manager.rb +0 -231
  262. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/flat_map.rb +0 -20
  263. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/base_bisect_formatter.rb +0 -45
  264. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/base_formatter.rb +0 -70
  265. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/base_text_formatter.rb +0 -75
  266. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/bisect_drb_formatter.rb +0 -29
  267. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/bisect_progress_formatter.rb +0 -157
  268. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/console_codes.rb +0 -68
  269. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/deprecation_formatter.rb +0 -223
  270. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/documentation_formatter.rb +0 -102
  271. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/exception_presenter.rb +0 -508
  272. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/failure_list_formatter.rb +0 -23
  273. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/fallback_message_formatter.rb +0 -28
  274. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/helpers.rb +0 -110
  275. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/html_formatter.rb +0 -153
  276. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/html_printer.rb +0 -414
  277. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/html_snippet_extractor.rb +0 -120
  278. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/json_formatter.rb +0 -102
  279. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/profile_formatter.rb +0 -68
  280. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/progress_formatter.rb +0 -29
  281. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/protocol.rb +0 -182
  282. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/snippet_extractor.rb +0 -134
  283. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters/syntax_highlighter.rb +0 -91
  284. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/formatters.rb +0 -272
  285. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb +0 -632
  286. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/invocations.rb +0 -87
  287. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/memoized_helpers.rb +0 -554
  288. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/metadata.rb +0 -498
  289. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/metadata_filter.rb +0 -255
  290. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/minitest_assertions_adapter.rb +0 -31
  291. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/mocking_adapters/flexmock.rb +0 -31
  292. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/mocking_adapters/mocha.rb +0 -57
  293. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/mocking_adapters/null.rb +0 -14
  294. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/mocking_adapters/rr.rb +0 -31
  295. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/mocking_adapters/rspec.rb +0 -32
  296. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/notifications.rb +0 -521
  297. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/option_parser.rb +0 -316
  298. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/ordering.rb +0 -158
  299. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/output_wrapper.rb +0 -29
  300. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/pending.rb +0 -165
  301. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/profiler.rb +0 -34
  302. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/project_initializer/.rspec +0 -1
  303. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/project_initializer/spec/spec_helper.rb +0 -100
  304. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/project_initializer.rb +0 -48
  305. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/rake_task.rb +0 -188
  306. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/reporter.rb +0 -265
  307. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/ruby_project.rb +0 -53
  308. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb +0 -204
  309. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/sandbox.rb +0 -37
  310. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/set.rb +0 -54
  311. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/shared_context.rb +0 -55
  312. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/shared_example_group.rb +0 -269
  313. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/shell_escape.rb +0 -49
  314. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/test_unit_assertions_adapter.rb +0 -30
  315. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/version.rb +0 -9
  316. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/warnings.rb +0 -40
  317. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/world.rb +0 -275
  318. data/vendor/cache/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core.rb +0 -186
  319. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/.document +0 -5
  320. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/.yardopts +0 -6
  321. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/Changelog.md +0 -1178
  322. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/LICENSE.md +0 -25
  323. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/README.md +0 -320
  324. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/block_snippet_extractor.rb +0 -253
  325. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/configuration.rb +0 -215
  326. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/expectation_target.rb +0 -127
  327. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/fail_with.rb +0 -39
  328. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/failure_aggregator.rb +0 -194
  329. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/handler.rb +0 -170
  330. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/minitest_integration.rb +0 -58
  331. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/syntax.rb +0 -132
  332. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/version.rb +0 -8
  333. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations.rb +0 -82
  334. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/aliased_matcher.rb +0 -116
  335. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/all.rb +0 -86
  336. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/base_matcher.rb +0 -193
  337. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/be.rb +0 -288
  338. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/be_between.rb +0 -77
  339. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/be_instance_of.rb +0 -26
  340. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/be_kind_of.rb +0 -20
  341. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/be_within.rb +0 -72
  342. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/change.rb +0 -428
  343. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/compound.rb +0 -276
  344. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/contain_exactly.rb +0 -302
  345. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/cover.rb +0 -24
  346. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/eq.rb +0 -40
  347. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/eql.rb +0 -34
  348. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/equal.rb +0 -81
  349. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/exist.rb +0 -90
  350. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/has.rb +0 -103
  351. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/have_attributes.rb +0 -114
  352. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/include.rb +0 -149
  353. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/match.rb +0 -106
  354. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/operators.rb +0 -128
  355. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/output.rb +0 -200
  356. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/raise_error.rb +0 -230
  357. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/respond_to.rb +0 -199
  358. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/satisfy.rb +0 -60
  359. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/start_or_end_with.rb +0 -94
  360. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/throw_symbol.rb +0 -132
  361. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in/yield.rb +0 -432
  362. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/built_in.rb +0 -52
  363. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/composable.rb +0 -171
  364. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/dsl.rb +0 -534
  365. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/english_phrasing.rb +0 -58
  366. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +0 -82
  367. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/fail_matchers.rb +0 -42
  368. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/generated_descriptions.rb +0 -41
  369. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/matcher_delegator.rb +0 -35
  370. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers/matcher_protocol.rb +0 -99
  371. data/vendor/cache/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/matchers.rb +0 -1038
  372. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/.document +0 -5
  373. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/.yardopts +0 -6
  374. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/Changelog.md +0 -1133
  375. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/LICENSE.md +0 -25
  376. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/README.md +0 -463
  377. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/chain.rb +0 -111
  378. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/error_generator.rb +0 -31
  379. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/expect_chain_chain.rb +0 -31
  380. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/expectation_chain.rb +0 -50
  381. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/message_chains.rb +0 -83
  382. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/proxy.rb +0 -116
  383. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/recorder.rb +0 -294
  384. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/stub_chain.rb +0 -51
  385. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance/stub_chain_chain.rb +0 -23
  386. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/any_instance.rb +0 -11
  387. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/argument_list_matcher.rb +0 -100
  388. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/argument_matchers.rb +0 -322
  389. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/configuration.rb +0 -212
  390. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/error_generator.rb +0 -369
  391. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/example_methods.rb +0 -434
  392. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/instance_method_stasher.rb +0 -146
  393. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/marshal_extension.rb +0 -41
  394. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/matchers/expectation_customization.rb +0 -20
  395. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/matchers/have_received.rb +0 -134
  396. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/matchers/receive.rb +0 -132
  397. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/matchers/receive_message_chain.rb +0 -82
  398. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/matchers/receive_messages.rb +0 -77
  399. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/message_chain.rb +0 -87
  400. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/message_expectation.rb +0 -751
  401. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/method_double.rb +0 -287
  402. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/method_reference.rb +0 -202
  403. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/minitest_integration.rb +0 -68
  404. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/mutate_const.rb +0 -339
  405. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/object_reference.rb +0 -149
  406. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/order_group.rb +0 -81
  407. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/proxy.rb +0 -503
  408. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/space.rb +0 -238
  409. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/standalone.rb +0 -3
  410. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/syntax.rb +0 -325
  411. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/targets.rb +0 -124
  412. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/test_double.rb +0 -171
  413. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/verifying_double.rb +0 -129
  414. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/verifying_message_expectation.rb +0 -54
  415. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/verifying_proxy.rb +0 -220
  416. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks/version.rb +0 -9
  417. data/vendor/cache/ruby/2.6.0/gems/rspec-mocks-3.9.1/lib/rspec/mocks.rb +0 -130
  418. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/Changelog.md +0 -292
  419. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/LICENSE.md +0 -23
  420. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/README.md +0 -40
  421. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/caller_filter.rb +0 -83
  422. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/comparable_version.rb +0 -46
  423. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/differ.rb +0 -215
  424. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/directory_maker.rb +0 -63
  425. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/encoded_string.rb +0 -161
  426. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/fuzzy_matcher.rb +0 -48
  427. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/hunk_generator.rb +0 -47
  428. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/matcher_definition.rb +0 -42
  429. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/method_signature_verifier.rb +0 -438
  430. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/mutex.rb +0 -73
  431. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/object_formatter.rb +0 -275
  432. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/recursive_const_methods.rb +0 -76
  433. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/reentrant_mutex.rb +0 -53
  434. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/ruby_features.rb +0 -185
  435. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/source/location.rb +0 -21
  436. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/source/node.rb +0 -110
  437. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/source/token.rb +0 -87
  438. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/source.rb +0 -75
  439. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/spec/deprecation_helpers.rb +0 -64
  440. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/spec/formatting_support.rb +0 -9
  441. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/spec/in_sub_process.rb +0 -69
  442. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/spec/library_wide_checks.rb +0 -150
  443. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/spec/shell_out.rb +0 -89
  444. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/spec/stderr_splitter.rb +0 -67
  445. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/spec/string_matcher.rb +0 -46
  446. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/spec/with_isolated_directory.rb +0 -13
  447. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/spec/with_isolated_stderr.rb +0 -13
  448. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/spec.rb +0 -81
  449. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/version.rb +0 -7
  450. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support/warnings.rb +0 -39
  451. data/vendor/cache/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support.rb +0 -149
  452. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/CHANGELOG.md +0 -42
  453. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/LICENSE.txt +0 -21
  454. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/README.md +0 -117
  455. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/fonts/3d.md +0 -33
  456. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/fonts/block.md +0 -34
  457. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/fonts/doom.md +0 -30
  458. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/fonts/standard.md +0 -27
  459. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/fonts/starwars.md +0 -28
  460. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/fonts/straight.md +0 -20
  461. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/lib/tty/font/result.rb +0 -33
  462. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/lib/tty/font/version.rb +0 -7
  463. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/lib/tty/font.rb +0 -88
  464. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/lib/tty/fonts/3d.yml +0 -1040
  465. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/lib/tty/fonts/block.yml +0 -906
  466. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/lib/tty/fonts/doom.yml +0 -916
  467. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/lib/tty/fonts/standard.yml +0 -769
  468. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/lib/tty/fonts/starwars.yml +0 -862
  469. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/lib/tty/fonts/straight.yml +0 -570
  470. data/vendor/cache/ruby/2.6.0/gems/tty-font-0.5.0/lib/tty-font.rb +0 -1
  471. data/vendor/cache/ruby/2.6.0/specifications/colorize-0.8.1.gemspec +0 -38
  472. data/vendor/cache/ruby/2.6.0/specifications/diff-lcs-1.3.gemspec +0 -61
  473. data/vendor/cache/ruby/2.6.0/specifications/rake-10.5.0.gemspec +0 -43
  474. data/vendor/cache/ruby/2.6.0/specifications/rspec-3.9.0.gemspec +0 -43
  475. data/vendor/cache/ruby/2.6.0/specifications/rspec-core-3.9.1.gemspec +0 -63
  476. data/vendor/cache/ruby/2.6.0/specifications/rspec-expectations-3.9.1.gemspec +0 -51
  477. data/vendor/cache/ruby/2.6.0/specifications/rspec-mocks-3.9.1.gemspec +0 -51
  478. data/vendor/cache/ruby/2.6.0/specifications/rspec-support-3.9.2.gemspec +0 -39
  479. data/vendor/cache/ruby/2.6.0/specifications/tty-font-0.5.0.gemspec +0 -42
@@ -1,632 +0,0 @@
1
- module RSpec
2
- module Core
3
- # Provides `before`, `after` and `around` hooks as a means of
4
- # supporting common setup and teardown. This module is extended
5
- # onto {ExampleGroup}, making the methods available from any `describe`
6
- # or `context` block and included in {Configuration}, making them
7
- # available off of the configuration object to define global setup
8
- # or teardown logic.
9
- module Hooks
10
- # @api public
11
- #
12
- # @overload before(&block)
13
- # @overload before(scope, &block)
14
- # @param scope [Symbol] `:example`, `:context`, or `:suite`
15
- # (defaults to `:example`)
16
- # @overload before(scope, conditions, &block)
17
- # @param scope [Symbol] `:example`, `:context`, or `:suite`
18
- # (defaults to `:example`)
19
- # @param conditions [Hash]
20
- # constrains this hook to examples matching these conditions e.g.
21
- # `before(:example, :ui => true) { ... }` will only run with examples
22
- # or groups declared with `:ui => true`.
23
- # @overload before(conditions, &block)
24
- # @param conditions [Hash]
25
- # constrains this hook to examples matching these conditions e.g.
26
- # `before(:example, :ui => true) { ... }` will only run with examples
27
- # or groups declared with `:ui => true`.
28
- #
29
- # @see #after
30
- # @see #around
31
- # @see ExampleGroup
32
- # @see SharedContext
33
- # @see SharedExampleGroup
34
- # @see Configuration
35
- #
36
- # Declare a block of code to be run before each example (using `:example`)
37
- # or once before any example (using `:context`). These are usually
38
- # declared directly in the {ExampleGroup} to which they apply, but they
39
- # can also be shared across multiple groups.
40
- #
41
- # You can also use `before(:suite)` to run a block of code before any
42
- # example groups are run. This should be declared in {RSpec.configure}.
43
- #
44
- # Instance variables declared in `before(:example)` or `before(:context)`
45
- # are accessible within each example.
46
- #
47
- # ### Order
48
- #
49
- # `before` hooks are stored in three scopes, which are run in order:
50
- # `:suite`, `:context`, and `:example`. They can also be declared in
51
- # several different places: `RSpec.configure`, a parent group, the current
52
- # group. They are run in the following order:
53
- #
54
- # before(:suite) # Declared in RSpec.configure.
55
- # before(:context) # Declared in RSpec.configure.
56
- # before(:context) # Declared in a parent group.
57
- # before(:context) # Declared in the current group.
58
- # before(:example) # Declared in RSpec.configure.
59
- # before(:example) # Declared in a parent group.
60
- # before(:example) # Declared in the current group.
61
- #
62
- # If more than one `before` is declared within any one scope, they are run
63
- # in the order in which they are declared. Any `around` hooks will execute
64
- # later than any `before` hook regardless of scope.
65
- #
66
- # ### Conditions
67
- #
68
- # When you add a conditions hash to `before(:example)` or
69
- # `before(:context)`, RSpec will only apply that hook to groups or
70
- # examples that match the conditions. e.g.
71
- #
72
- # RSpec.configure do |config|
73
- # config.before(:example, :authorized => true) do
74
- # log_in_as :authorized_user
75
- # end
76
- # end
77
- #
78
- # RSpec.describe Something, :authorized => true do
79
- # # The before hook will run in before each example in this group.
80
- # end
81
- #
82
- # RSpec.describe SomethingElse do
83
- # it "does something", :authorized => true do
84
- # # The before hook will run before this example.
85
- # end
86
- #
87
- # it "does something else" do
88
- # # The hook will not run before this example.
89
- # end
90
- # end
91
- #
92
- # Note that filtered config `:context` hooks can still be applied
93
- # to individual examples that have matching metadata. Just like
94
- # Ruby's object model is that every object has a singleton class
95
- # which has only a single instance, RSpec's model is that every
96
- # example has a singleton example group containing just the one
97
- # example.
98
- #
99
- # ### Warning: `before(:suite, :with => :conditions)`
100
- #
101
- # The conditions hash is used to match against specific examples. Since
102
- # `before(:suite)` is not run in relation to any specific example or
103
- # group, conditions passed along with `:suite` are effectively ignored.
104
- #
105
- # ### Exceptions
106
- #
107
- # When an exception is raised in a `before` block, RSpec skips any
108
- # subsequent `before` blocks and the example, but runs all of the
109
- # `after(:example)` and `after(:context)` hooks.
110
- #
111
- # ### Warning: implicit before blocks
112
- #
113
- # `before` hooks can also be declared in shared contexts which get
114
- # included implicitly either by you or by extension libraries. Since
115
- # RSpec runs these in the order in which they are declared within each
116
- # scope, load order matters, and can lead to confusing results when one
117
- # before block depends on state that is prepared in another before block
118
- # that gets run later.
119
- #
120
- # ### Warning: `before(:context)`
121
- #
122
- # It is very tempting to use `before(:context)` to speed things up, but we
123
- # recommend that you avoid this as there are a number of gotchas, as well
124
- # as things that simply don't work.
125
- #
126
- # #### Context
127
- #
128
- # `before(:context)` is run in an example that is generated to provide
129
- # group context for the block.
130
- #
131
- # #### Instance variables
132
- #
133
- # Instance variables declared in `before(:context)` are shared across all
134
- # the examples in the group. This means that each example can change the
135
- # state of a shared object, resulting in an ordering dependency that can
136
- # make it difficult to reason about failures.
137
- #
138
- # #### Unsupported RSpec constructs
139
- #
140
- # RSpec has several constructs that reset state between each example
141
- # automatically. These are not intended for use from within
142
- # `before(:context)`:
143
- #
144
- # * `let` declarations
145
- # * `subject` declarations
146
- # * Any mocking, stubbing or test double declaration
147
- #
148
- # ### other frameworks
149
- #
150
- # Mock object frameworks and database transaction managers (like
151
- # ActiveRecord) are typically designed around the idea of setting up
152
- # before an example, running that one example, and then tearing down. This
153
- # means that mocks and stubs can (sometimes) be declared in
154
- # `before(:context)`, but get torn down before the first real example is
155
- # ever run.
156
- #
157
- # You _can_ create database-backed model objects in a `before(:context)`
158
- # in rspec-rails, but it will not be wrapped in a transaction for you, so
159
- # you are on your own to clean up in an `after(:context)` block.
160
- #
161
- # @example before(:example) declared in an {ExampleGroup}
162
- #
163
- # RSpec.describe Thing do
164
- # before(:example) do
165
- # @thing = Thing.new
166
- # end
167
- #
168
- # it "does something" do
169
- # # Here you can access @thing.
170
- # end
171
- # end
172
- #
173
- # @example before(:context) declared in an {ExampleGroup}
174
- #
175
- # RSpec.describe Parser do
176
- # before(:context) do
177
- # File.open(file_to_parse, 'w') do |f|
178
- # f.write <<-CONTENT
179
- # stuff in the file
180
- # CONTENT
181
- # end
182
- # end
183
- #
184
- # it "parses the file" do
185
- # Parser.parse(file_to_parse)
186
- # end
187
- #
188
- # after(:context) do
189
- # File.delete(file_to_parse)
190
- # end
191
- # end
192
- #
193
- # @note The `:example` and `:context` scopes are also available as
194
- # `:each` and `:all`, respectively. Use whichever you prefer.
195
- # @note The `:suite` scope is only supported for hooks registered on
196
- # `RSpec.configuration` since they exist independently of any
197
- # example or example group.
198
- def before(*args, &block)
199
- hooks.register :append, :before, *args, &block
200
- end
201
-
202
- alias_method :append_before, :before
203
-
204
- # Adds `block` to the front of the list of `before` blocks in the same
205
- # scope (`:example`, `:context`, or `:suite`).
206
- #
207
- # See {#before} for scoping semantics.
208
- def prepend_before(*args, &block)
209
- hooks.register :prepend, :before, *args, &block
210
- end
211
-
212
- # @api public
213
- # @overload after(&block)
214
- # @overload after(scope, &block)
215
- # @param scope [Symbol] `:example`, `:context`, or `:suite` (defaults to
216
- # `:example`)
217
- # @overload after(scope, conditions, &block)
218
- # @param scope [Symbol] `:example`, `:context`, or `:suite` (defaults to
219
- # `:example`)
220
- # @param conditions [Hash]
221
- # constrains this hook to examples matching these conditions e.g.
222
- # `after(:example, :ui => true) { ... }` will only run with examples
223
- # or groups declared with `:ui => true`.
224
- # @overload after(conditions, &block)
225
- # @param conditions [Hash]
226
- # constrains this hook to examples matching these conditions e.g.
227
- # `after(:example, :ui => true) { ... }` will only run with examples
228
- # or groups declared with `:ui => true`.
229
- #
230
- # @see #before
231
- # @see #around
232
- # @see ExampleGroup
233
- # @see SharedContext
234
- # @see SharedExampleGroup
235
- # @see Configuration
236
- #
237
- # Declare a block of code to be run after each example (using `:example`)
238
- # or once after all examples n the context (using `:context`). See
239
- # {#before} for more information about ordering.
240
- #
241
- # ### Exceptions
242
- #
243
- # `after` hooks are guaranteed to run even when there are exceptions in
244
- # `before` hooks or examples. When an exception is raised in an after
245
- # block, the exception is captured for later reporting, and subsequent
246
- # `after` blocks are run.
247
- #
248
- # ### Order
249
- #
250
- # `after` hooks are stored in three scopes, which are run in order:
251
- # `:example`, `:context`, and `:suite`. They can also be declared in
252
- # several different places: `RSpec.configure`, a parent group, the current
253
- # group. They are run in the following order:
254
- #
255
- # after(:example) # Declared in the current group.
256
- # after(:example) # Declared in a parent group.
257
- # after(:example) # Declared in RSpec.configure.
258
- # after(:context) # Declared in the current group.
259
- # after(:context) # Declared in a parent group.
260
- # after(:context) # Declared in RSpec.configure.
261
- # after(:suite) # Declared in RSpec.configure.
262
- #
263
- # This is the reverse of the order in which `before` hooks are run.
264
- # Similarly, if more than one `after` is declared within any one scope,
265
- # they are run in reverse order of that in which they are declared. Also
266
- # `around` hooks will all have run before any after hooks are invoked.
267
- #
268
- # @note The `:example` and `:context` scopes are also available as
269
- # `:each` and `:all`, respectively. Use whichever you prefer.
270
- # @note The `:suite` scope is only supported for hooks registered on
271
- # `RSpec.configuration` since they exist independently of any
272
- # example or example group.
273
- def after(*args, &block)
274
- hooks.register :prepend, :after, *args, &block
275
- end
276
-
277
- alias_method :prepend_after, :after
278
-
279
- # Adds `block` to the back of the list of `after` blocks in the same
280
- # scope (`:example`, `:context`, or `:suite`).
281
- #
282
- # See {#after} for scoping semantics.
283
- def append_after(*args, &block)
284
- hooks.register :append, :after, *args, &block
285
- end
286
-
287
- # @api public
288
- # @overload around(&block)
289
- # @overload around(scope, &block)
290
- # @param scope [Symbol] `:example` (defaults to `:example`)
291
- # present for syntax parity with `before` and `after`, but
292
- # `:example`/`:each` is the only supported value.
293
- # @overload around(scope, conditions, &block)
294
- # @param scope [Symbol] `:example` (defaults to `:example`)
295
- # present for syntax parity with `before` and `after`, but
296
- # `:example`/`:each` is the only supported value.
297
- # @param conditions [Hash] constrains this hook to examples matching
298
- # these conditions e.g. `around(:example, :ui => true) { ... }` will
299
- # only run with examples or groups declared with `:ui => true`.
300
- # @overload around(conditions, &block)
301
- # @param conditions [Hash] constrains this hook to examples matching
302
- # these conditions e.g. `around(:example, :ui => true) { ... }` will
303
- # only run with examples or groups declared with `:ui => true`.
304
- #
305
- # @yield [Example] the example to run
306
- #
307
- # @note the syntax of `around` is similar to that of `before` and `after`
308
- # but the semantics are quite different. `before` and `after` hooks are
309
- # run in the context of of the examples with which they are associated,
310
- # whereas `around` hooks are actually responsible for running the
311
- # examples. Consequently, `around` hooks do not have direct access to
312
- # resources that are made available within the examples and their
313
- # associated `before` and `after` hooks.
314
- #
315
- # @note `:example`/`:each` is the only supported scope.
316
- #
317
- # Declare a block of code, parts of which will be run before and parts
318
- # after the example. It is your responsibility to run the example:
319
- #
320
- # around(:example) do |ex|
321
- # # Do some stuff before.
322
- # ex.run
323
- # # Do some stuff after.
324
- # end
325
- #
326
- # The yielded example aliases `run` with `call`, which lets you treat it
327
- # like a `Proc`. This is especially handy when working with libraries
328
- # that manage their own setup and teardown using a block or proc syntax,
329
- # e.g.
330
- #
331
- # around(:example) {|ex| Database.transaction(&ex)}
332
- # around(:example) {|ex| FakeFS(&ex)}
333
- #
334
- # ### Order
335
- #
336
- # All `around` hooks execute immediately surrounding an example, this means
337
- # that all `before` hooks will have run and no `after` hooks will have run yet.
338
- #
339
- # They are not a synonym for `before`/`after`.
340
- def around(*args, &block)
341
- hooks.register :prepend, :around, *args, &block
342
- end
343
-
344
- # @private
345
- # Holds the various registered hooks.
346
- def hooks
347
- @hooks ||= HookCollections.new(self, FilterableItemRepository::UpdateOptimized)
348
- end
349
-
350
- # @private
351
- Hook = Struct.new(:block, :options)
352
-
353
- # @private
354
- class BeforeHook < Hook
355
- def run(example)
356
- example.instance_exec(example, &block)
357
- end
358
- end
359
-
360
- # @private
361
- class AfterHook < Hook
362
- def run(example)
363
- example.instance_exec(example, &block)
364
- rescue Support::AllExceptionsExceptOnesWeMustNotRescue => ex
365
- example.set_exception(ex)
366
- end
367
- end
368
-
369
- # @private
370
- class AfterContextHook < Hook
371
- def run(example)
372
- example.instance_exec(example, &block)
373
- rescue Support::AllExceptionsExceptOnesWeMustNotRescue => e
374
- RSpec.configuration.reporter.notify_non_example_exception(e, "An error occurred in an `after(:context)` hook.")
375
- end
376
- end
377
-
378
- # @private
379
- class AroundHook < Hook
380
- def execute_with(example, procsy)
381
- example.instance_exec(procsy, &block)
382
- return if procsy.executed?
383
- Pending.mark_skipped!(example,
384
- "#{hook_description} did not execute the example")
385
- end
386
-
387
- if Proc.method_defined?(:source_location)
388
- def hook_description
389
- "around hook at #{Metadata.relative_path(block.source_location.join(':'))}"
390
- end
391
- else # for 1.8.7
392
- # :nocov:
393
- def hook_description
394
- "around hook"
395
- end
396
- # :nocov:
397
- end
398
- end
399
-
400
- # @private
401
- #
402
- # This provides the primary API used by other parts of rspec-core. By hiding all
403
- # implementation details behind this facade, it's allowed us to heavily optimize
404
- # this, so that, for example, hook collection objects are only instantiated when
405
- # a hook is added. This allows us to avoid many object allocations for the common
406
- # case of a group having no hooks.
407
- #
408
- # This is only possible because this interface provides a "tell, don't ask"-style
409
- # API, so that callers _tell_ this class what to do with the hooks, rather than
410
- # asking this class for a list of hooks, and then doing something with them.
411
- class HookCollections
412
- def initialize(owner, filterable_item_repo_class)
413
- @owner = owner
414
- @filterable_item_repo_class = filterable_item_repo_class
415
- @before_example_hooks = nil
416
- @after_example_hooks = nil
417
- @before_context_hooks = nil
418
- @after_context_hooks = nil
419
- @around_example_hooks = nil
420
- end
421
-
422
- def register_globals(host, globals)
423
- parent_groups = host.parent_groups
424
-
425
- process(host, parent_groups, globals, :before, :example, &:options)
426
- process(host, parent_groups, globals, :after, :example, &:options)
427
- process(host, parent_groups, globals, :around, :example, &:options)
428
-
429
- process(host, parent_groups, globals, :before, :context, &:options)
430
- process(host, parent_groups, globals, :after, :context, &:options)
431
- end
432
-
433
- def register_global_singleton_context_hooks(example, globals)
434
- parent_groups = example.example_group.parent_groups
435
-
436
- process(example, parent_groups, globals, :before, :context) { {} }
437
- process(example, parent_groups, globals, :after, :context) { {} }
438
- end
439
-
440
- def register(prepend_or_append, position, *args, &block)
441
- scope, options = scope_and_options_from(*args)
442
-
443
- if scope == :suite
444
- # TODO: consider making this an error in RSpec 4. For SemVer reasons,
445
- # we are only warning in RSpec 3.
446
- RSpec.warn_with "WARNING: `#{position}(:suite)` hooks are only supported on " \
447
- "the RSpec configuration object. This " \
448
- "`#{position}(:suite)` hook, registered on an example " \
449
- "group, will be ignored."
450
- return
451
- end
452
-
453
- hook = HOOK_TYPES[position][scope].new(block, options)
454
- ensure_hooks_initialized_for(position, scope).__send__(prepend_or_append, hook, options)
455
- end
456
-
457
- # @private
458
- #
459
- # Runs all of the blocks stored with the hook in the context of the
460
- # example. If no example is provided, just calls the hook directly.
461
- def run(position, scope, example_or_group)
462
- return if RSpec.configuration.dry_run?
463
-
464
- if scope == :context
465
- unless example_or_group.class.metadata[:skip]
466
- run_owned_hooks_for(position, :context, example_or_group)
467
- end
468
- else
469
- case position
470
- when :before then run_example_hooks_for(example_or_group, :before, :reverse_each)
471
- when :after then run_example_hooks_for(example_or_group, :after, :each)
472
- when :around then run_around_example_hooks_for(example_or_group) { yield }
473
- end
474
- end
475
- end
476
-
477
- SCOPES = [:example, :context]
478
-
479
- SCOPE_ALIASES = { :each => :example, :all => :context }
480
-
481
- HOOK_TYPES = {
482
- :before => Hash.new { BeforeHook },
483
- :after => Hash.new { AfterHook },
484
- :around => Hash.new { AroundHook }
485
- }
486
-
487
- HOOK_TYPES[:after][:context] = AfterContextHook
488
-
489
- protected
490
-
491
- EMPTY_HOOK_ARRAY = [].freeze
492
-
493
- def matching_hooks_for(position, scope, example_or_group)
494
- repository = hooks_for(position, scope) { return EMPTY_HOOK_ARRAY }
495
-
496
- # It would be nice to not have to switch on type here, but
497
- # we don't want to define `ExampleGroup#metadata` because then
498
- # `metadata` from within an individual example would return the
499
- # group's metadata but the user would probably expect it to be
500
- # the example's metadata.
501
- metadata = case example_or_group
502
- when ExampleGroup then example_or_group.class.metadata
503
- else example_or_group.metadata
504
- end
505
-
506
- repository.items_for(metadata)
507
- end
508
-
509
- def all_hooks_for(position, scope)
510
- hooks_for(position, scope) { return EMPTY_HOOK_ARRAY }.items_and_filters.map(&:first)
511
- end
512
-
513
- def run_owned_hooks_for(position, scope, example_or_group)
514
- matching_hooks_for(position, scope, example_or_group).each do |hook|
515
- hook.run(example_or_group)
516
- end
517
- end
518
-
519
- def processable_hooks_for(position, scope, host)
520
- if scope == :example
521
- all_hooks_for(position, scope)
522
- else
523
- matching_hooks_for(position, scope, host)
524
- end
525
- end
526
-
527
- private
528
-
529
- def hooks_for(position, scope)
530
- if position == :before
531
- scope == :example ? @before_example_hooks : @before_context_hooks
532
- elsif position == :after
533
- scope == :example ? @after_example_hooks : @after_context_hooks
534
- else # around
535
- @around_example_hooks
536
- end || yield
537
- end
538
-
539
- def ensure_hooks_initialized_for(position, scope)
540
- if position == :before
541
- if scope == :example
542
- @before_example_hooks ||= @filterable_item_repo_class.new(:all?)
543
- else
544
- @before_context_hooks ||= @filterable_item_repo_class.new(:all?)
545
- end
546
- elsif position == :after
547
- if scope == :example
548
- @after_example_hooks ||= @filterable_item_repo_class.new(:all?)
549
- else
550
- @after_context_hooks ||= @filterable_item_repo_class.new(:all?)
551
- end
552
- else # around
553
- @around_example_hooks ||= @filterable_item_repo_class.new(:all?)
554
- end
555
- end
556
-
557
- def process(host, parent_groups, globals, position, scope)
558
- hooks_to_process = globals.processable_hooks_for(position, scope, host)
559
- return if hooks_to_process.empty?
560
-
561
- hooks_to_process -= FlatMap.flat_map(parent_groups) do |group|
562
- group.hooks.all_hooks_for(position, scope)
563
- end
564
- return if hooks_to_process.empty?
565
-
566
- repository = ensure_hooks_initialized_for(position, scope)
567
- hooks_to_process.each { |hook| repository.append hook, (yield hook) }
568
- end
569
-
570
- def scope_and_options_from(*args)
571
- return :suite if args.first == :suite
572
- scope = extract_scope_from(args)
573
- meta = Metadata.build_hash_from(args, :warn_about_example_group_filtering)
574
- return scope, meta
575
- end
576
-
577
- def extract_scope_from(args)
578
- if known_scope?(args.first)
579
- normalized_scope_for(args.shift)
580
- elsif args.any? { |a| a.is_a?(Symbol) }
581
- error_message = "You must explicitly give a scope " \
582
- "(#{SCOPES.join(", ")}) or scope alias " \
583
- "(#{SCOPE_ALIASES.keys.join(", ")}) when using symbols as " \
584
- "metadata for a hook."
585
- raise ArgumentError.new error_message
586
- else
587
- :example
588
- end
589
- end
590
-
591
- def known_scope?(scope)
592
- SCOPES.include?(scope) || SCOPE_ALIASES.keys.include?(scope)
593
- end
594
-
595
- def normalized_scope_for(scope)
596
- SCOPE_ALIASES[scope] || scope
597
- end
598
-
599
- def run_example_hooks_for(example, position, each_method)
600
- owner_parent_groups.__send__(each_method) do |group|
601
- group.hooks.run_owned_hooks_for(position, :example, example)
602
- end
603
- end
604
-
605
- def run_around_example_hooks_for(example)
606
- hooks = FlatMap.flat_map(owner_parent_groups) do |group|
607
- group.hooks.matching_hooks_for(:around, :example, example)
608
- end
609
-
610
- return yield if hooks.empty? # exit early to avoid the extra allocation cost of `Example::Procsy`
611
-
612
- initial_procsy = Example::Procsy.new(example) { yield }
613
- hooks.inject(initial_procsy) do |procsy, around_hook|
614
- procsy.wrap { around_hook.execute_with(example, procsy) }
615
- end.call
616
- end
617
-
618
- if respond_to?(:singleton_class) && singleton_class.ancestors.include?(singleton_class)
619
- def owner_parent_groups
620
- @owner.parent_groups
621
- end
622
- else # Ruby < 2.1 (see https://bugs.ruby-lang.org/issues/8035)
623
- # :nocov:
624
- def owner_parent_groups
625
- @owner_parent_groups ||= [@owner] + @owner.parent_groups
626
- end
627
- # :nocov:
628
- end
629
- end
630
- end
631
- end
632
- end