chikari_palindrome 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (572) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +8 -0
  3. data/.travis.yml +6 -0
  4. data/Gemfile +8 -0
  5. data/Gemfile.lock +30 -0
  6. data/README.md +53 -0
  7. data/Rakefile +10 -0
  8. data/bin/console +14 -0
  9. data/bin/setup +8 -0
  10. data/chikari_palindrome.gemspec +27 -0
  11. data/lib/chikari_palindrome.rb +28 -0
  12. data/lib/chikari_palindrome/version.rb +3 -0
  13. data/vendor/cache/ansi-1.5.0.gem +0 -0
  14. data/vendor/cache/builder-3.2.4.gem +0 -0
  15. data/vendor/cache/minitest-5.14.1.gem +0 -0
  16. data/vendor/cache/minitest-reporters-1.4.2.gem +0 -0
  17. data/vendor/cache/rake-12.3.3.gem +0 -0
  18. data/vendor/cache/ruby-progressbar-1.10.1.gem +0 -0
  19. data/vendor/cache/ruby/2.7.0/bin/rake +27 -0
  20. data/vendor/cache/ruby/2.7.0/cache/ansi-1.5.0.gem +0 -0
  21. data/vendor/cache/ruby/2.7.0/cache/builder-3.2.4.gem +0 -0
  22. data/vendor/cache/ruby/2.7.0/cache/chikari_palindrome-0.1.0.gem +0 -0
  23. data/vendor/cache/ruby/2.7.0/cache/minitest-5.14.1.gem +0 -0
  24. data/vendor/cache/ruby/2.7.0/cache/minitest-reporters-1.4.2.gem +0 -0
  25. data/vendor/cache/ruby/2.7.0/cache/rake-12.3.3.gem +0 -0
  26. data/vendor/cache/ruby/2.7.0/cache/ruby-progressbar-1.10.1.gem +0 -0
  27. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/.index +77 -0
  28. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/.yardopts +8 -0
  29. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/DEMO.md +451 -0
  30. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/HISTORY.md +217 -0
  31. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/LICENSE.txt +23 -0
  32. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/NOTICE.md +170 -0
  33. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/README.md +91 -0
  34. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/01_ansicode.md +65 -0
  35. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/02_core.md +11 -0
  36. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/03_logger.md +30 -0
  37. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/04_progressbar.md +62 -0
  38. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/05_mixin.md +37 -0
  39. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/06_string.md +56 -0
  40. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/07_columns.md +89 -0
  41. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/08_table.md +28 -0
  42. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/09_diff.md +47 -0
  43. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/10_bbcode.md +24 -0
  44. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/11_terminal.md +8 -0
  45. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/applique/ae.rb +1 -0
  46. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/applique/output.rb +5 -0
  47. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi.rb +22 -0
  48. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi.yml +77 -0
  49. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/bbcode.rb +334 -0
  50. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/chain.rb +50 -0
  51. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/chart.rb +100 -0
  52. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/code.rb +349 -0
  53. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/columns.rb +197 -0
  54. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/constants.rb +25 -0
  55. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/core.rb +30 -0
  56. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/diff.rb +215 -0
  57. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/hexdump.rb +122 -0
  58. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/logger.rb +211 -0
  59. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/mixin.rb +121 -0
  60. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/progressbar.rb +292 -0
  61. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/string.rb +254 -0
  62. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/table.rb +179 -0
  63. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/terminal.rb +44 -0
  64. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/terminal/curses.rb +26 -0
  65. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/terminal/stty.rb +62 -0
  66. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/terminal/termios.rb +68 -0
  67. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/terminal/win32.rb +107 -0
  68. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/version.rb +15 -0
  69. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/test/case_ansicode.rb +43 -0
  70. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/test/case_bbcode.rb +35 -0
  71. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/test/case_mixin.rb +35 -0
  72. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/test/case_progressbar.rb +21 -0
  73. data/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/test/test_helper.rb +3 -0
  74. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/CHANGES +119 -0
  75. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/MIT-LICENSE +20 -0
  76. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/README.md +258 -0
  77. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/Rakefile +194 -0
  78. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/builder.blurb +27 -0
  79. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/builder.gemspec +45 -0
  80. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/doc/jamis.rb +592 -0
  81. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/doc/releases/builder-1.2.4.rdoc +31 -0
  82. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/doc/releases/builder-2.0.0.rdoc +46 -0
  83. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/doc/releases/builder-2.1.1.rdoc +58 -0
  84. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/blankslate.rb +138 -0
  85. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder.rb +14 -0
  86. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/blankslate.rb +24 -0
  87. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/version.rb +9 -0
  88. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/xchar.rb +198 -0
  89. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/xmlbase.rb +200 -0
  90. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/xmlevents.rb +64 -0
  91. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/xmlmarkup.rb +345 -0
  92. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/rakelib/publish.rake +21 -0
  93. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/rakelib/tags.rake +63 -0
  94. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/rakelib/testing.rake +8 -0
  95. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/helper.rb +13 -0
  96. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/performance.rb +42 -0
  97. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/preload.rb +40 -0
  98. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_blankslate.rb +208 -0
  99. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_eventbuilder.rb +151 -0
  100. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_markupbuilder.rb +617 -0
  101. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_method_caching.rb +63 -0
  102. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_namecollision.rb +40 -0
  103. data/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_xchar.rb +85 -0
  104. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/.gitignore +8 -0
  105. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/.travis.yml +6 -0
  106. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/Gemfile +8 -0
  107. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/Gemfile.lock +30 -0
  108. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/README.md +53 -0
  109. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/Rakefile +10 -0
  110. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/bin/console +14 -0
  111. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/bin/setup +8 -0
  112. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/chikari_palindrome.gemspec +28 -0
  113. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/lib/chikari_palindrome.rb +16 -0
  114. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/lib/chikari_palindrome/version.rb +3 -0
  115. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ansi-1.5.0.gem +0 -0
  116. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/builder-3.2.4.gem +0 -0
  117. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/minitest-5.14.1.gem +0 -0
  118. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/minitest-reporters-1.4.2.gem +0 -0
  119. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/rake-12.3.3.gem +0 -0
  120. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby-progressbar-1.10.1.gem +0 -0
  121. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/bin/rake +27 -0
  122. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/cache/ansi-1.5.0.gem +0 -0
  123. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/cache/builder-3.2.4.gem +0 -0
  124. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/cache/minitest-5.14.1.gem +0 -0
  125. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/cache/minitest-reporters-1.4.2.gem +0 -0
  126. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/cache/rake-12.3.3.gem +0 -0
  127. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/cache/ruby-progressbar-1.10.1.gem +0 -0
  128. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/.index +77 -0
  129. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/.yardopts +8 -0
  130. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/DEMO.md +451 -0
  131. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/HISTORY.md +217 -0
  132. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/LICENSE.txt +23 -0
  133. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/NOTICE.md +170 -0
  134. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/README.md +91 -0
  135. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/01_ansicode.md +65 -0
  136. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/02_core.md +11 -0
  137. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/03_logger.md +30 -0
  138. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/04_progressbar.md +62 -0
  139. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/05_mixin.md +37 -0
  140. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/06_string.md +56 -0
  141. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/07_columns.md +89 -0
  142. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/08_table.md +28 -0
  143. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/09_diff.md +47 -0
  144. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/10_bbcode.md +24 -0
  145. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/11_terminal.md +8 -0
  146. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/applique/ae.rb +1 -0
  147. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/demo/applique/output.rb +5 -0
  148. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi.rb +22 -0
  149. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi.yml +77 -0
  150. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/bbcode.rb +334 -0
  151. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/chain.rb +50 -0
  152. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/chart.rb +100 -0
  153. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/code.rb +349 -0
  154. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/columns.rb +197 -0
  155. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/constants.rb +25 -0
  156. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/core.rb +30 -0
  157. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/diff.rb +215 -0
  158. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/hexdump.rb +122 -0
  159. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/logger.rb +211 -0
  160. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/mixin.rb +121 -0
  161. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/progressbar.rb +292 -0
  162. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/string.rb +254 -0
  163. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/table.rb +179 -0
  164. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/terminal.rb +44 -0
  165. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/terminal/curses.rb +26 -0
  166. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/terminal/stty.rb +62 -0
  167. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/terminal/termios.rb +68 -0
  168. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/terminal/win32.rb +107 -0
  169. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/lib/ansi/version.rb +15 -0
  170. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/test/case_ansicode.rb +43 -0
  171. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/test/case_bbcode.rb +35 -0
  172. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/test/case_mixin.rb +35 -0
  173. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/test/case_progressbar.rb +21 -0
  174. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ansi-1.5.0/test/test_helper.rb +3 -0
  175. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/CHANGES +119 -0
  176. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/MIT-LICENSE +20 -0
  177. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/README.md +258 -0
  178. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/Rakefile +194 -0
  179. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/builder.blurb +27 -0
  180. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/builder.gemspec +45 -0
  181. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/doc/jamis.rb +592 -0
  182. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/doc/releases/builder-1.2.4.rdoc +31 -0
  183. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/doc/releases/builder-2.0.0.rdoc +46 -0
  184. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/doc/releases/builder-2.1.1.rdoc +58 -0
  185. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/blankslate.rb +138 -0
  186. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder.rb +14 -0
  187. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/blankslate.rb +24 -0
  188. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/version.rb +9 -0
  189. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/xchar.rb +198 -0
  190. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/xmlbase.rb +200 -0
  191. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/xmlevents.rb +64 -0
  192. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/lib/builder/xmlmarkup.rb +345 -0
  193. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/rakelib/publish.rake +21 -0
  194. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/rakelib/tags.rake +63 -0
  195. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/rakelib/testing.rake +8 -0
  196. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/helper.rb +13 -0
  197. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/performance.rb +42 -0
  198. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/preload.rb +40 -0
  199. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_blankslate.rb +208 -0
  200. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_eventbuilder.rb +151 -0
  201. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_markupbuilder.rb +617 -0
  202. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_method_caching.rb +63 -0
  203. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_namecollision.rb +40 -0
  204. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/builder-3.2.4/test/test_xchar.rb +85 -0
  205. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/.autotest +34 -0
  206. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/History.rdoc +1392 -0
  207. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/Manifest.txt +27 -0
  208. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/README.rdoc +764 -0
  209. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/Rakefile +74 -0
  210. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/design_rationale.rb +52 -0
  211. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/hoe/minitest.rb +32 -0
  212. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest.rb +1056 -0
  213. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/assertions.rb +807 -0
  214. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/autorun.rb +13 -0
  215. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/benchmark.rb +455 -0
  216. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/expectations.rb +303 -0
  217. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/hell.rb +11 -0
  218. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/mock.rb +240 -0
  219. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/parallel.rb +70 -0
  220. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/pride.rb +4 -0
  221. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/pride_plugin.rb +142 -0
  222. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/spec.rb +342 -0
  223. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/test.rb +220 -0
  224. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/unit.rb +45 -0
  225. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/metametameta.rb +136 -0
  226. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_assertions.rb +1567 -0
  227. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_benchmark.rb +137 -0
  228. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_mock.rb +872 -0
  229. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_reporter.rb +299 -0
  230. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_spec.rb +1061 -0
  231. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_test.rb +1084 -0
  232. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/.gitignore +28 -0
  233. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/.rubocop.yml +77 -0
  234. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/.ruby-gemset +1 -0
  235. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/.travis.yml +15 -0
  236. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/.yardopts +6 -0
  237. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/CHANGELOG.md +120 -0
  238. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/Gemfile +2 -0
  239. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/LICENSE +20 -0
  240. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/README.md +135 -0
  241. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/Rakefile +70 -0
  242. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/appveyor.yml +22 -0
  243. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/assets/default-reporter.png +0 -0
  244. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/assets/mean_time_reporter.png +0 -0
  245. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/assets/progress-reporter.png +0 -0
  246. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/assets/spec-reporter.png +0 -0
  247. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/extensible_backtrace_filter.rb +67 -0
  248. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/minitest_reporter_plugin.rb +82 -0
  249. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/old_activesupport_fix.rb +24 -0
  250. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/relative_position.rb +26 -0
  251. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters.rb +91 -0
  252. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/ansi.rb +30 -0
  253. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/base_reporter.rb +136 -0
  254. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/default_reporter.rb +245 -0
  255. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/html_reporter.rb +224 -0
  256. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/junit_reporter.rb +174 -0
  257. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/mean_time_reporter.rb +388 -0
  258. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/progress_reporter.rb +104 -0
  259. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/ruby_mate_reporter.rb +54 -0
  260. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/rubymine_reporter.rb +116 -0
  261. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/spec_reporter.rb +61 -0
  262. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/version.rb +5 -0
  263. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/templates/index.html.erb +85 -0
  264. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/minitest-reporters.gemspec +31 -0
  265. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/junit_filename_bug_example_test.rb +41 -0
  266. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/mean_time_test.rb +36 -0
  267. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/progress_detailed_skip_test.rb +8 -0
  268. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/progress_test.rb +8 -0
  269. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/sample_test.rb +15 -0
  270. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/spec_test.rb +18 -0
  271. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/gallery/bad_test.rb +25 -0
  272. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/gallery/good_test.rb +14 -0
  273. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/integration/reporters/junit_reporter_test.rb +12 -0
  274. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/integration/reporters/mean_time_reporter_test.rb +7 -0
  275. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/integration/reporters/progress_reporter_test.rb +40 -0
  276. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/test_helper.rb +22 -0
  277. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/extensible_backtrace_filter_test.rb +42 -0
  278. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/junit_reporter_test.rb +46 -0
  279. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/mean_time_reporter_unit_test.rb +149 -0
  280. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/minitest_reporter_plugin_test.rb +14 -0
  281. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/reporters_test.rb +65 -0
  282. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/spec_reporter_test.rb +62 -0
  283. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/CONTRIBUTING.rdoc +43 -0
  284. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/Gemfile +3 -0
  285. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/History.rdoc +2344 -0
  286. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/MIT-LICENSE +21 -0
  287. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/README.rdoc +156 -0
  288. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/Rakefile +41 -0
  289. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/azure-pipelines.yml +11 -0
  290. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/bundle +105 -0
  291. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/console +7 -0
  292. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/rake +29 -0
  293. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/rdoc +29 -0
  294. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/rubocop +29 -0
  295. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/setup +6 -0
  296. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/command_line_usage.rdoc +158 -0
  297. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/example/Rakefile1 +38 -0
  298. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/example/Rakefile2 +35 -0
  299. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/example/a.c +6 -0
  300. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/example/b.c +6 -0
  301. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/example/main.c +11 -0
  302. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/glossary.rdoc +42 -0
  303. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/jamis.rb +592 -0
  304. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/proto_rake.rdoc +127 -0
  305. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/rake.1 +156 -0
  306. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/rakefile.rdoc +622 -0
  307. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/rational.rdoc +151 -0
  308. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/exe/rake +27 -0
  309. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake.rb +71 -0
  310. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/application.rb +824 -0
  311. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/backtrace.rb +24 -0
  312. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/clean.rb +78 -0
  313. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/cloneable.rb +17 -0
  314. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/cpu_counter.rb +107 -0
  315. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/default_loader.rb +15 -0
  316. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/dsl_definition.rb +195 -0
  317. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/early_time.rb +22 -0
  318. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/ext/core.rb +26 -0
  319. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/ext/string.rb +176 -0
  320. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/file_creation_task.rb +25 -0
  321. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/file_list.rb +435 -0
  322. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/file_task.rb +54 -0
  323. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/file_utils.rb +137 -0
  324. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/file_utils_ext.rb +145 -0
  325. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/invocation_chain.rb +57 -0
  326. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/invocation_exception_mixin.rb +17 -0
  327. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/late_time.rb +18 -0
  328. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/linked_list.rb +112 -0
  329. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/loaders/makefile.rb +54 -0
  330. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/multi_task.rb +14 -0
  331. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/name_space.rb +38 -0
  332. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/packagetask.rb +207 -0
  333. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/phony.rb +16 -0
  334. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/private_reader.rb +21 -0
  335. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/promise.rb +100 -0
  336. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/pseudo_status.rb +30 -0
  337. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/rake_module.rb +67 -0
  338. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/rake_test_loader.rb +27 -0
  339. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/rule_recursion_overflow_error.rb +20 -0
  340. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/scope.rb +43 -0
  341. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/task.rb +413 -0
  342. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/task_argument_error.rb +8 -0
  343. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/task_arguments.rb +109 -0
  344. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/task_manager.rb +324 -0
  345. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/tasklib.rb +12 -0
  346. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/testtask.rb +224 -0
  347. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/thread_history_display.rb +49 -0
  348. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/thread_pool.rb +163 -0
  349. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/trace_output.rb +23 -0
  350. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/version.rb +10 -0
  351. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/win32.rb +51 -0
  352. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/rake.gemspec +42 -0
  353. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/LICENSE.txt +19 -0
  354. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/README.md +38 -0
  355. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/Rakefile +2 -0
  356. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar.rb +22 -0
  357. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/base.rb +183 -0
  358. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/calculators/length.rb +100 -0
  359. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/calculators/running_average.rb +9 -0
  360. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components.rb +5 -0
  361. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components/bar.rb +102 -0
  362. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components/percentage.rb +29 -0
  363. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components/rate.rb +43 -0
  364. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components/time.rb +107 -0
  365. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components/title.rb +13 -0
  366. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/errors/invalid_progress_error.rb +4 -0
  367. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/format.rb +3 -0
  368. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/format/formatter.rb +27 -0
  369. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/format/molecule.rb +60 -0
  370. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/format/string.rb +36 -0
  371. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/output.rb +68 -0
  372. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/outputs/non_tty.rb +47 -0
  373. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/outputs/null.rb +33 -0
  374. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/outputs/tty.rb +32 -0
  375. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/progress.rb +118 -0
  376. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/refinements.rb +1 -0
  377. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/refinements/enumerator.rb +23 -0
  378. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/throttle.rb +25 -0
  379. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/time.rb +32 -0
  380. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/timer.rb +72 -0
  381. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/version.rb +3 -0
  382. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/specifications/ansi-1.5.0.gemspec +42 -0
  383. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/specifications/builder-3.2.4.gemspec +23 -0
  384. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/specifications/minitest-5.14.1.gemspec +38 -0
  385. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/specifications/minitest-reporters-1.4.2.gemspec +43 -0
  386. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/specifications/rake-12.3.3.gemspec +43 -0
  387. data/vendor/cache/ruby/2.7.0/gems/chikari_palindrome-0.1.0/vendor/cache/ruby/2.7.0/specifications/ruby-progressbar-1.10.1.gemspec +40 -0
  388. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/.autotest +34 -0
  389. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/History.rdoc +1392 -0
  390. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/Manifest.txt +27 -0
  391. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/README.rdoc +764 -0
  392. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/Rakefile +74 -0
  393. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/design_rationale.rb +52 -0
  394. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/hoe/minitest.rb +32 -0
  395. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest.rb +1056 -0
  396. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/assertions.rb +807 -0
  397. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/autorun.rb +13 -0
  398. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/benchmark.rb +455 -0
  399. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/expectations.rb +303 -0
  400. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/hell.rb +11 -0
  401. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/mock.rb +240 -0
  402. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/parallel.rb +70 -0
  403. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/pride.rb +4 -0
  404. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/pride_plugin.rb +142 -0
  405. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/spec.rb +342 -0
  406. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/test.rb +220 -0
  407. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/lib/minitest/unit.rb +45 -0
  408. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/metametameta.rb +136 -0
  409. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_assertions.rb +1567 -0
  410. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_benchmark.rb +137 -0
  411. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_mock.rb +872 -0
  412. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_reporter.rb +299 -0
  413. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_spec.rb +1061 -0
  414. data/vendor/cache/ruby/2.7.0/gems/minitest-5.14.1/test/minitest/test_minitest_test.rb +1084 -0
  415. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/.gitignore +28 -0
  416. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/.rubocop.yml +77 -0
  417. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/.ruby-gemset +1 -0
  418. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/.travis.yml +15 -0
  419. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/.yardopts +6 -0
  420. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/CHANGELOG.md +120 -0
  421. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/Gemfile +2 -0
  422. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/LICENSE +20 -0
  423. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/README.md +135 -0
  424. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/Rakefile +70 -0
  425. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/appveyor.yml +22 -0
  426. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/assets/default-reporter.png +0 -0
  427. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/assets/mean_time_reporter.png +0 -0
  428. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/assets/progress-reporter.png +0 -0
  429. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/assets/spec-reporter.png +0 -0
  430. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/extensible_backtrace_filter.rb +67 -0
  431. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/minitest_reporter_plugin.rb +82 -0
  432. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/old_activesupport_fix.rb +24 -0
  433. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/relative_position.rb +26 -0
  434. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters.rb +91 -0
  435. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/ansi.rb +30 -0
  436. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/base_reporter.rb +136 -0
  437. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/default_reporter.rb +245 -0
  438. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/html_reporter.rb +224 -0
  439. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/junit_reporter.rb +174 -0
  440. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/mean_time_reporter.rb +388 -0
  441. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/progress_reporter.rb +104 -0
  442. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/ruby_mate_reporter.rb +54 -0
  443. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/rubymine_reporter.rb +116 -0
  444. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/spec_reporter.rb +61 -0
  445. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/reporters/version.rb +5 -0
  446. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/lib/minitest/templates/index.html.erb +85 -0
  447. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/minitest-reporters.gemspec +31 -0
  448. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/junit_filename_bug_example_test.rb +41 -0
  449. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/mean_time_test.rb +36 -0
  450. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/progress_detailed_skip_test.rb +8 -0
  451. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/progress_test.rb +8 -0
  452. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/sample_test.rb +15 -0
  453. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/fixtures/spec_test.rb +18 -0
  454. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/gallery/bad_test.rb +25 -0
  455. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/gallery/good_test.rb +14 -0
  456. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/integration/reporters/junit_reporter_test.rb +12 -0
  457. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/integration/reporters/mean_time_reporter_test.rb +7 -0
  458. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/integration/reporters/progress_reporter_test.rb +40 -0
  459. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/test_helper.rb +22 -0
  460. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/extensible_backtrace_filter_test.rb +42 -0
  461. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/junit_reporter_test.rb +46 -0
  462. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/mean_time_reporter_unit_test.rb +149 -0
  463. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/minitest_reporter_plugin_test.rb +14 -0
  464. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/reporters_test.rb +65 -0
  465. data/vendor/cache/ruby/2.7.0/gems/minitest-reporters-1.4.2/test/unit/minitest/spec_reporter_test.rb +62 -0
  466. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/CONTRIBUTING.rdoc +43 -0
  467. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/Gemfile +3 -0
  468. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/History.rdoc +2344 -0
  469. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/MIT-LICENSE +21 -0
  470. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/README.rdoc +156 -0
  471. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/Rakefile +41 -0
  472. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/azure-pipelines.yml +11 -0
  473. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/bundle +105 -0
  474. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/console +7 -0
  475. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/rake +29 -0
  476. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/rdoc +29 -0
  477. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/rubocop +29 -0
  478. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/bin/setup +6 -0
  479. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/command_line_usage.rdoc +158 -0
  480. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/example/Rakefile1 +38 -0
  481. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/example/Rakefile2 +35 -0
  482. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/example/a.c +6 -0
  483. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/example/b.c +6 -0
  484. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/example/main.c +11 -0
  485. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/glossary.rdoc +42 -0
  486. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/jamis.rb +592 -0
  487. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/proto_rake.rdoc +127 -0
  488. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/rake.1 +156 -0
  489. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/rakefile.rdoc +622 -0
  490. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/doc/rational.rdoc +151 -0
  491. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/exe/rake +27 -0
  492. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake.rb +71 -0
  493. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/application.rb +824 -0
  494. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/backtrace.rb +24 -0
  495. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/clean.rb +78 -0
  496. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/cloneable.rb +17 -0
  497. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/cpu_counter.rb +107 -0
  498. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/default_loader.rb +15 -0
  499. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/dsl_definition.rb +195 -0
  500. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/early_time.rb +22 -0
  501. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/ext/core.rb +26 -0
  502. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/ext/string.rb +176 -0
  503. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/file_creation_task.rb +25 -0
  504. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/file_list.rb +435 -0
  505. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/file_task.rb +54 -0
  506. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/file_utils.rb +137 -0
  507. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/file_utils_ext.rb +145 -0
  508. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/invocation_chain.rb +57 -0
  509. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/invocation_exception_mixin.rb +17 -0
  510. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/late_time.rb +18 -0
  511. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/linked_list.rb +112 -0
  512. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/loaders/makefile.rb +54 -0
  513. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/multi_task.rb +14 -0
  514. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/name_space.rb +38 -0
  515. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/packagetask.rb +207 -0
  516. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/phony.rb +16 -0
  517. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/private_reader.rb +21 -0
  518. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/promise.rb +100 -0
  519. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/pseudo_status.rb +30 -0
  520. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/rake_module.rb +67 -0
  521. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/rake_test_loader.rb +27 -0
  522. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/rule_recursion_overflow_error.rb +20 -0
  523. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/scope.rb +43 -0
  524. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/task.rb +413 -0
  525. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/task_argument_error.rb +8 -0
  526. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/task_arguments.rb +109 -0
  527. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/task_manager.rb +324 -0
  528. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/tasklib.rb +12 -0
  529. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/testtask.rb +224 -0
  530. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/thread_history_display.rb +49 -0
  531. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/thread_pool.rb +163 -0
  532. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/trace_output.rb +23 -0
  533. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/version.rb +10 -0
  534. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/lib/rake/win32.rb +51 -0
  535. data/vendor/cache/ruby/2.7.0/gems/rake-12.3.3/rake.gemspec +42 -0
  536. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/LICENSE.txt +19 -0
  537. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/README.md +38 -0
  538. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/Rakefile +2 -0
  539. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar.rb +22 -0
  540. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/base.rb +183 -0
  541. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/calculators/length.rb +100 -0
  542. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/calculators/running_average.rb +9 -0
  543. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components.rb +5 -0
  544. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components/bar.rb +102 -0
  545. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components/percentage.rb +29 -0
  546. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components/rate.rb +43 -0
  547. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components/time.rb +107 -0
  548. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/components/title.rb +13 -0
  549. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/errors/invalid_progress_error.rb +4 -0
  550. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/format.rb +3 -0
  551. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/format/formatter.rb +27 -0
  552. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/format/molecule.rb +60 -0
  553. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/format/string.rb +36 -0
  554. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/output.rb +68 -0
  555. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/outputs/non_tty.rb +47 -0
  556. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/outputs/null.rb +33 -0
  557. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/outputs/tty.rb +32 -0
  558. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/progress.rb +118 -0
  559. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/refinements.rb +1 -0
  560. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/refinements/enumerator.rb +23 -0
  561. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/throttle.rb +25 -0
  562. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/time.rb +32 -0
  563. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/timer.rb +72 -0
  564. data/vendor/cache/ruby/2.7.0/gems/ruby-progressbar-1.10.1/lib/ruby-progressbar/version.rb +3 -0
  565. data/vendor/cache/ruby/2.7.0/specifications/ansi-1.5.0.gemspec +42 -0
  566. data/vendor/cache/ruby/2.7.0/specifications/builder-3.2.4.gemspec +23 -0
  567. data/vendor/cache/ruby/2.7.0/specifications/chikari_palindrome-0.1.0.gemspec +22 -0
  568. data/vendor/cache/ruby/2.7.0/specifications/minitest-5.14.1.gemspec +38 -0
  569. data/vendor/cache/ruby/2.7.0/specifications/minitest-reporters-1.4.2.gemspec +43 -0
  570. data/vendor/cache/ruby/2.7.0/specifications/rake-12.3.3.gemspec +43 -0
  571. data/vendor/cache/ruby/2.7.0/specifications/ruby-progressbar-1.10.1.gemspec +40 -0
  572. metadata +616 -0
