win32-api 1.10.0 → 1.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES +3 -0
  3. data/Gemfile.lock +5 -5
  4. data/ext/mkmf.log +3 -27
  5. data/ext/win32/api.c +16 -15
  6. data/lib/win32/ruby2_32/win32/api.so +0 -0
  7. data/pkg/win32-api-1.10.1-universal-mingw32.gem +0 -0
  8. data/test/test_win32_api.rb +1 -1
  9. data/vendor/bundle/ruby/3.0.0/bin/rake +27 -0
  10. data/vendor/bundle/ruby/3.0.0/bin/rake.bat +2 -0
  11. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/BSDL +22 -0
  12. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/COPYING +57 -0
  13. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/Gemfile +9 -0
  14. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/LEGAL +4 -0
  15. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/README.md +96 -0
  16. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/Rakefile +59 -0
  17. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/bin/console +12 -0
  18. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/bin/setup +6 -0
  19. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/lib/power_assert.rb +91 -0
  20. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/lib/power_assert/colorize.rb +7 -0
  21. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/lib/power_assert/configuration.rb +46 -0
  22. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/lib/power_assert/context.rb +233 -0
  23. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/lib/power_assert/enable_tracepoint_events.rb +58 -0
  24. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/lib/power_assert/inspector.rb +62 -0
  25. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/lib/power_assert/parser.rb +251 -0
  26. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/lib/power_assert/version.rb +3 -0
  27. data/vendor/bundle/ruby/3.0.0/gems/power_assert-2.0.0/power_assert.gemspec +31 -0
  28. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/CONTRIBUTING.rdoc +43 -0
  29. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/Gemfile +10 -0
  30. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/History.rdoc +2386 -0
  31. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/MIT-LICENSE +21 -0
  32. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/README.rdoc +155 -0
  33. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/Rakefile +41 -0
  34. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/bin/bundle +105 -0
  35. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/bin/console +7 -0
  36. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/bin/rake +29 -0
  37. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/bin/rdoc +29 -0
  38. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/bin/rubocop +29 -0
  39. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/bin/setup +6 -0
  40. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/command_line_usage.rdoc +158 -0
  41. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/example/Rakefile1 +38 -0
  42. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/example/Rakefile2 +35 -0
  43. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/example/a.c +6 -0
  44. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/example/b.c +6 -0
  45. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/example/main.c +11 -0
  46. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/glossary.rdoc +42 -0
  47. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/jamis.rb +592 -0
  48. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/proto_rake.rdoc +127 -0
  49. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/rake.1 +156 -0
  50. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/rakefile.rdoc +622 -0
  51. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/doc/rational.rdoc +151 -0
  52. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/exe/rake +27 -0
  53. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake.rb +71 -0
  54. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/application.rb +824 -0
  55. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/backtrace.rb +24 -0
  56. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/clean.rb +78 -0
  57. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/cloneable.rb +17 -0
  58. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/cpu_counter.rb +107 -0
  59. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/default_loader.rb +15 -0
  60. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/dsl_definition.rb +195 -0
  61. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/early_time.rb +22 -0
  62. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/ext/core.rb +26 -0
  63. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/ext/string.rb +176 -0
  64. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/file_creation_task.rb +25 -0
  65. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/file_list.rb +435 -0
  66. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/file_task.rb +54 -0
  67. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/file_utils.rb +134 -0
  68. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/file_utils_ext.rb +134 -0
  69. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/invocation_chain.rb +57 -0
  70. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/invocation_exception_mixin.rb +17 -0
  71. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/late_time.rb +18 -0
  72. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/linked_list.rb +112 -0
  73. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/loaders/makefile.rb +54 -0
  74. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/multi_task.rb +14 -0
  75. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/name_space.rb +38 -0
  76. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/packagetask.rb +222 -0
  77. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/phony.rb +16 -0
  78. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/private_reader.rb +21 -0
  79. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/promise.rb +100 -0
  80. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/pseudo_status.rb +30 -0
  81. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/rake_module.rb +67 -0
  82. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/rake_test_loader.rb +27 -0
  83. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/rule_recursion_overflow_error.rb +20 -0
  84. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/scope.rb +43 -0
  85. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/task.rb +434 -0
  86. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/task_argument_error.rb +8 -0
  87. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/task_arguments.rb +109 -0
  88. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/task_manager.rb +331 -0
  89. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/tasklib.rb +12 -0
  90. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/testtask.rb +189 -0
  91. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/thread_history_display.rb +49 -0
  92. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/thread_pool.rb +163 -0
  93. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/trace_output.rb +23 -0
  94. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/version.rb +10 -0
  95. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/lib/rake/win32.rb +51 -0
  96. data/vendor/bundle/ruby/3.0.0/gems/rake-13.0.3/rake.gemspec +43 -0
  97. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/BSDL +24 -0
  98. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/COPYING +64 -0
  99. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/PSFL +271 -0
  100. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/README.md +97 -0
  101. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/Rakefile +66 -0
  102. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/doc/text/getting-started.md +246 -0
  103. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/doc/text/how-to.md +90 -0
  104. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/doc/text/news.md +1552 -0
  105. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test-unit.rb +19 -0
  106. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit.rb +521 -0
  107. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/assertion-failed-error.rb +25 -0
  108. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/assertions.rb +2256 -0
  109. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/attribute-matcher.rb +26 -0
  110. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/attribute.rb +227 -0
  111. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/auto-runner-loader.rb +17 -0
  112. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/autorunner.rb +569 -0
  113. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/code-snippet-fetcher.rb +58 -0
  114. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/collector.rb +73 -0
  115. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/collector/descendant.rb +19 -0
  116. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/collector/dir.rb +108 -0
  117. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/collector/load.rb +197 -0
  118. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/collector/objectspace.rb +34 -0
  119. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/collector/xml.rb +249 -0
  120. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/color-scheme.rb +216 -0
  121. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/color.rb +134 -0
  122. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/data-sets.rb +116 -0
  123. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/data.rb +371 -0
  124. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/diff.rb +745 -0
  125. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/error.rb +158 -0
  126. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/exception-handler.rb +82 -0
  127. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/failure.rb +169 -0
  128. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/fault-location-detector.rb +100 -0
  129. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/fixture.rb +304 -0
  130. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/notification.rb +138 -0
  131. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/omission.rb +198 -0
  132. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/pending.rb +155 -0
  133. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/priority.rb +196 -0
  134. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/runner/console.rb +67 -0
  135. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/runner/emacs.rb +8 -0
  136. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/runner/xml.rb +15 -0
  137. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/test-suite-creator.rb +103 -0
  138. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/testcase.rb +899 -0
  139. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/testresult.rb +132 -0
  140. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/testsuite.rb +175 -0
  141. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/ui/console/outputlevel.rb +15 -0
  142. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/ui/console/testrunner.rb +733 -0
  143. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/ui/emacs/testrunner.rb +49 -0
  144. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/ui/testrunner.rb +53 -0
  145. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/ui/testrunnermediator.rb +114 -0
  146. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/ui/testrunnerutilities.rb +41 -0
  147. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/ui/xml/testrunner.rb +224 -0
  148. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/util/backtracefilter.rb +59 -0
  149. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/util/method-owner-finder.rb +28 -0
  150. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/util/observable.rb +90 -0
  151. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/util/output.rb +32 -0
  152. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/util/procwrapper.rb +48 -0
  153. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/version.rb +5 -0
  154. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/lib/test/unit/warning.rb +3 -0
  155. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/sample/adder.rb +13 -0
  156. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/sample/subtracter.rb +12 -0
  157. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/sample/test_adder.rb +20 -0
  158. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/sample/test_subtracter.rb +20 -0
  159. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/sample/test_user.rb +23 -0
  160. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/collector/test-descendant.rb +182 -0
  161. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/collector/test-load.rb +475 -0
  162. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/collector/test_dir.rb +407 -0
  163. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/collector/test_objectspace.rb +102 -0
  164. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/fixtures/header-label.csv +3 -0
  165. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/fixtures/header-label.tsv +3 -0
  166. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/fixtures/header.csv +3 -0
  167. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/fixtures/header.tsv +3 -0
  168. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/fixtures/no-header.csv +2 -0
  169. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/fixtures/no-header.tsv +2 -0
  170. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/fixtures/plus.csv +3 -0
  171. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/run-test.rb +22 -0
  172. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-assertions.rb +2187 -0
  173. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-attribute-matcher.rb +38 -0
  174. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-attribute.rb +123 -0
  175. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-code-snippet.rb +79 -0
  176. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-color-scheme.rb +123 -0
  177. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-color.rb +47 -0
  178. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-data.rb +419 -0
  179. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-diff.rb +518 -0
  180. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-emacs-runner.rb +60 -0
  181. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-error.rb +26 -0
  182. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-failure.rb +33 -0
  183. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-fault-location-detector.rb +163 -0
  184. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-fixture.rb +713 -0
  185. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-notification.rb +33 -0
  186. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-omission.rb +81 -0
  187. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-pending.rb +70 -0
  188. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-priority.rb +184 -0
  189. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-test-case.rb +1284 -0
  190. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-test-result.rb +113 -0
  191. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-test-suite-creator.rb +97 -0
  192. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/test-test-suite.rb +151 -0
  193. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/testunit-test-util.rb +33 -0
  194. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/ui/test_testrunmediator.rb +20 -0
  195. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/util/test-method-owner-finder.rb +38 -0
  196. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/util/test-output.rb +11 -0
  197. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/util/test_backtracefilter.rb +52 -0
  198. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/util/test_observable.rb +102 -0
  199. data/vendor/bundle/ruby/3.0.0/gems/test-unit-3.4.1/test/util/test_procwrapper.rb +36 -0
  200. data/vendor/bundle/ruby/3.0.0/specifications/power_assert-2.0.0.gemspec +46 -0
  201. data/vendor/bundle/ruby/3.0.0/specifications/rake-13.0.3.gemspec +26 -0
  202. data/vendor/bundle/ruby/3.0.0/specifications/test-unit-3.4.1.gemspec +41 -0
  203. data/win32-api.gemspec +1 -1
  204. metadata +199 -8
  205. data/ext/Makefile +0 -269
  206. data/ext/api-x64-mingw32.def +0 -2
  207. data/ext/api.o +0 -0
  208. data/ext/api.so +0 -0
  209. data/ext/win32/api.so +0 -0
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'bundler/setup'
4
+ require 'power_assert'
5
+
6
+ begin
7
+ require 'pry'
8
+ Pry
9
+ rescue LoadError
10
+ require 'irb'
11
+ IRB
12
+ end.start
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ bundle install
@@ -0,0 +1,91 @@
1
+ # power_assert.rb
2
+ #
3
+ # Copyright (C) 2014 Kazuki Tsujimoto
4
+
5
+ begin
6
+ unless defined?(Byebug)
7
+ captured = false
8
+ TracePoint.new(:return, :c_return) do |tp|
9
+ captured = true
10
+ unless tp.binding and tp.return_value and tp.callee_id
11
+ raise ''
12
+ end
13
+ end.enable { __id__ }
14
+ raise '' unless captured
15
+ end
16
+ rescue
17
+ raise LoadError, 'Fully compatible TracePoint API required'
18
+ end
19
+
20
+ require 'power_assert/context'
21
+ require 'power_assert/configuration'
22
+ require 'power_assert/version'
23
+
24
+ module PowerAssert
25
+ POWER_ASSERT_LIB_DIR = File.dirname(caller_locations(1, 1).first.path)
26
+ INTERNAL_LIB_DIRS = {PowerAssert => POWER_ASSERT_LIB_DIR}
27
+ private_constant :POWER_ASSERT_LIB_DIR, :INTERNAL_LIB_DIRS
28
+
29
+ class << self
30
+ def start(assertion_proc_or_source, assertion_method: nil, source_binding: TOPLEVEL_BINDING)
31
+ if respond_to?(:clear_global_method_cache, true)
32
+ clear_global_method_cache
33
+ end
34
+ yield BlockContext.new(assertion_proc_or_source, assertion_method, source_binding)
35
+ end
36
+
37
+ def trace(frame)
38
+ begin
39
+ raise 'Byebug is not started yet' unless Byebug.started?
40
+ rescue NameError
41
+ raise "PowerAssert.#{__method__} requires Byebug"
42
+ end
43
+ ctx = TraceContext.new(frame._binding)
44
+ ctx.enable
45
+ ctx
46
+ end
47
+
48
+ def app_caller_locations
49
+ caller_locations.drop_while {|i| internal_file?(i.path) }.take_while {|i| ! internal_file?(i.path) }
50
+ end
51
+
52
+ def app_context?
53
+ top_frame = caller_locations.drop_while {|i| i.path.start_with?(POWER_ASSERT_LIB_DIR) }.first
54
+ top_frame and ! internal_file?(top_frame.path)
55
+ end
56
+
57
+ private
58
+
59
+ def internal_file?(file)
60
+ setup_internal_lib_dir(Byebug, :attach, 2) if defined?(Byebug)
61
+ setup_internal_lib_dir(PryByebug, :start_with_pry_byebug, 2, Pry) if defined?(PryByebug)
62
+ INTERNAL_LIB_DIRS.find do |_, dir|
63
+ file.start_with?(dir)
64
+ end
65
+ end
66
+
67
+ def setup_internal_lib_dir(lib, mid, depth, lib_obj = lib)
68
+ unless INTERNAL_LIB_DIRS.key?(lib)
69
+ INTERNAL_LIB_DIRS[lib] = lib_dir(lib_obj, mid, depth)
70
+ end
71
+ rescue NameError
72
+ end
73
+
74
+ def lib_dir(obj, mid, depth)
75
+ File.expand_path('../' * depth, obj.method(mid).source_location[0])
76
+ end
77
+
78
+ if defined?(RubyVM)
79
+ CLEAR_CACHE_ISEQ = RubyVM::InstructionSequence.compile('using PowerAssert.const_get(:Empty)')
80
+ private_constant :CLEAR_CACHE_ISEQ
81
+
82
+ def clear_global_method_cache
83
+ CLEAR_CACHE_ISEQ.eval
84
+ end
85
+ end
86
+ end
87
+
88
+ module Empty
89
+ end
90
+ private_constant :Empty
91
+ end
@@ -0,0 +1,7 @@
1
+ require 'power_assert/configuration'
2
+
3
+ PowerAssert.configure do |c|
4
+ c.lazy_inspection = true
5
+ c.colorize_message = true
6
+ c.inspector = :pp
7
+ end
@@ -0,0 +1,46 @@
1
+ module PowerAssert
2
+ class << self
3
+ def configuration
4
+ @configuration ||= Configuration[false, true, false, :p]
5
+ end
6
+
7
+ def configure
8
+ yield configuration
9
+ end
10
+ end
11
+
12
+ class Configuration < Struct.new(:lazy_inspection, :_redefinition, :colorize_message, :inspector)
13
+ def colorize_message=(bool)
14
+ if bool
15
+ require 'irb/color'
16
+ if inspector == :pp
17
+ require 'irb/color_printer'
18
+ end
19
+ end
20
+ super
21
+ end
22
+
23
+ def lazy_inspection=(bool)
24
+ unless bool
25
+ raise 'lazy_inspection option must be enabled when using pp' if inspector == :pp
26
+ end
27
+ super
28
+ end
29
+
30
+ def inspector=(inspector)
31
+ case inspector
32
+ when :pp
33
+ raise 'lazy_inspection option must be enabled when using pp' unless lazy_inspection
34
+ require 'pp'
35
+ if colorize_message
36
+ require 'irb/color_printer'
37
+ end
38
+ when :p
39
+ else
40
+ raise ArgumentError, "unknown inspector: #{inspector}"
41
+ end
42
+ super
43
+ end
44
+ end
45
+ private_constant :Configuration
46
+ end
@@ -0,0 +1,233 @@
1
+ require 'power_assert/configuration'
2
+ require 'power_assert/enable_tracepoint_events'
3
+ require 'power_assert/inspector'
4
+ require 'power_assert/parser'
5
+
6
+ module PowerAssert
7
+ class Context
8
+ Value = Struct.new(:name, :value, :lineno, :column, :display_offset)
9
+
10
+ def initialize(base_caller_length)
11
+ @fired = false
12
+ @target_thread = Thread.current
13
+ method_id_set = nil
14
+ @return_values = []
15
+ @trace_return = TracePoint.new(:return, :c_return) do |tp|
16
+ unless method_id_set
17
+ next unless Thread.current == @target_thread
18
+ method_id_set = @parser.method_id_set
19
+ end
20
+ method_id = tp.callee_id
21
+ next if ! method_id_set[method_id]
22
+ next if tp.event == :c_return and
23
+ not (@parser.lineno == tp.lineno and @parser.path == tp.path)
24
+ locs = PowerAssert.app_caller_locations
25
+ diff = locs.length - base_caller_length
26
+ if (tp.event == :c_return && diff == 1 || tp.event == :return && diff <= 2) and Thread.current == @target_thread
27
+ idx = -(base_caller_length + 1)
28
+ if @parser.path == locs[idx].path and @parser.lineno == locs[idx].lineno
29
+ val = PowerAssert.configuration.lazy_inspection ?
30
+ tp.return_value :
31
+ InspectedValue.new(SafeInspectable.new(tp.return_value).inspect)
32
+ @return_values << Value[method_id.to_s, val, locs[idx].lineno, nil]
33
+ end
34
+ end
35
+ rescue Exception => e
36
+ warn "power_assert: [BUG] Failed to trace: #{e.class}: #{e.message}"
37
+ if e.respond_to?(:full_message)
38
+ warn e.full_message.gsub(/^/, 'power_assert: ')
39
+ end
40
+ end
41
+ end
42
+
43
+ def message
44
+ raise 'call #yield or #enable at first' unless fired?
45
+ @message ||= build_assertion_message(@parser, @return_values).freeze
46
+ end
47
+
48
+ def message_proc
49
+ -> { message }
50
+ end
51
+
52
+ private
53
+
54
+ def fired?
55
+ @fired
56
+ end
57
+
58
+ def build_assertion_message(parser, return_values)
59
+ if PowerAssert.configuration.colorize_message
60
+ line = IRB::Color.colorize_code(parser.line, ignore_error: true)
61
+ else
62
+ line = parser.line
63
+ end
64
+
65
+ path = detect_path(parser, return_values)
66
+ return line unless path
67
+
68
+ c2d = column2display_offset(parser.line)
69
+ return_values, methods_in_path = find_all_identified_calls(return_values, path)
70
+ return_values.zip(methods_in_path) do |i, j|
71
+ unless i.name == j.name
72
+ warn "power_assert: [BUG] Failed to get column: #{i.name}"
73
+ return line
74
+ end
75
+ i.display_offset = c2d[j.column]
76
+ end
77
+ refs_in_path = path.find_all {|i| i.type == :ref }
78
+ ref_values = refs_in_path.map {|i| Value[i.name, parser.binding.eval(i.name), parser.lineno, i.column, c2d[i.column]] }
79
+ vals = (return_values + ref_values).find_all(&:display_offset).sort_by(&:display_offset).reverse
80
+ return line if vals.empty?
81
+
82
+ fmt = (0..vals[0].display_offset).map do |i|
83
+ if vals.find {|v| v.display_offset == i }
84
+ "%<#{i}>s"
85
+ else
86
+ line[i] == "\t" ? "\t" : ' '
87
+ end
88
+ end.join
89
+ lines = []
90
+ lines << line.chomp
91
+ lines << sprintf(fmt, vals.each_with_object({}) {|v, h| h[:"#{v.display_offset}"] = '|' }).chomp
92
+ vals.each do |i|
93
+ inspected_val = SafeInspectable.new(Inspector.new(i.value, i.display_offset)).inspect
94
+ inspected_val.each_line do |l|
95
+ map_to = vals.each_with_object({}) do |j, h|
96
+ h[:"#{j.display_offset}"] = [l, '|', ' '][i.display_offset <=> j.display_offset]
97
+ end
98
+ lines << encoding_safe_rstrip(sprintf(fmt, map_to))
99
+ end
100
+ end
101
+ lines.join("\n")
102
+ end
103
+
104
+ def detect_path(parser, return_values)
105
+ return parser.call_paths.flatten.uniq if parser.method_id_set.empty?
106
+ all_paths = parser.call_paths
107
+ return_value_names = return_values.map(&:name)
108
+ uniq_calls = uniq_calls(all_paths)
109
+ uniq_call = return_value_names.find {|i| uniq_calls.include?(i) }
110
+ detected_paths = all_paths.find_all do |path|
111
+ method_names = path.find_all {|ident| ident.type == :method }.map(&:name)
112
+ break [path] if uniq_call and method_names.include?(uniq_call)
113
+ return_value_names == method_names
114
+ end
115
+ return nil unless detected_paths.length == 1
116
+ detected_paths[0]
117
+ end
118
+
119
+ def uniq_calls(paths)
120
+ all_calls = enum_count_by(paths.map {|path| path.find_all {|ident| ident.type == :method }.map(&:name).uniq }.flatten) {|i| i }
121
+ all_calls.find_all {|_, call_count| call_count == 1 }.map {|name, _| name }
122
+ end
123
+
124
+ def find_all_identified_calls(return_values, path)
125
+ return_value_num_of_calls = enum_count_by(return_values, &:name)
126
+ path_num_of_calls = enum_count_by(path.find_all {|ident| ident.type == :method }, &:name)
127
+ identified_calls = return_value_num_of_calls.find_all {|name, num| path_num_of_calls[name] == num }.map(&:first)
128
+ [
129
+ return_values.find_all {|val| identified_calls.include?(val.name) },
130
+ path.find_all {|ident| ident.type == :method and identified_calls.include?(ident.name) }
131
+ ]
132
+ end
133
+
134
+ def enum_count_by(enum, &blk)
135
+ Hash[enum.group_by(&blk).map{|k, v| [k, v.length] }]
136
+ end
137
+
138
+ def encoding_safe_rstrip(str)
139
+ str.rstrip
140
+ rescue ArgumentError, Encoding::CompatibilityError
141
+ enc = str.encoding
142
+ if enc.ascii_compatible?
143
+ str.b.rstrip.force_encoding(enc)
144
+ else
145
+ str
146
+ end
147
+ end
148
+
149
+ def column2display_offset(str)
150
+ display_offset = 0
151
+ str.each_char.with_object([]) do |c, r|
152
+ c.bytesize.times do
153
+ r << display_offset
154
+ end
155
+ display_offset += c.ascii_only? ? 1 : 2 # FIXME
156
+ end
157
+ end
158
+ end
159
+ private_constant :Context
160
+
161
+ class BlockContext < Context
162
+ def initialize(assertion_proc_or_source, assertion_method, source_binding)
163
+ super(0)
164
+ if assertion_proc_or_source.respond_to?(:to_proc)
165
+ @assertion_proc = assertion_proc_or_source.to_proc
166
+ line = nil
167
+ else
168
+ @assertion_proc = source_binding.eval "Proc.new {#{assertion_proc_or_source}}"
169
+ line = assertion_proc_or_source
170
+ end
171
+ @parser = Parser::DUMMY
172
+ @trace_call = TracePoint.new(:call, :c_call) do
173
+ if PowerAssert.app_context? and Thread.current == @target_thread
174
+ @trace_call.disable
175
+ locs = PowerAssert.app_caller_locations
176
+ path = locs.last.path
177
+ lineno = locs.last.lineno
178
+ if File.exist?(path)
179
+ line ||= File.open(path) {|fp| fp.each_line.drop(lineno - 1).first }
180
+ end
181
+ if line
182
+ @parser = Parser.new(line, path, lineno, @assertion_proc.binding, assertion_method.to_s, @assertion_proc)
183
+ end
184
+ end
185
+ end
186
+ end
187
+
188
+ def yield
189
+ @fired = true
190
+ invoke_yield(&@assertion_proc)
191
+ end
192
+
193
+ private
194
+
195
+ def invoke_yield
196
+ @trace_return.enable do
197
+ @trace_call.enable do
198
+ yield
199
+ end
200
+ end
201
+ end
202
+ end
203
+ private_constant :BlockContext
204
+
205
+ class TraceContext < Context
206
+ def initialize(binding)
207
+ target_frame, *base = PowerAssert.app_caller_locations
208
+ super(base.length)
209
+ path = target_frame.path
210
+ lineno = target_frame.lineno
211
+ if File.exist?(path)
212
+ line = File.open(path) {|fp| fp.each_line.drop(lineno - 1).first }
213
+ @parser = Parser.new(line, path, lineno, binding)
214
+ else
215
+ @parser = Parser::DUMMY
216
+ end
217
+ end
218
+
219
+ def enable
220
+ @fired = true
221
+ @trace_return.enable
222
+ end
223
+
224
+ def disable
225
+ @trace_return.disable
226
+ end
227
+
228
+ def enabled?
229
+ @trace_return.enabled?
230
+ end
231
+ end
232
+ private_constant :TraceContext
233
+ end
@@ -0,0 +1,58 @@
1
+ require 'power_assert/configuration'
2
+
3
+ if defined?(RubyVM)
4
+ if PowerAssert.configuration._redefinition
5
+ module PowerAssert
6
+ # set redefined flag
7
+ basic_classes = [
8
+ Integer, Float, String, Array, Hash, Symbol, Time, Regexp, NilClass, TrueClass, FalseClass
9
+ ]
10
+
11
+ verbose = $VERBOSE
12
+ begin
13
+ $VERBOSE = nil
14
+ [:Fixnum, :Bignum].each do |c|
15
+ if Object.const_defined?(c) and (c = Object.const_get(c)) != Integer
16
+ basic_classes << c
17
+ end
18
+ end
19
+ ensure
20
+ $VERBOSE = verbose
21
+ end
22
+
23
+ basic_operators = [
24
+ :+, :-, :*, :/, :%, :==, :===, :<, :<=, :<<, :[], :[]=,
25
+ :length, :size, :empty?, :succ, :>, :>=, :!, :!=, :=~, :freeze, :-@, :max, :min, :nil?
26
+ ]
27
+
28
+ basic_classes.each do |klass|
29
+ basic_operators.each do |bop|
30
+ if klass.public_method_defined?(bop)
31
+ refine(klass) do
32
+ define_method(bop) {}
33
+ end
34
+ end
35
+ end
36
+ end
37
+
38
+ # bypass check_cfunc
39
+ refine BasicObject do
40
+ def !
41
+ end
42
+
43
+ def ==
44
+ end
45
+ end
46
+
47
+ refine Module do
48
+ def ==
49
+ end
50
+ end
51
+ end
52
+ end
53
+
54
+ # disable optimization
55
+ RubyVM::InstructionSequence.compile_option = {
56
+ specialized_instruction: false
57
+ }
58
+ end