@@ -0,0 +1,220 @@
1
+ require "minitest" unless defined? Minitest::Runnable
2
+
3
+ module Minitest
4
+ ##
5
+ # Subclass Test to create your own tests. Typically you'll want a
6
+ # Test subclass per implementation class.
7
+ #
8
+ # See Minitest::Assertions
9
+
10
+ class Test < Runnable
11
+ require "minitest/assertions"
12
+ include Minitest::Assertions
13
+ include Minitest::Reportable
14
+
15
+ def class_name # :nodoc:
16
+ self.class.name # for Minitest::Reportable
17
+ end
18
+
19
+ PASSTHROUGH_EXCEPTIONS = [NoMemoryError, SignalException, SystemExit] # :nodoc:
20
+
21
+ # :stopdoc:
22
+ class << self; attr_accessor :io_lock; end
23
+ self.io_lock = Mutex.new
24
+ # :startdoc:
25
+
26
+ ##
27
+ # Call this at the top of your tests when you absolutely
28
+ # positively need to have ordered tests. In doing so, you're
29
+ # admitting that you suck and your tests are weak.
30
+
31
+ def self.i_suck_and_my_tests_are_order_dependent!
32
+ class << self
33
+ undef_method :test_order if method_defined? :test_order
34
+ define_method :test_order do :alpha end
35
+ end
36
+ end
37
+
38
+ ##
39
+ # Make diffs for this Test use #pretty_inspect so that diff
40
+ # in assert_equal can have more details. NOTE: this is much slower
41
+ # than the regular inspect but much more usable for complex
42
+ # objects.
43
+
44
+ def self.make_my_diffs_pretty!
45
+ require "pp"
46
+
47
+ define_method :mu_pp, &:pretty_inspect
48
+ end
49
+
50
+ ##
51
+ # Call this at the top of your tests when you want to run your
52
+ # tests in parallel. In doing so, you're admitting that you rule
53
+ # and your tests are awesome.
54
+
55
+ def self.parallelize_me!
56
+ include Minitest::Parallel::Test
57
+ extend Minitest::Parallel::Test::ClassMethods
58
+ end
59
+
60
+ ##
61
+ # Returns all instance methods starting with "test_". Based on
62
+ # #test_order, the methods are either sorted, randomized
63
+ # (default), or run in parallel.
64
+
65
+ def self.runnable_methods
66
+ methods = methods_matching(/^test_/)
67
+
68
+ case self.test_order
69
+ when :random, :parallel then
70
+ max = methods.size
71
+ methods.sort.sort_by { rand max }
72
+ when :alpha, :sorted then
73
+ methods.sort
74
+ else
75
+ raise "Unknown test_order: #{self.test_order.inspect}"
76
+ end
77
+ end
78
+
79
+ ##
80
+ # Defines the order to run tests (:random by default). Override
81
+ # this or use a convenience method to change it for your tests.
82
+
83
+ def self.test_order
84
+ :random
85
+ end
86
+
87
+ TEARDOWN_METHODS = %w[ before_teardown teardown after_teardown ] # :nodoc:
88
+
89
+ ##
90
+ # Runs a single test with setup/teardown hooks.
91
+
92
+ def run
93
+ with_info_handler do
94
+ time_it do
95
+ capture_exceptions do
96
+ before_setup; setup; after_setup
97
+
98
+ self.send self.name
99
+ end
100
+
101
+ TEARDOWN_METHODS.each do |hook|
102
+ capture_exceptions do
103
+ self.send hook
104
+ end
105
+ end
106
+ end
107
+ end
108
+
109
+ Result.from self # per contract
110
+ end
111
+
112
+ ##
113
+ # Provides before/after hooks for setup and teardown. These are
114
+ # meant for library writers, NOT for regular test authors. See
115
+ # #before_setup for an example.
116
+
117
+ module LifecycleHooks
118
+
119
+ ##
120
+ # Runs before every test, before setup. This hook is meant for
121
+ # libraries to extend minitest. It is not meant to be used by
122
+ # test developers.
123
+ #
124
+ # As a simplistic example:
125
+ #
126
+ # module MyMinitestPlugin
127
+ # def before_setup
128
+ # super
129
+ # # ... stuff to do before setup is run
130
+ # end
131
+ #
132
+ # def after_setup
133
+ # # ... stuff to do after setup is run
134
+ # super
135
+ # end
136
+ #
137
+ # def before_teardown
138
+ # super
139
+ # # ... stuff to do before teardown is run
140
+ # end
141
+ #
142
+ # def after_teardown
143
+ # # ... stuff to do after teardown is run
144
+ # super
145
+ # end
146
+ # end
147
+ #
148
+ # class MiniTest::Test
149
+ # include MyMinitestPlugin
150
+ # end
151
+
152
+ def before_setup; end
153
+
154
+ ##
155
+ # Runs before every test. Use this to set up before each test
156
+ # run.
157
+
158
+ def setup; end
159
+
160
+ ##
161
+ # Runs before every test, after setup. This hook is meant for
162
+ # libraries to extend minitest. It is not meant to be used by
163
+ # test developers.
164
+ #
165
+ # See #before_setup for an example.
166
+
167
+ def after_setup; end
168
+
169
+ ##
170
+ # Runs after every test, before teardown. This hook is meant for
171
+ # libraries to extend minitest. It is not meant to be used by
172
+ # test developers.
173
+ #
174
+ # See #before_setup for an example.
175
+
176
+ def before_teardown; end
177
+
178
+ ##
179
+ # Runs after every test. Use this to clean up after each test
180
+ # run.
181
+
182
+ def teardown; end
183
+
184
+ ##
185
+ # Runs after every test, after teardown. This hook is meant for
186
+ # libraries to extend minitest. It is not meant to be used by
187
+ # test developers.
188
+ #
189
+ # See #before_setup for an example.
190
+
191
+ def after_teardown; end
192
+ end # LifecycleHooks
193
+
194
+ def capture_exceptions # :nodoc:
195
+ yield
196
+ rescue *PASSTHROUGH_EXCEPTIONS
197
+ raise
198
+ rescue Assertion => e
199
+ self.failures << e
200
+ rescue Exception => e
201
+ self.failures << UnexpectedError.new(e)
202
+ end
203
+
204
+ def with_info_handler &block # :nodoc:
205
+ t0 = Minitest.clock_time
206
+
207
+ handler = lambda do
208
+ warn "\nCurrent: %s#%s %.2fs" % [self.class, self.name, Minitest.clock_time - t0]
209
+ end
210
+
211
+ self.class.on_signal ::Minitest.info_signal, handler, &block
212
+ end
213
+
214
+ include LifecycleHooks
215
+ include Guard
216
+ extend Guard
217
+ end # Test
218
+ end
219
+
220
+ require "minitest/unit" unless defined?(MiniTest) # compatibility layer only
@@ -0,0 +1,45 @@
1
+ # :stopdoc:
2
+
3
+ unless defined?(Minitest) then
4
+ # all of this crap is just to avoid circular requires and is only
5
+ # needed if a user requires "minitest/unit" directly instead of
6
+ # "minitest/autorun", so we also warn
7
+
8
+ from = caller.reject { |s| s =~ /rubygems/ }.join("\n ")
9
+ warn "Warning: you should require 'minitest/autorun' instead."
10
+ warn %(Warning: or add 'gem "minitest"' before 'require "minitest/autorun"')
11
+ warn "From:\n #{from}"
12
+
13
+ module Minitest; end
14
+ MiniTest = Minitest # prevents minitest.rb from requiring back to us
15
+ require "minitest"
16
+ end
17
+
18
+ MiniTest = Minitest unless defined?(MiniTest)
19
+
20
+ module Minitest
21
+ class Unit
22
+ VERSION = Minitest::VERSION
23
+ class TestCase < Minitest::Test
24
+ def self.inherited klass # :nodoc:
25
+ from = caller.first
26
+ warn "MiniTest::Unit::TestCase is now Minitest::Test. From #{from}"
27
+ super
28
+ end
29
+ end
30
+
31
+ def self.autorun # :nodoc:
32
+ from = caller.first
33
+ warn "MiniTest::Unit.autorun is now Minitest.autorun. From #{from}"
34
+ Minitest.autorun
35
+ end
36
+
37
+ def self.after_tests &b # :nodoc:
38
+ from = caller.first
39
+ warn "MiniTest::Unit.after_tests is now Minitest.after_run. From #{from}"
40
+ Minitest.after_run(&b)
41
+ end
42
+ end
43
+ end
44
+
45
+ # :startdoc:
@@ -0,0 +1,136 @@
1
+ require "tempfile"
2
+ require "stringio"
3
+ require "minitest/autorun"
4
+
5
+ class Minitest::Test
6
+ def clean s
7
+ s.gsub(/^ {6}/, "")
8
+ end
9
+
10
+ def with_empty_backtrace_filter
11
+ original = Minitest.backtrace_filter
12
+
13
+ obj = Minitest::BacktraceFilter.new
14
+ def obj.filter _bt
15
+ []
16
+ end
17
+
18
+ Minitest::Test.io_lock.synchronize do # try not to trounce in parallel
19
+ begin
20
+ Minitest.backtrace_filter = obj
21
+ yield
22
+ ensure
23
+ Minitest.backtrace_filter = original
24
+ end
25
+ end
26
+ end
27
+ end
28
+
29
+
30
+ class FakeNamedTest < Minitest::Test
31
+ @@count = 0
32
+
33
+ def self.name
34
+ @fake_name ||= begin
35
+ @@count += 1
36
+ "FakeNamedTest%02d" % @@count
37
+ end
38
+ end
39
+ end
40
+
41
+ module MyModule; end
42
+ class AnError < StandardError; include MyModule; end
43
+
44
+ class MetaMetaMetaTestCase < Minitest::Test
45
+ attr_accessor :reporter, :output, :tu
46
+
47
+ def with_stderr err
48
+ old = $stderr
49
+ $stderr = err
50
+ yield
51
+ ensure
52
+ $stderr = old
53
+ end
54
+
55
+ def run_tu_with_fresh_reporter flags = %w[--seed 42]
56
+ options = Minitest.process_args flags
57
+
58
+ @output = StringIO.new("".encode('UTF-8'))
59
+
60
+ self.reporter = Minitest::CompositeReporter.new
61
+ reporter << Minitest::SummaryReporter.new(@output, options)
62
+ reporter << Minitest::ProgressReporter.new(@output, options)
63
+
64
+ with_stderr @output do
65
+ reporter.start
66
+
67
+ yield(reporter) if block_given?
68
+
69
+ @tus ||= [@tu]
70
+ @tus.each do |tu|
71
+ Minitest::Runnable.runnables.delete tu
72
+
73
+ tu.run reporter, options
74
+ end
75
+
76
+ reporter.report
77
+ end
78
+ end
79
+
80
+ def first_reporter
81
+ reporter.reporters.first
82
+ end
83
+
84
+ def assert_report expected, flags = %w[--seed 42], &block
85
+ header = clean <<-EOM
86
+ Run options: #{flags.map { |s| s =~ /\|/ ? s.inspect : s }.join " "}
87
+
88
+ # Running:
89
+
90
+ EOM
91
+
92
+ run_tu_with_fresh_reporter flags, &block
93
+
94
+ output = normalize_output @output.string.dup
95
+
96
+ assert_equal header + expected, output
97
+ end
98
+
99
+ def normalize_output output
100
+ output.sub!(/Finished in .*/, "Finished in 0.00")
101
+ output.sub!(/Loaded suite .*/, "Loaded suite blah")
102
+
103
+ output.gsub!(/FakeNamedTest\d+/, "FakeNamedTestXX")
104
+ output.gsub!(/ = \d+.\d\d s = /, " = 0.00 s = ")
105
+ output.gsub!(/0x[A-Fa-f0-9]+/, "0xXXX")
106
+ output.gsub!(/ +$/, "")
107
+
108
+ if windows? then
109
+ output.gsub!(/\[(?:[A-Za-z]:)?[^\]:]+:\d+\]/, "[FILE:LINE]")
110
+ output.gsub!(/^(\s+)(?:[A-Za-z]:)?[^:]+:\d+:in/, '\1FILE:LINE:in')
111
+ else
112
+ output.gsub!(/\[[^\]:]+:\d+\]/, "[FILE:LINE]")
113
+ output.gsub!(/^(\s+)[^:]+:\d+:in/, '\1FILE:LINE:in')
114
+ end
115
+
116
+ output.gsub!(/( at )[^:]+:\d+/, '\1[FILE:LINE]')
117
+
118
+ output
119
+ end
120
+
121
+ def restore_env
122
+ old_value = ENV["MT_NO_SKIP_MSG"]
123
+ ENV.delete "MT_NO_SKIP_MSG"
124
+
125
+ yield
126
+ ensure
127
+ ENV["MT_NO_SKIP_MSG"] = old_value
128
+ end
129
+
130
+ def setup
131
+ super
132
+ srand 42
133
+ Minitest::Test.reset
134
+ @tu = nil
135
+ end
136
+ end
@@ -0,0 +1,1567 @@
1
+ # encoding: UTF-8
2
+
3
+ require "minitest/autorun"
4
+
5
+ if defined? Encoding then
6
+ e = Encoding.default_external
7
+ if e != Encoding::UTF_8 then
8
+ warn ""
9
+ warn ""
10
+ warn "NOTE: External encoding #{e} is not UTF-8. Tests WILL fail."
11
+ warn " Run tests with `RUBYOPT=-Eutf-8 rake` to avoid errors."
12
+ warn ""
13
+ warn ""
14
+ end
15
+ end
16
+
17
+ SomeError = Class.new Exception
18
+
19
+ unless defined? MyModule then
20
+ module MyModule; end
21
+ class AnError < StandardError; include MyModule; end
22
+ end
23
+
24
+ class TestMinitestAssertions < Minitest::Test
25
+ # do not call parallelize_me! - teardown accesses @tc._assertions
26
+ # which is not threadsafe. Nearly every method in here is an
27
+ # assertion test so it isn't worth splitting it out further.
28
+
29
+ RUBY18 = !defined? Encoding
30
+
31
+ class DummyTest
32
+ include Minitest::Assertions
33
+ # include Minitest::Reportable # TODO: why do I really need this?
34
+
35
+ attr_accessor :assertions, :failure
36
+
37
+ def initialize
38
+ self.assertions = 0
39
+ self.failure = nil
40
+ end
41
+ end
42
+
43
+ def setup
44
+ super
45
+
46
+ Minitest::Test.reset
47
+
48
+ @tc = DummyTest.new
49
+ @zomg = "zomg ponies!" # TODO: const
50
+ @assertion_count = 1
51
+ end
52
+
53
+ def teardown
54
+ assert_equal(@assertion_count, @tc.assertions,
55
+ "expected #{@assertion_count} assertions to be fired during the test, not #{@tc.assertions}")
56
+ end
57
+
58
+ def assert_deprecated name
59
+ dep = /DEPRECATED: #{name}. From #{__FILE__}:\d+(?::.*)?/
60
+ dep = "" if $-w.nil?
61
+
62
+ assert_output nil, dep do
63
+ yield
64
+ end
65
+ end
66
+
67
+ def assert_triggered expected, klass = Minitest::Assertion
68
+ e = assert_raises klass do
69
+ yield
70
+ end
71
+
72
+ msg = e.message.sub(/(---Backtrace---).*/m, '\1')
73
+ msg.gsub!(/\(oid=[-0-9]+\)/, "(oid=N)")
74
+ msg.gsub!(/(\d\.\d{6})\d+/, '\1xxx') # normalize: ruby version, impl, platform
75
+
76
+ assert_msg = Regexp === expected ? :assert_match : :assert_equal
77
+ self.send assert_msg, expected, msg
78
+ end
79
+
80
+ def assert_unexpected expected
81
+ expected = Regexp.new expected if String === expected
82
+
83
+ assert_triggered expected, Minitest::UnexpectedError do
84
+ yield
85
+ end
86
+ end
87
+
88
+ def clean s
89
+ s.gsub(/^ {6,10}/, "")
90
+ end
91
+
92
+ def non_verbose
93
+ orig_verbose = $VERBOSE
94
+ $VERBOSE = false
95
+
96
+ yield
97
+ ensure
98
+ $VERBOSE = orig_verbose
99
+ end
100
+
101
+ def test_assert
102
+ @assertion_count = 2
103
+
104
+ @tc.assert_equal true, @tc.assert(true), "returns true on success"
105
+ end
106
+
107
+ def test_assert__triggered
108
+ assert_triggered "Expected false to be truthy." do
109
+ @tc.assert false
110
+ end
111
+ end
112
+
113
+ def test_assert__triggered_message
114
+ assert_triggered @zomg do
115
+ @tc.assert false, @zomg
116
+ end
117
+ end
118
+
119
+ def test_assert__triggered_lambda
120
+ assert_triggered "whoops" do
121
+ @tc.assert false, lambda { "whoops" }
122
+ end
123
+ end
124
+
125
+ def test_assert_empty
126
+ @assertion_count = 2
127
+
128
+ @tc.assert_empty []
129
+ end
130
+
131
+ def test_assert_empty_triggered
132
+ @assertion_count = 2
133
+
134
+ assert_triggered "Expected [1] to be empty." do
135
+ @tc.assert_empty [1]
136
+ end
137
+ end
138
+
139
+ def test_assert_equal
140
+ @tc.assert_equal 1, 1
141
+ end
142
+
143
+ def test_assert_equal_different_collection_array_hex_invisible
144
+ object1 = Object.new
145
+ object2 = Object.new
146
+ msg = "No visible difference in the Array#inspect output.
147
+ You should look at the implementation of #== on Array or its members.
148
+ [#<Object:0xXXXXXX>]".gsub(/^ +/, "")
149
+ assert_triggered msg do
150
+ @tc.assert_equal [object1], [object2]
151
+ end
152
+ end
153
+
154
+ def test_assert_equal_different_collection_hash_hex_invisible
155
+ h1, h2 = {}, {}
156
+ h1[1] = Object.new
157
+ h2[1] = Object.new
158
+ msg = "No visible difference in the Hash#inspect output.
159
+ You should look at the implementation of #== on Hash or its members.
160
+ {1=>#<Object:0xXXXXXX>}".gsub(/^ +/, "")
161
+
162
+ assert_triggered msg do
163
+ @tc.assert_equal h1, h2
164
+ end
165
+ end
166
+
167
+ def test_assert_equal_different_diff_deactivated
168
+ without_diff do
169
+ assert_triggered util_msg("haha" * 10, "blah" * 10) do
170
+ o1 = "haha" * 10
171
+ o2 = "blah" * 10
172
+
173
+ @tc.assert_equal o1, o2
174
+ end
175
+ end
176
+ end
177
+
178
+ def test_assert_equal_different_message
179
+ assert_triggered "whoops.\nExpected: 1\n Actual: 2" do
180
+ @tc.assert_equal 1, 2, message { "whoops" }
181
+ end
182
+ end
183
+
184
+ def test_assert_equal_different_lambda
185
+ assert_triggered "whoops.\nExpected: 1\n Actual: 2" do
186
+ @tc.assert_equal 1, 2, lambda { "whoops" }
187
+ end
188
+ end
189
+
190
+ def test_assert_equal_different_hex
191
+ c = Class.new do
192
+ def initialize s; @name = s; end
193
+ end
194
+
195
+ o1 = c.new "a"
196
+ o2 = c.new "b"
197
+ msg = clean <<-EOS
198
+ --- expected
199
+ +++ actual
200
+ @@ -1 +1 @@
201
+ -#<#<Class:0xXXXXXX>:0xXXXXXX @name=\"a\">
202
+ +#<#<Class:0xXXXXXX>:0xXXXXXX @name=\"b\">
203
+ EOS
204
+
205
+ assert_triggered msg do
206
+ @tc.assert_equal o1, o2
207
+ end
208
+ end
209
+
210
+ def test_assert_equal_different_hex_invisible
211
+ o1 = Object.new
212
+ o2 = Object.new
213
+
214
+ msg = "No visible difference in the Object#inspect output.
215
+ You should look at the implementation of #== on Object or its members.
216
+ #<Object:0xXXXXXX>".gsub(/^ +/, "")
217
+
218
+ assert_triggered msg do
219
+ @tc.assert_equal o1, o2
220
+ end
221
+ end
222
+
223
+ def test_assert_equal_different_long
224
+ msg = "--- expected
225
+ +++ actual
226
+ @@ -1 +1 @@
227
+ -\"hahahahahahahahahahahahahahahahahahahaha\"
228
+ +\"blahblahblahblahblahblahblahblahblahblah\"
229
+ ".gsub(/^ +/, "")
230
+
231
+ assert_triggered msg do
232
+ o1 = "haha" * 10
233
+ o2 = "blah" * 10
234
+
235
+ @tc.assert_equal o1, o2
236
+ end
237
+ end
238
+
239
+ def test_assert_equal_different_long_invisible
240
+ msg = "No visible difference in the String#inspect output.
241
+ You should look at the implementation of #== on String or its members.
242
+ \"blahblahblahblahblahblahblahblahblahblah\"".gsub(/^ +/, "")
243
+
244
+ assert_triggered msg do
245
+ o1 = "blah" * 10
246
+ o2 = "blah" * 10
247
+ def o1.== _
248
+ false
249
+ end
250
+ @tc.assert_equal o1, o2
251
+ end
252
+ end
253
+
254
+ def test_assert_equal_different_long_msg
255
+ msg = "message.
256
+ --- expected
257
+ +++ actual
258
+ @@ -1 +1 @@
259
+ -\"hahahahahahahahahahahahahahahahahahahaha\"
260
+ +\"blahblahblahblahblahblahblahblahblahblah\"
261
+ ".gsub(/^ +/, "")
262
+
263
+ assert_triggered msg do
264
+ o1 = "haha" * 10
265
+ o2 = "blah" * 10
266
+ @tc.assert_equal o1, o2, "message"
267
+ end
268
+ end
269
+
270
+ def test_assert_equal_different_short
271
+ assert_triggered util_msg(1, 2) do
272
+ @tc.assert_equal 1, 2
273
+ end
274
+ end
275
+
276
+ def test_assert_equal_different_short_msg
277
+ assert_triggered util_msg(1, 2, "message") do
278
+ @tc.assert_equal 1, 2, "message"
279
+ end
280
+ end
281
+
282
+ def test_assert_equal_different_short_multiline
283
+ msg = "--- expected\n+++ actual\n@@ -1,2 +1,2 @@\n \"a\n-b\"\n+c\"\n"
284
+ assert_triggered msg do
285
+ @tc.assert_equal "a\nb", "a\nc"
286
+ end
287
+ end
288
+
289
+ def test_assert_equal_does_not_allow_lhs_nil
290
+ if Minitest::VERSION =~ /^6/ then
291
+ warn "Time to strip the MT5 test"
292
+
293
+ @assertion_count += 1
294
+ assert_triggered(/Use assert_nil if expecting nil/) do
295
+ @tc.assert_equal nil, nil
296
+ end
297
+ else
298
+ err_re = /Use assert_nil if expecting nil from .*test_minitest_\w+.rb/
299
+ err_re = "" if $-w.nil?
300
+
301
+ assert_output "", err_re do
302
+ @tc.assert_equal nil, nil
303
+ end
304
+ end
305
+ end
306
+
307
+ def test_assert_equal_does_not_allow_lhs_nil_triggered
308
+ assert_triggered "Expected: nil\n Actual: false" do
309
+ @tc.assert_equal nil, false
310
+ end
311
+ end
312
+
313
+ def test_assert_equal_string_bug791
314
+ exp = <<-'EOF'.gsub(/^ {10}/, "") # note single quotes
315
+ --- expected
316
+ +++ actual
317
+ @@ -1,2 +1 @@
318
+ -"\\n
319
+ -"
320
+ +"\\\"
321
+ EOF
322
+
323
+ exp = "Expected: \"\\\\n\"\n Actual: \"\\\\\""
324
+ assert_triggered exp do
325
+ @tc.assert_equal "\\n", "\\"
326
+ end
327
+ end
328
+
329
+ def test_assert_equal_string_both_escaped_unescaped_newlines
330
+ msg = <<-EOM.gsub(/^ {10}/, "")
331
+ --- expected
332
+ +++ actual
333
+ @@ -1,2 +1 @@
334
+ -\"A\\n
335
+ -B\"
336
+ +\"A\\n\\\\nB\"
337
+ EOM
338
+
339
+ assert_triggered msg do
340
+ exp = "A\\nB"
341
+ act = "A\n\\nB"
342
+
343
+ @tc.assert_equal exp, act
344
+ end
345
+ end
346
+
347
+ def test_assert_equal_string_encodings
348
+ msg = <<-EOM.gsub(/^ {10}/, "")
349
+ --- expected
350
+ +++ actual
351
+ @@ -1,3 +1,3 @@
352
+ -# encoding: UTF-8
353
+ -# valid: false
354
+ +# encoding: ASCII-8BIT
355
+ +# valid: true
356
+ "bad-utf8-\\xF1.txt"
357
+ EOM
358
+
359
+ assert_triggered msg do
360
+ x = "bad-utf8-\xF1.txt"
361
+ y = x.dup.force_encoding "binary" # TODO: switch to .b when 1.9 dropped
362
+ @tc.assert_equal x, y
363
+ end
364
+ end unless RUBY18
365
+
366
+ def test_assert_equal_string_encodings_both_different
367
+ msg = <<-EOM.gsub(/^ {10}/, "")
368
+ --- expected
369
+ +++ actual
370
+ @@ -1,3 +1,3 @@
371
+ -# encoding: US-ASCII
372
+ -# valid: false
373
+ +# encoding: ASCII-8BIT
374
+ +# valid: true
375
+ "bad-utf8-\\xF1.txt"
376
+ EOM
377
+
378
+ assert_triggered msg do
379
+ x = "bad-utf8-\xF1.txt".force_encoding "ASCII"
380
+ y = x.dup.force_encoding "binary" # TODO: switch to .b when 1.9 dropped
381
+ @tc.assert_equal x, y
382
+ end
383
+ end unless RUBY18
384
+
385
+ def test_assert_equal_unescape_newlines
386
+ msg = <<-'EOM'.gsub(/^ {10}/, "") # NOTE single quotes on heredoc
387
+ --- expected
388
+ +++ actual
389
+ @@ -1,2 +1,2 @@
390
+ -"hello
391
+ +"hello\n
392
+ world"
393
+ EOM
394
+
395
+ assert_triggered msg do
396
+ exp = "hello\nworld"
397
+ act = 'hello\nworld' # notice single quotes
398
+
399
+ @tc.assert_equal exp, act
400
+ end
401
+ end
402
+
403
+ def test_assert_in_delta
404
+ @tc.assert_in_delta 0.0, 1.0 / 1000, 0.1
405
+ end
406
+
407
+ def test_assert_in_delta_triggered
408
+ x = "1.0e-06"
409
+ assert_triggered "Expected |0.0 - 0.001| (0.001) to be <= #{x}." do
410
+ @tc.assert_in_delta 0.0, 1.0 / 1000, 0.000001
411
+ end
412
+ end
413
+
414
+ def test_assert_in_epsilon
415
+ @assertion_count = 10
416
+
417
+ @tc.assert_in_epsilon 10_000, 9991
418
+ @tc.assert_in_epsilon 9991, 10_000
419
+ @tc.assert_in_epsilon 1.0, 1.001
420
+ @tc.assert_in_epsilon 1.001, 1.0
421
+
422
+ @tc.assert_in_epsilon 10_000, 9999.1, 0.0001
423
+ @tc.assert_in_epsilon 9999.1, 10_000, 0.0001
424
+ @tc.assert_in_epsilon 1.0, 1.0001, 0.0001
425
+ @tc.assert_in_epsilon 1.0001, 1.0, 0.0001
426
+
427
+ @tc.assert_in_epsilon(-1, -1)
428
+ @tc.assert_in_epsilon(-10_000, -9991)
429
+ end
430
+
431
+ def test_assert_in_epsilon_triggered
432
+ assert_triggered "Expected |10000 - 9990| (10) to be <= 9.99." do
433
+ @tc.assert_in_epsilon 10_000, 9990
434
+ end
435
+ end
436
+
437
+ def test_assert_in_epsilon_triggered_negative_case
438
+ x = (RUBY18 and not maglev?) ? "0.1" : "0.100000xxx"
439
+ y = "0.1"
440
+ assert_triggered "Expected |-1.1 - -1| (#{x}) to be <= #{y}." do
441
+ @tc.assert_in_epsilon(-1.1, -1, 0.1)
442
+ end
443
+ end
444
+
445
+ def test_assert_includes
446
+ @assertion_count = 2
447
+
448
+ @tc.assert_includes [true], true
449
+ end
450
+
451
+ def test_assert_includes_triggered
452
+ @assertion_count = 3
453
+
454
+ e = @tc.assert_raises Minitest::Assertion do
455
+ @tc.assert_includes [true], false
456
+ end
457
+
458
+ expected = "Expected [true] to include false."
459
+ assert_equal expected, e.message
460
+ end
461
+
462
+ def test_assert_instance_of
463
+ @tc.assert_instance_of String, "blah"
464
+ end
465
+
466
+ def test_assert_instance_of_triggered
467
+ assert_triggered 'Expected "blah" to be an instance of Array, not String.' do
468
+ @tc.assert_instance_of Array, "blah"
469
+ end
470
+ end
471
+
472
+ def test_assert_kind_of
473
+ @tc.assert_kind_of String, "blah"
474
+ end
475
+
476
+ def test_assert_kind_of_triggered
477
+ assert_triggered 'Expected "blah" to be a kind of Array, not String.' do
478
+ @tc.assert_kind_of Array, "blah"
479
+ end
480
+ end
481
+
482
+ def test_assert_match
483
+ @assertion_count = 2
484
+ @tc.assert_match(/\w+/, "blah blah blah")
485
+ end
486
+
487
+ def test_assert_match_matchee_to_str
488
+ @assertion_count = 2
489
+
490
+ obj = Object.new
491
+ def obj.to_str; "blah" end
492
+
493
+ @tc.assert_match "blah", obj
494
+ end
495
+
496
+ def test_assert_match_matcher_object
497
+ @assertion_count = 2
498
+
499
+ pattern = Object.new
500
+ def pattern.=~ _; true end
501
+
502
+ @tc.assert_match pattern, 5
503
+ end
504
+
505
+ def test_assert_match_object_triggered
506
+ @assertion_count = 2
507
+
508
+ pattern = Object.new
509
+ def pattern.=~ _; false end
510
+ def pattern.inspect; "[Object]" end
511
+
512
+ assert_triggered "Expected [Object] to match 5." do
513
+ @tc.assert_match pattern, 5
514
+ end
515
+ end
516
+
517
+ def test_assert_match_triggered
518
+ @assertion_count = 2
519
+ assert_triggered 'Expected /\d+/ to match "blah blah blah".' do
520
+ @tc.assert_match(/\d+/, "blah blah blah")
521
+ end
522
+ end
523
+
524
+ def test_assert_nil
525
+ @tc.assert_nil nil
526
+ end
527
+
528
+ def test_assert_nil_triggered
529
+ assert_triggered "Expected 42 to be nil." do
530
+ @tc.assert_nil 42
531
+ end
532
+ end
533
+
534
+ def test_assert_operator
535
+ @tc.assert_operator 2, :>, 1
536
+ end
537
+
538
+ def test_assert_operator_bad_object
539
+ bad = Object.new
540
+ def bad.== _; true end
541
+
542
+ @tc.assert_operator bad, :equal?, bad
543
+ end
544
+
545
+ def test_assert_operator_triggered
546
+ assert_triggered "Expected 2 to be < 1." do
547
+ @tc.assert_operator 2, :<, 1
548
+ end
549
+ end
550
+
551
+ def test_assert_output_both
552
+ @assertion_count = 2
553
+
554
+ @tc.assert_output "yay", "blah" do
555
+ print "yay"
556
+ $stderr.print "blah"
557
+ end
558
+ end
559
+
560
+ def test_assert_output_both_regexps
561
+ @assertion_count = 4
562
+
563
+ @tc.assert_output(/y.y/, /bl.h/) do
564
+ print "yay"
565
+ $stderr.print "blah"
566
+ end
567
+ end
568
+
569
+ def test_assert_output_err
570
+ @tc.assert_output nil, "blah" do
571
+ $stderr.print "blah"
572
+ end
573
+ end
574
+
575
+ def test_assert_output_neither
576
+ @assertion_count = 0
577
+
578
+ @tc.assert_output do
579
+ # do nothing
580
+ end
581
+ end
582
+
583
+ def test_assert_output_out
584
+ @tc.assert_output "blah" do
585
+ print "blah"
586
+ end
587
+ end
588
+
589
+ def test_assert_output_triggered_both
590
+ assert_triggered util_msg("blah", "blah blah", "In stderr") do
591
+ @tc.assert_output "yay", "blah" do
592
+ print "boo"
593
+ $stderr.print "blah blah"
594
+ end
595
+ end
596
+ end
597
+
598
+ def test_assert_output_triggered_err
599
+ assert_triggered util_msg("blah", "blah blah", "In stderr") do
600
+ @tc.assert_output nil, "blah" do
601
+ $stderr.print "blah blah"
602
+ end
603
+ end
604
+ end
605
+
606
+ def test_assert_output_triggered_out
607
+ assert_triggered util_msg("blah", "blah blah", "In stdout") do
608
+ @tc.assert_output "blah" do
609
+ print "blah blah"
610
+ end
611
+ end
612
+ end
613
+
614
+ def test_assert_output_no_block
615
+ assert_triggered "assert_output requires a block to capture output." do
616
+ @tc.assert_output "blah"
617
+ end
618
+ end
619
+
620
+ def test_assert_output_nested_assert_uncaught
621
+ @assertion_count = 1
622
+
623
+ assert_triggered "Epic Fail!" do
624
+ @tc.assert_output "blah\n" do
625
+ puts "blah"
626
+ @tc.flunk
627
+ end
628
+ end
629
+ end
630
+
631
+ def test_assert_output_nested_raise
632
+ @assertion_count = 2
633
+
634
+ @tc.assert_output "blah\n" do
635
+ @tc.assert_raises RuntimeError do
636
+ puts "blah"
637
+ raise "boom!"
638
+ end
639
+ end
640
+ end
641
+
642
+ def test_assert_output_nested_raise_bad
643
+ @assertion_count = 0
644
+
645
+ assert_unexpected "boom!" do
646
+ @tc.assert_raises do # 2) bypassed via UnexpectedError
647
+ @tc.assert_output "blah\n" do # 1) captures and raises UnexpectedError
648
+ puts "not_blah"
649
+ raise "boom!"
650
+ end
651
+ end
652
+ end
653
+ end
654
+
655
+ def test_assert_output_nested_raise_mismatch
656
+ # this test is redundant, but illustrative
657
+ @assertion_count = 0
658
+
659
+ assert_unexpected "boom!" do
660
+ @tc.assert_raises RuntimeError do # 2) bypassed via UnexpectedError
661
+ @tc.assert_output "blah\n" do # 1) captures and raises UnexpectedError
662
+ puts "not_blah"
663
+ raise ArgumentError, "boom!"
664
+ end
665
+ end
666
+ end
667
+ end
668
+
669
+ def test_assert_output_nested_throw_caught
670
+ @assertion_count = 2
671
+
672
+ @tc.assert_output "blah\n" do
673
+ @tc.assert_throws :boom! do
674
+ puts "blah"
675
+ throw :boom!
676
+ end
677
+ end
678
+ end
679
+
680
+ def test_assert_output_nested_throw_caught_bad
681
+ @assertion_count = 1 # want 0; can't prevent throw from escaping :(
682
+
683
+ @tc.assert_throws :boom! do # 2) captured via catch
684
+ @tc.assert_output "blah\n" do # 1) bypassed via throw
685
+ puts "not_blah"
686
+ throw :boom!
687
+ end
688
+ end
689
+ end
690
+
691
+ def test_assert_output_nested_throw_mismatch
692
+ @assertion_count = 0
693
+
694
+ assert_unexpected "uncaught throw :boom!" do
695
+ @tc.assert_throws :not_boom! do # 2) captured via assert_throws+rescue
696
+ @tc.assert_output "blah\n" do # 1) bypassed via throw
697
+ puts "not_blah"
698
+ throw :boom!
699
+ end
700
+ end
701
+ end
702
+ end
703
+
704
+ def test_assert_output_uncaught_raise
705
+ @assertion_count = 0
706
+
707
+ assert_unexpected "RuntimeError: boom!" do
708
+ @tc.assert_output "blah\n" do
709
+ puts "not_blah"
710
+ raise "boom!"
711
+ end
712
+ end
713
+ end
714
+
715
+ def test_assert_output_uncaught_throw
716
+ @assertion_count = 0
717
+
718
+ assert_unexpected "uncaught throw :boom!" do
719
+ @tc.assert_output "blah\n" do
720
+ puts "not_blah"
721
+ throw :boom!
722
+ end
723
+ end
724
+ end
725
+ def test_assert_predicate
726
+ @tc.assert_predicate "", :empty?
727
+ end
728
+
729
+ def test_assert_predicate_triggered
730
+ assert_triggered 'Expected "blah" to be empty?.' do
731
+ @tc.assert_predicate "blah", :empty?
732
+ end
733
+ end
734
+
735
+ def test_assert_raises
736
+ @tc.assert_raises RuntimeError do
737
+ raise "blah"
738
+ end
739
+ end
740
+
741
+ def test_assert_raises_default
742
+ @tc.assert_raises do
743
+ raise StandardError, "blah"
744
+ end
745
+ end
746
+
747
+ def test_assert_raises_default_triggered
748
+ e = assert_raises Minitest::Assertion do
749
+ @tc.assert_raises do
750
+ raise SomeError, "blah"
751
+ end
752
+ end
753
+
754
+ expected = clean <<-EOM.chomp
755
+ [StandardError] exception expected, not
756
+ Class: <SomeError>
757
+ Message: <\"blah\">
758
+ ---Backtrace---
759
+ FILE:LINE:in \`test_assert_raises_default_triggered\'
760
+ ---------------
761
+ EOM
762
+
763
+ actual = e.message.gsub(/^.+:\d+/, "FILE:LINE")
764
+ actual.gsub!(/block \(\d+ levels\) in /, "") if RUBY_VERSION >= "1.9.0"
765
+
766
+ assert_equal expected, actual
767
+ end
768
+
769
+ def test_assert_raises_exit
770
+ @tc.assert_raises SystemExit do
771
+ exit 1
772
+ end
773
+ end
774
+
775
+ def test_assert_raises_module
776
+ @tc.assert_raises MyModule do
777
+ raise AnError
778
+ end
779
+ end
780
+
781
+ def test_assert_raises_signals
782
+ @tc.assert_raises SignalException do
783
+ raise SignalException, :INT
784
+ end
785
+ end
786
+
787
+ def test_assert_raises_throw_nested_bad
788
+ @assertion_count = 0
789
+
790
+ assert_unexpected "RuntimeError: boom!" do
791
+ @tc.assert_raises do
792
+ @tc.assert_throws :blah do
793
+ raise "boom!"
794
+ throw :not_blah
795
+ end
796
+ end
797
+ end
798
+ end
799
+
800
+ ##
801
+ # *sigh* This is quite an odd scenario, but it is from real (albeit
802
+ # ugly) test code in ruby-core:
803
+
804
+ # http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=29259
805
+
806
+ def test_assert_raises_skip
807
+ @assertion_count = 0
808
+
809
+ assert_triggered "skipped", Minitest::Skip do
810
+ @tc.assert_raises ArgumentError do
811
+ begin
812
+ raise "blah"
813
+ rescue
814
+ skip "skipped"
815
+ end
816
+ end
817
+ end
818
+ end
819
+
820
+ def test_assert_raises_subclass
821
+ @tc.assert_raises StandardError do
822
+ raise AnError
823
+ end
824
+ end
825
+
826
+ def test_assert_raises_subclass_triggered
827
+ e = assert_raises Minitest::Assertion do
828
+ @tc.assert_raises SomeError do
829
+ raise AnError, "some message"
830
+ end
831
+ end
832
+
833
+ expected = clean <<-EOM
834
+ [SomeError] exception expected, not
835
+ Class: <AnError>
836
+ Message: <\"some message\">
837
+ ---Backtrace---
838
+ FILE:LINE:in \`test_assert_raises_subclass_triggered\'
839
+ ---------------
840
+ EOM
841
+
842
+ actual = e.message.gsub(/^.+:\d+/, "FILE:LINE")
843
+ actual.gsub!(/block \(\d+ levels\) in /, "") if RUBY_VERSION >= "1.9.0"
844
+
845
+ assert_equal expected.chomp, actual
846
+ end
847
+
848
+ def test_assert_raises_triggered_different
849
+ e = assert_raises Minitest::Assertion do
850
+ @tc.assert_raises RuntimeError do
851
+ raise SyntaxError, "icky"
852
+ end
853
+ end
854
+
855
+ expected = clean <<-EOM.chomp
856
+ [RuntimeError] exception expected, not
857
+ Class: <SyntaxError>
858
+ Message: <\"icky\">
859
+ ---Backtrace---
860
+ FILE:LINE:in \`test_assert_raises_triggered_different\'
861
+ ---------------
862
+ EOM
863
+
864
+ actual = e.message.gsub(/^.+:\d+/, "FILE:LINE")
865
+ actual.gsub!(/block \(\d+ levels\) in /, "") if RUBY_VERSION >= "1.9.0"
866
+
867
+ assert_equal expected, actual
868
+ end
869
+
870
+ def test_assert_raises_triggered_different_msg
871
+ e = assert_raises Minitest::Assertion do
872
+ @tc.assert_raises RuntimeError, "XXX" do
873
+ raise SyntaxError, "icky"
874
+ end
875
+ end
876
+
877
+ expected = clean <<-EOM
878
+ XXX.
879
+ [RuntimeError] exception expected, not
880
+ Class: <SyntaxError>
881
+ Message: <\"icky\">
882
+ ---Backtrace---
883
+ FILE:LINE:in \`test_assert_raises_triggered_different_msg\'
884
+ ---------------
885
+ EOM
886
+
887
+ actual = e.message.gsub(/^.+:\d+/, "FILE:LINE")
888
+ actual.gsub!(/block \(\d+ levels\) in /, "") if RUBY_VERSION >= "1.9.0"
889
+
890
+ assert_equal expected.chomp, actual
891
+ end
892
+
893
+ def test_assert_raises_triggered_none
894
+ e = assert_raises Minitest::Assertion do
895
+ @tc.assert_raises Minitest::Assertion do
896
+ # do nothing
897
+ end
898
+ end
899
+
900
+ expected = "Minitest::Assertion expected but nothing was raised."
901
+
902
+ assert_equal expected, e.message
903
+ end
904
+
905
+ def test_assert_raises_triggered_none_msg
906
+ e = assert_raises Minitest::Assertion do
907
+ @tc.assert_raises Minitest::Assertion, "XXX" do
908
+ # do nothing
909
+ end
910
+ end
911
+
912
+ expected = "XXX.\nMinitest::Assertion expected but nothing was raised."
913
+
914
+ assert_equal expected, e.message
915
+ end
916
+
917
+ def test_assert_raises_without_block
918
+ assert_triggered "assert_raises requires a block to capture errors." do
919
+ @tc.assert_raises StandardError
920
+ end
921
+ end
922
+
923
+ def test_assert_respond_to
924
+ @tc.assert_respond_to "blah", :empty?
925
+ end
926
+
927
+ def test_assert_respond_to_triggered
928
+ assert_triggered 'Expected "blah" (String) to respond to #rawr!.' do
929
+ @tc.assert_respond_to "blah", :rawr!
930
+ end
931
+ end
932
+
933
+ def test_assert_same
934
+ @assertion_count = 3
935
+
936
+ o = "blah"
937
+ @tc.assert_same 1, 1
938
+ @tc.assert_same :blah, :blah
939
+ @tc.assert_same o, o
940
+ end
941
+
942
+ def test_assert_same_triggered
943
+ @assertion_count = 2
944
+
945
+ assert_triggered "Expected 2 (oid=N) to be the same as 1 (oid=N)." do
946
+ @tc.assert_same 1, 2
947
+ end
948
+
949
+ s1 = "blah"
950
+ s2 = "blah"
951
+
952
+ assert_triggered 'Expected "blah" (oid=N) to be the same as "blah" (oid=N).' do
953
+ @tc.assert_same s1, s2
954
+ end
955
+ end
956
+
957
+ def test_assert_send
958
+ assert_deprecated :assert_send do
959
+ @tc.assert_send [1, :<, 2]
960
+ end
961
+ end
962
+
963
+ def test_assert_send_bad
964
+ assert_deprecated :assert_send do
965
+ assert_triggered "Expected 1.>(*[2]) to return true." do
966
+ @tc.assert_send [1, :>, 2]
967
+ end
968
+ end
969
+ end
970
+
971
+ def test_assert_silent
972
+ @assertion_count = 2
973
+
974
+ @tc.assert_silent do
975
+ # do nothing
976
+ end
977
+ end
978
+
979
+ def test_assert_silent_triggered_err
980
+ assert_triggered util_msg("", "blah blah", "In stderr") do
981
+ @tc.assert_silent do
982
+ $stderr.print "blah blah"
983
+ end
984
+ end
985
+ end
986
+
987
+ def test_assert_silent_triggered_out
988
+ @assertion_count = 2
989
+
990
+ assert_triggered util_msg("", "blah blah", "In stdout") do
991
+ @tc.assert_silent do
992
+ print "blah blah"
993
+ end
994
+ end
995
+ end
996
+
997
+ def test_assert_throws
998
+ @tc.assert_throws :blah do
999
+ throw :blah
1000
+ end
1001
+ end
1002
+
1003
+ def test_assert_throws_argument_exception
1004
+ @assertion_count = 0
1005
+
1006
+ assert_unexpected "ArgumentError" do
1007
+ @tc.assert_throws :blah do
1008
+ raise ArgumentError
1009
+ end
1010
+ end
1011
+ end
1012
+
1013
+ def test_assert_throws_different
1014
+ assert_triggered "Expected :blah to have been thrown, not :not_blah." do
1015
+ @tc.assert_throws :blah do
1016
+ throw :not_blah
1017
+ end
1018
+ end
1019
+ end
1020
+
1021
+ def test_assert_throws_name_error
1022
+ @assertion_count = 0
1023
+
1024
+ assert_unexpected "NameError" do
1025
+ @tc.assert_throws :blah do
1026
+ raise NameError
1027
+ end
1028
+ end
1029
+ end
1030
+
1031
+ def test_assert_throws_unthrown
1032
+ assert_triggered "Expected :blah to have been thrown." do
1033
+ @tc.assert_throws :blah do
1034
+ # do nothing
1035
+ end
1036
+ end
1037
+ end
1038
+
1039
+ def test_assert_path_exists
1040
+ @tc.assert_path_exists __FILE__
1041
+ end
1042
+
1043
+ def test_assert_path_exists_triggered
1044
+ assert_triggered "Expected path 'blah' to exist." do
1045
+ @tc.assert_path_exists "blah"
1046
+ end
1047
+ end
1048
+
1049
+ def test_capture_io
1050
+ @assertion_count = 0
1051
+
1052
+ non_verbose do
1053
+ out, err = capture_io do
1054
+ puts "hi"
1055
+ $stderr.puts "bye!"
1056
+ end
1057
+
1058
+ assert_equal "hi\n", out
1059
+ assert_equal "bye!\n", err
1060
+ end
1061
+ end
1062
+
1063
+ def test_capture_subprocess_io
1064
+ @assertion_count = 0
1065
+
1066
+ non_verbose do
1067
+ out, err = capture_subprocess_io do
1068
+ system("echo hi")
1069
+ system("echo bye! 1>&2")
1070
+ end
1071
+
1072
+ assert_equal "hi\n", out
1073
+ assert_equal "bye!", err.strip
1074
+ end
1075
+ end
1076
+
1077
+ def test_class_asserts_match_refutes
1078
+ @assertion_count = 0
1079
+
1080
+ methods = Minitest::Assertions.public_instance_methods
1081
+ methods.map!(&:to_s) if Symbol === methods.first
1082
+
1083
+ # These don't have corresponding refutes _on purpose_. They're
1084
+ # useless and will never be added, so don't bother.
1085
+ ignores = %w[assert_output assert_raises assert_send
1086
+ assert_silent assert_throws assert_mock]
1087
+
1088
+ # These are test/unit methods. I'm not actually sure why they're still here
1089
+ ignores += %w[assert_no_match assert_not_equal assert_not_nil
1090
+ assert_not_same assert_nothing_raised
1091
+ assert_nothing_thrown assert_raise]
1092
+
1093
+ asserts = methods.grep(/^assert/).sort - ignores
1094
+ refutes = methods.grep(/^refute/).sort - ignores
1095
+
1096
+ assert_empty refutes.map { |n| n.sub(/^refute/, "assert") } - asserts
1097
+ assert_empty asserts.map { |n| n.sub(/^assert/, "refute") } - refutes
1098
+ end
1099
+
1100
+ def test_delta_consistency
1101
+ @assertion_count = 2
1102
+
1103
+ @tc.assert_in_delta 0, 1, 1
1104
+
1105
+ assert_triggered "Expected |0 - 1| (1) to not be <= 1." do
1106
+ @tc.refute_in_delta 0, 1, 1
1107
+ end
1108
+ end
1109
+
1110
+ def test_epsilon_consistency
1111
+ @assertion_count = 2
1112
+
1113
+ @tc.assert_in_epsilon 1.0, 1.001
1114
+
1115
+ msg = "Expected |1.0 - 1.001| (0.000999xxx) to not be <= 0.001."
1116
+ assert_triggered msg do
1117
+ @tc.refute_in_epsilon 1.0, 1.001
1118
+ end
1119
+ end
1120
+
1121
+ def test_fail_after
1122
+ t = Time.now
1123
+ y, m, d = t.year, t.month, t.day
1124
+
1125
+ assert_silent do
1126
+ @tc.fail_after y, m, d+1, "remove the deprecations"
1127
+ end
1128
+
1129
+ assert_triggered "remove the deprecations" do
1130
+ @tc.fail_after y, m, d, "remove the deprecations"
1131
+ end
1132
+ end
1133
+
1134
+ def test_flunk
1135
+ assert_triggered "Epic Fail!" do
1136
+ @tc.flunk
1137
+ end
1138
+ end
1139
+
1140
+ def test_flunk_message
1141
+ assert_triggered @zomg do
1142
+ @tc.flunk @zomg
1143
+ end
1144
+ end
1145
+
1146
+ def test_pass
1147
+ @tc.pass
1148
+ end
1149
+
1150
+ def test_refute
1151
+ @assertion_count = 2
1152
+
1153
+ @tc.assert_equal true, @tc.refute(false), "returns true on success"
1154
+ end
1155
+
1156
+ def test_refute_empty
1157
+ @assertion_count = 2
1158
+
1159
+ @tc.refute_empty [1]
1160
+ end
1161
+
1162
+ def test_refute_empty_triggered
1163
+ @assertion_count = 2
1164
+
1165
+ assert_triggered "Expected [] to not be empty." do
1166
+ @tc.refute_empty []
1167
+ end
1168
+ end
1169
+
1170
+ def test_refute_equal
1171
+ @tc.refute_equal "blah", "yay"
1172
+ end
1173
+
1174
+ def test_refute_equal_triggered
1175
+ assert_triggered 'Expected "blah" to not be equal to "blah".' do
1176
+ @tc.refute_equal "blah", "blah"
1177
+ end
1178
+ end
1179
+
1180
+ def test_refute_in_delta
1181
+ @tc.refute_in_delta 0.0, 1.0 / 1000, 0.000001
1182
+ end
1183
+
1184
+ def test_refute_in_delta_triggered
1185
+ x = "0.1"
1186
+ assert_triggered "Expected |0.0 - 0.001| (0.001) to not be <= #{x}." do
1187
+ @tc.refute_in_delta 0.0, 1.0 / 1000, 0.1
1188
+ end
1189
+ end
1190
+
1191
+ def test_refute_in_epsilon
1192
+ @tc.refute_in_epsilon 10_000, 9990-1
1193
+ end
1194
+
1195
+ def test_refute_in_epsilon_triggered
1196
+ assert_triggered "Expected |10000 - 9990| (10) to not be <= 10.0." do
1197
+ @tc.refute_in_epsilon 10_000, 9990
1198
+ flunk
1199
+ end
1200
+ end
1201
+
1202
+ def test_refute_includes
1203
+ @assertion_count = 2
1204
+
1205
+ @tc.refute_includes [true], false
1206
+ end
1207
+
1208
+ def test_refute_includes_triggered
1209
+ @assertion_count = 3
1210
+
1211
+ e = @tc.assert_raises Minitest::Assertion do
1212
+ @tc.refute_includes [true], true
1213
+ end
1214
+
1215
+ expected = "Expected [true] to not include true."
1216
+ assert_equal expected, e.message
1217
+ end
1218
+
1219
+ def test_refute_instance_of
1220
+ @tc.refute_instance_of Array, "blah"
1221
+ end
1222
+
1223
+ def test_refute_instance_of_triggered
1224
+ assert_triggered 'Expected "blah" to not be an instance of String.' do
1225
+ @tc.refute_instance_of String, "blah"
1226
+ end
1227
+ end
1228
+
1229
+ def test_refute_kind_of
1230
+ @tc.refute_kind_of Array, "blah"
1231
+ end
1232
+
1233
+ def test_refute_kind_of_triggered
1234
+ assert_triggered 'Expected "blah" to not be a kind of String.' do
1235
+ @tc.refute_kind_of String, "blah"
1236
+ end
1237
+ end
1238
+
1239
+ def test_refute_match
1240
+ @assertion_count = 2
1241
+ @tc.refute_match(/\d+/, "blah blah blah")
1242
+ end
1243
+
1244
+ def test_refute_match_matcher_object
1245
+ @assertion_count = 2
1246
+ pattern = Object.new
1247
+ def pattern.=~ _; false end
1248
+ @tc.refute_match pattern, 5
1249
+ end
1250
+
1251
+ def test_refute_match_object_triggered
1252
+ @assertion_count = 2
1253
+
1254
+ pattern = Object.new
1255
+ def pattern.=~ _; true end
1256
+ def pattern.inspect; "[Object]" end
1257
+
1258
+ assert_triggered "Expected [Object] to not match 5." do
1259
+ @tc.refute_match pattern, 5
1260
+ end
1261
+ end
1262
+
1263
+ def test_refute_match_triggered
1264
+ @assertion_count = 2
1265
+ assert_triggered 'Expected /\w+/ to not match "blah blah blah".' do
1266
+ @tc.refute_match(/\w+/, "blah blah blah")
1267
+ end
1268
+ end
1269
+
1270
+ def test_refute_nil
1271
+ @tc.refute_nil 42
1272
+ end
1273
+
1274
+ def test_refute_nil_triggered
1275
+ assert_triggered "Expected nil to not be nil." do
1276
+ @tc.refute_nil nil
1277
+ end
1278
+ end
1279
+
1280
+ def test_refute_operator
1281
+ @tc.refute_operator 2, :<, 1
1282
+ end
1283
+
1284
+ def test_refute_operator_bad_object
1285
+ bad = Object.new
1286
+ def bad.== _; true end
1287
+
1288
+ @tc.refute_operator true, :equal?, bad
1289
+ end
1290
+
1291
+ def test_refute_operator_triggered
1292
+ assert_triggered "Expected 2 to not be > 1." do
1293
+ @tc.refute_operator 2, :>, 1
1294
+ end
1295
+ end
1296
+
1297
+ def test_refute_predicate
1298
+ @tc.refute_predicate "42", :empty?
1299
+ end
1300
+
1301
+ def test_refute_predicate_triggered
1302
+ assert_triggered 'Expected "" to not be empty?.' do
1303
+ @tc.refute_predicate "", :empty?
1304
+ end
1305
+ end
1306
+
1307
+ def test_refute_respond_to
1308
+ @tc.refute_respond_to "blah", :rawr!
1309
+ end
1310
+
1311
+ def test_refute_respond_to_triggered
1312
+ assert_triggered 'Expected "blah" to not respond to empty?.' do
1313
+ @tc.refute_respond_to "blah", :empty?
1314
+ end
1315
+ end
1316
+
1317
+ def test_refute_same
1318
+ @tc.refute_same 1, 2
1319
+ end
1320
+
1321
+ def test_refute_same_triggered
1322
+ assert_triggered "Expected 1 (oid=N) to not be the same as 1 (oid=N)." do
1323
+ @tc.refute_same 1, 1
1324
+ end
1325
+ end
1326
+
1327
+ def test_refute_path_exists
1328
+ @tc.refute_path_exists "blah"
1329
+ end
1330
+
1331
+ def test_refute_path_exists_triggered
1332
+ assert_triggered "Expected path '#{__FILE__}' to not exist." do
1333
+ @tc.refute_path_exists __FILE__
1334
+ end
1335
+ end
1336
+
1337
+ def test_skip
1338
+ @assertion_count = 0
1339
+
1340
+ assert_triggered "haha!", Minitest::Skip do
1341
+ @tc.skip "haha!"
1342
+ end
1343
+ end
1344
+
1345
+ def test_skip_until
1346
+ @assertion_count = 0
1347
+
1348
+ t = Time.now
1349
+ y, m, d = t.year, t.month, t.day
1350
+
1351
+ assert_output "", /Stale skip_until \"not yet\" at .*?:\d+$/ do
1352
+ @tc.skip_until y, m, d, "not yet"
1353
+ end
1354
+
1355
+ assert_triggered "not ready yet", Minitest::Skip do
1356
+ @tc.skip_until y, m, d+1, "not ready yet"
1357
+ end
1358
+ end
1359
+
1360
+ def util_msg exp, act, msg = nil
1361
+ s = "Expected: #{exp.inspect}\n Actual: #{act.inspect}"
1362
+ s = "#{msg}.\n#{s}" if msg
1363
+ s
1364
+ end
1365
+
1366
+ def without_diff
1367
+ old_diff = Minitest::Assertions.diff
1368
+ Minitest::Assertions.diff = nil
1369
+
1370
+ yield
1371
+ ensure
1372
+ Minitest::Assertions.diff = old_diff
1373
+ end
1374
+ end
1375
+
1376
+ class TestMinitestAssertionHelpers < Minitest::Test
1377
+ def assert_mu_pp exp, input, raw = false
1378
+ act = mu_pp input
1379
+
1380
+ if String === input && !raw then
1381
+ assert_equal "\"#{exp}\"", act
1382
+ else
1383
+ assert_equal exp, act
1384
+ end
1385
+ end
1386
+
1387
+ def assert_mu_pp_for_diff exp, input, raw = false
1388
+ act = mu_pp_for_diff input
1389
+
1390
+ if String === input && !raw then
1391
+ assert_equal "\"#{exp}\"", act
1392
+ else
1393
+ assert_equal exp, act
1394
+ end
1395
+ end
1396
+
1397
+ def test_diff_equal
1398
+ msg = "No visible difference in the String#inspect output.
1399
+ You should look at the implementation of #== on String or its members.
1400
+ \"blahblahblahblahblahblahblahblahblahblah\"".gsub(/^ +/, "")
1401
+
1402
+ o1 = "blah" * 10
1403
+ o2 = "blah" * 10
1404
+ def o1.== _
1405
+ false
1406
+ end
1407
+
1408
+ assert_equal msg, diff(o1, o2)
1409
+ end
1410
+
1411
+ def test_diff_str_mixed
1412
+ msg = <<-'EOM'.gsub(/^ {10}/, "") # NOTE single quotes on heredoc
1413
+ --- expected
1414
+ +++ actual
1415
+ @@ -1 +1 @@
1416
+ -"A\\n\nB"
1417
+ +"A\n\\nB"
1418
+ EOM
1419
+
1420
+ exp = "A\\n\nB"
1421
+ act = "A\n\\nB"
1422
+
1423
+ assert_equal msg, diff(exp, act)
1424
+ end
1425
+
1426
+ def test_diff_str_multiline
1427
+ msg = <<-'EOM'.gsub(/^ {10}/, "") # NOTE single quotes on heredoc
1428
+ --- expected
1429
+ +++ actual
1430
+ @@ -1,2 +1,2 @@
1431
+ "A
1432
+ -B"
1433
+ +C"
1434
+ EOM
1435
+
1436
+ exp = "A\nB"
1437
+ act = "A\nC"
1438
+
1439
+ assert_equal msg, diff(exp, act)
1440
+ end
1441
+
1442
+ def test_diff_str_simple
1443
+ msg = <<-'EOM'.gsub(/^ {10}/, "").chomp # NOTE single quotes on heredoc
1444
+ Expected: "A"
1445
+ Actual: "B"
1446
+ EOM
1447
+
1448
+ exp = "A"
1449
+ act = "B"
1450
+
1451
+ assert_equal msg, diff(exp, act)
1452
+ end
1453
+
1454
+ def test_message
1455
+ assert_equal "blah2.", message { "blah2" }.call
1456
+ assert_equal "blah2.", message("") { "blah2" }.call
1457
+ assert_equal "blah1.\nblah2.", message(:blah1) { "blah2" }.call
1458
+ assert_equal "blah1.\nblah2.", message("blah1") { "blah2" }.call
1459
+
1460
+ message = proc { "blah1" }
1461
+ assert_equal "blah1.\nblah2.", message(message) { "blah2" }.call
1462
+
1463
+ message = message { "blah1" }
1464
+ assert_equal "blah1.\nblah2.", message(message) { "blah2" }.call
1465
+ end
1466
+
1467
+ def test_message_deferred
1468
+ var = nil
1469
+
1470
+ msg = message { var = "blah" }
1471
+
1472
+ assert_nil var
1473
+
1474
+ msg.call
1475
+
1476
+ assert_equal "blah", var
1477
+ end
1478
+
1479
+ def test_mu_pp
1480
+ assert_mu_pp 42.inspect, 42
1481
+ assert_mu_pp %w[a b c].inspect, %w[a b c]
1482
+ assert_mu_pp "A B", "A B"
1483
+ assert_mu_pp "A\\nB", "A\nB"
1484
+ assert_mu_pp "A\\\\nB", 'A\nB' # notice single quotes
1485
+ end
1486
+
1487
+ def test_mu_pp_for_diff
1488
+ assert_mu_pp_for_diff "#<Object:0xXXXXXX>", Object.new
1489
+ assert_mu_pp_for_diff "A B", "A B"
1490
+ assert_mu_pp_for_diff [1, 2, 3].inspect, [1, 2, 3]
1491
+ assert_mu_pp_for_diff "A\nB", "A\nB"
1492
+ end
1493
+
1494
+ def test_mu_pp_for_diff_str_bad_encoding
1495
+ str = "\666".force_encoding Encoding::UTF_8
1496
+ exp = "# encoding: UTF-8\n# valid: false\n\"\\xB6\""
1497
+
1498
+ assert_mu_pp_for_diff exp, str, :raw
1499
+ end
1500
+
1501
+ def test_mu_pp_for_diff_str_bad_encoding_both
1502
+ str = "\666A\\n\nB".force_encoding Encoding::UTF_8
1503
+ exp = "# encoding: UTF-8\n# valid: false\n\"\\xB6A\\\\n\\nB\""
1504
+
1505
+ assert_mu_pp_for_diff exp, str, :raw
1506
+ end
1507
+
1508
+ def test_mu_pp_for_diff_str_encoding
1509
+ str = "A\nB".b
1510
+ exp = "# encoding: ASCII-8BIT\n# valid: true\n\"A\nB\""
1511
+
1512
+ assert_mu_pp_for_diff exp, str, :raw
1513
+ end
1514
+
1515
+ def test_mu_pp_for_diff_str_encoding_both
1516
+ str = "A\\n\nB".b
1517
+ exp = "# encoding: ASCII-8BIT\n# valid: true\n\"A\\\\n\\nB\""
1518
+
1519
+ assert_mu_pp_for_diff exp, str, :raw
1520
+ end
1521
+
1522
+ def test_mu_pp_for_diff_str_nerd
1523
+ assert_mu_pp_for_diff "A\\nB\\\\nC", "A\nB\\nC"
1524
+ assert_mu_pp_for_diff "\\nB\\\\nC", "\nB\\nC"
1525
+ assert_mu_pp_for_diff "\\nB\\\\n", "\nB\\n"
1526
+ assert_mu_pp_for_diff "\\n\\\\n", "\n\\n"
1527
+ assert_mu_pp_for_diff "\\\\n\\n", "\\n\n"
1528
+ assert_mu_pp_for_diff "\\\\nB\\n", "\\nB\n"
1529
+ assert_mu_pp_for_diff "\\\\nB\\nC", "\\nB\nC"
1530
+ assert_mu_pp_for_diff "A\\\\n\\nB", "A\\n\nB"
1531
+ assert_mu_pp_for_diff "A\\n\\\\nB", "A\n\\nB"
1532
+ assert_mu_pp_for_diff "\\\\n\\n", "\\n\n"
1533
+ assert_mu_pp_for_diff "\\n\\\\n", "\n\\n"
1534
+ end
1535
+
1536
+ def test_mu_pp_for_diff_str_normal
1537
+ assert_mu_pp_for_diff "", ""
1538
+ assert_mu_pp_for_diff "A\\n\n", "A\\n"
1539
+ assert_mu_pp_for_diff "A\\n\nB", "A\\nB"
1540
+ assert_mu_pp_for_diff "A\n", "A\n"
1541
+ assert_mu_pp_for_diff "A\nB", "A\nB"
1542
+ assert_mu_pp_for_diff "\\n\n", "\\n"
1543
+ assert_mu_pp_for_diff "\n", "\n"
1544
+ assert_mu_pp_for_diff "\\n\nA", "\\nA"
1545
+ assert_mu_pp_for_diff "\nA", "\nA"
1546
+ end
1547
+
1548
+ def test_mu_pp_str_bad_encoding
1549
+ str = "\666".force_encoding Encoding::UTF_8
1550
+ exp = "# encoding: UTF-8\n# valid: false\n\"\\xB6\""
1551
+
1552
+ assert_mu_pp exp, str, :raw
1553
+ end
1554
+
1555
+ def test_mu_pp_str_encoding
1556
+ str = "A\nB".b
1557
+ exp = "# encoding: ASCII-8BIT\n# valid: true\n\"A\\nB\""
1558
+
1559
+ assert_mu_pp exp, str, :raw
1560
+ end
1561
+
1562
+ def test_mu_pp_str_immutable
1563
+ printer = Class.new { extend Minitest::Assertions }
1564
+ str = "test".freeze
1565
+ assert_equal '"test"', printer.mu_pp(str)
1566
+ end
1567
+ end