win32-api 1.5.3-universal-mingw32 → 1.6.0-universal-mingw32
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.
- checksums.yaml +4 -4
- data/CHANGES +174 -169
- data/Gemfile +4 -0
- data/Gemfile.lock +24 -0
- data/README +129 -131
- data/Rakefile +185 -182
- data/appveyor.yml +42 -0
- data/ext/win32/api.c +1092 -1092
- data/lib/win32/api.rb +14 -8
- data/lib/win32/ruby21_32/win32/api.so +0 -0
- data/lib/win32/ruby21_64/win32/api.so +0 -0
- data/lib/win32/ruby22_32/win32/api.so +0 -0
- data/lib/win32/ruby22_64/win32/api.so +0 -0
- data/lib/win32/ruby23_32/win32/api.so +0 -0
- data/lib/win32/ruby23_64/win32/api.so +0 -0
- data/lib/win32/ruby2_32/win32/api.so +0 -0
- data/lib/win32/ruby2_64/win32/api.so +0 -0
- data/test/test_win32_api.rb +145 -145
- data/vendor/bundle/ruby/2.2.0/bin/devkit +23 -0
- data/vendor/bundle/ruby/2.2.0/bin/devkit.bat +6 -0
- data/vendor/bundle/ruby/2.2.0/bin/rake +23 -0
- data/vendor/bundle/ruby/2.2.0/bin/rake.bat +6 -0
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/CHANGELOG +55 -0
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/LICENSE +339 -0
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/README.md +73 -0
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/Rakefile +8 -0
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/colorize.gemspec +35 -0
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize.rb +12 -0
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize/class_methods.rb +116 -0
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/lib/colorize/instance_methods.rb +135 -0
- data/vendor/bundle/ruby/2.2.0/gems/colorize-0.7.7/test/test_colorize.rb +161 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Gemfile +4 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/README.md +34 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Rakefile +1 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/Rspec-example-matchers.txt +184 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/bin/devkit +87 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/devkit.gemspec +27 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit.rb +18 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/core.rb +53 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/identity.rb +78 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/ssh_identity.rb +53 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/lib/devkit/version.rb +3 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/core_spec.rb +46 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/identity_spec.rb +1 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit/ssh_identity_spec.rb +1 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/devkit_spec.rb +5 -0
- data/vendor/bundle/ruby/2.2.0/gems/devkit-0.1.0/spec/spec_helper.rb +8 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/AUTHORS +3 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/COPYING +339 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Changelog.md +415 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Gemfile +9 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/INSTALL +59 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/LICENSE +7 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/README.rdoc +74 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/Rakefile +30 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/TODO +6 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/ansi_colors.rb +38 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/asking_for_arrays.rb +18 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/basic_usage.rb +75 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/color_scheme.rb +32 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/get_character.rb +12 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/limit.rb +12 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/menus.rb +65 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/overwrite.rb +19 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/page_and_wrap.rb +322 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/password.rb +7 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/repeat_entry.rb +21 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/trapping_eof.rb +22 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/examples/using_readline.rb +17 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/highline.gemspec +37 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline.rb +1048 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/color_scheme.rb +134 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/compatibility.rb +16 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/import.rb +41 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/menu.rb +381 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/question.rb +480 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/simulate.rb +48 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/style.rb +192 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/lib/highline/version.rb +4 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/setup.rb +1360 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/highline.css +65 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/images/logo.png +0 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/site/index.html +58 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/string_methods.rb +32 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_color_scheme.rb +96 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_highline.rb +1402 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_import.rb +52 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_menu.rb +439 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_simulator.rb +23 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_string_highline.rb +38 -0
- data/vendor/bundle/ruby/2.2.0/gems/highline-1.7.8/test/tc_style.rb +578 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/BSDL +22 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/COPYING +57 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/Gemfile +9 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/LEGAL +4 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/README.rdoc +19 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/Rakefile +16 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/benchmarks/bm_yhpg.rb +59 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/benchmarks/helper.rb +8 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert.rb +338 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert/enable_tracepoint_events.rb +82 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/lib/power_assert/version.rb +3 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/power_assert.gemspec +23 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/test/helper.rb +10 -0
- data/vendor/bundle/ruby/2.2.0/gems/power_assert-0.3.0/test/test_power_assert.rb +512 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/CONTRIBUTING.rdoc +38 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/History.rdoc +719 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/Manifest.txt +154 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/README.rdoc +157 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/Rakefile +82 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/bin/rake +33 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/command_line_usage.rdoc +158 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/Rakefile1 +38 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/Rakefile2 +35 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/a.c +6 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/b.c +6 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/example/main.c +11 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/glossary.rdoc +42 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/jamis.rb +591 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/proto_rake.rdoc +127 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rake.1 +141 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rakefile.rdoc +624 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/rational.rdoc +151 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.4.14.rdoc +23 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.4.15.rdoc +35 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.0.rdoc +53 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.3.rdoc +78 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.5.4.rdoc +46 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.6.0.rdoc +141 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.0.rdoc +119 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.1.rdoc +59 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.2.rdoc +121 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.7.3.rdoc +47 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.0.rdoc +114 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.2.rdoc +165 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.3.rdoc +112 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.4.rdoc +147 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.5.rdoc +53 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.6.rdoc +37 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.8.7.rdoc +55 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.0.rdoc +112 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.1.rdoc +52 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.2.2.rdoc +55 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.2.rdoc +49 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.3.rdoc +102 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.4.rdoc +60 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.5.rdoc +55 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-0.9.6.rdoc +64 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.0.rdoc +178 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.1.rdoc +58 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.2.rdoc +53 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.0.3.rdoc +191 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/doc/release_notes/rake-10.1.0.rdoc +61 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake.rb +73 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/application.rb +787 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/backtrace.rb +23 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/clean.rb +76 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/cloneable.rb +16 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/compositepublisher.rb +21 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/ftptools.rb +137 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/contrib/sshpublisher.rb +60 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/cpu_counter.rb +120 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/default_loader.rb +14 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/dsl_definition.rb +194 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/early_time.rb +21 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_creation_task.rb +24 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_list.rb +436 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_task.rb +46 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/file_utils.rb +123 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/invocation_chain.rb +56 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/invocation_exception_mixin.rb +16 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/late_time.rb +17 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/linked_list.rb +111 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/loaders/makefile.rb +53 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/multi_task.rb +13 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/name_space.rb +38 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/packagetask.rb +199 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/phony.rb +15 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/private_reader.rb +20 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/promise.rb +99 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/pseudo_status.rb +29 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rake_module.rb +38 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rake_test_loader.rb +22 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/rule_recursion_overflow_error.rb +20 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/scope.rb +42 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task.rb +391 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_argument_error.rb +7 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_arguments.rb +102 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/task_manager.rb +316 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/tasklib.rb +11 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/testtask.rb +204 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/thread_history_display.rb +48 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/thread_pool.rb +163 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/trace_output.rb +22 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/version.rb +7 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/lib/rake/win32.rb +50 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/rakelib/test_times.rake +25 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/file_creation.rb +34 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/helper.rb +134 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/support/rakefile_definitions.rb +476 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/support/ruby_runner.rb +34 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_private_reader.rb +42 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake.rb +40 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_application.rb +659 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_application_options.rb +468 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_backtrace.rb +119 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_clean.rb +61 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_cpu_counter.rb +68 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_definitions.rb +84 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_directory_task.rb +76 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_dsl.rb +40 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_early_time.rb +31 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_creation_task.rb +56 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_list.rb +687 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_list_path_map.rb +15 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_task.rb +197 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_file_utils.rb +318 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_ftp_file.rb +74 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_functional.rb +484 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_invocation_chain.rb +64 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_late_time.rb +18 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_linked_list.rb +84 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_makefile_loader.rb +46 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_multi_task.rb +64 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_name_space.rb +57 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_package_task.rb +79 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map.rb +168 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map_explode.rb +34 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_path_map_partial.rb +18 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_pseudo_status.rb +21 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_rake_test_loader.rb +20 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_reduce_compat.rb +26 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_require.rb +40 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_rules.rb +388 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_scope.rb +44 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task.rb +430 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_argument_parsing.rb +119 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_arguments.rb +134 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_manager.rb +178 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_manager_argument_resolution.rb +19 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_task_with_arguments.rb +172 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_test_task.rb +130 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_thread_pool.rb +145 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_top_level_functions.rb +71 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_rake_win32.rb +72 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_thread_history_display.rb +101 -0
- data/vendor/bundle/ruby/2.2.0/gems/rake-11.1.2/test/test_trace_output.rb +52 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/COPYING +64 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/GPL +339 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/LGPL +502 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/PSFL +271 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/README.md +101 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/Rakefile +71 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test-unit.rb +34 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit.rb +505 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/assertion-failed-error.rb +25 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/assertions.rb +2218 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/attribute-matcher.rb +26 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/attribute.rb +158 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/auto-runner-loader.rb +17 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/autorunner.rb +536 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/code-snippet-fetcher.rb +58 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector.rb +73 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/descendant.rb +19 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/dir.rb +108 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/load.rb +202 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/objectspace.rb +34 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/collector/xml.rb +249 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/color-scheme.rb +198 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/color.rb +134 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/data.rb +262 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/diff.rb +746 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/error.rb +158 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/exception-handler.rb +82 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/failure.rb +169 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/fault-location-detector.rb +100 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/fixture.rb +295 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/notification.rb +136 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/omission.rb +195 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/pending.rb +154 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/priority.rb +192 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/console.rb +59 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/emacs.rb +8 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/runner/xml.rb +15 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/test-suite-creator.rb +89 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testcase.rb +811 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testresult.rb +132 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/testsuite.rb +175 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/console/outputlevel.rb +15 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/console/testrunner.rb +693 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/emacs/testrunner.rb +49 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunner.rb +53 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunnermediator.rb +114 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/testrunnerutilities.rb +41 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/ui/xml/testrunner.rb +224 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/backtracefilter.rb +59 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/method-owner-finder.rb +28 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/observable.rb +90 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/output.rb +31 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/util/procwrapper.rb +48 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/lib/test/unit/version.rb +5 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/adder.rb +13 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/subtracter.rb +12 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_adder.rb +20 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_subtracter.rb +20 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/sample/test_user.rb +23 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test-descendant.rb +178 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test-load.rb +442 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test_dir.rb +406 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/collector/test_objectspace.rb +100 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header-label.csv +3 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header-label.tsv +3 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header.csv +3 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/header.tsv +3 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/no-header.csv +2 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/no-header.tsv +2 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/fixtures/plus.csv +3 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/run-test.rb +22 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-assertions.rb +2160 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-attribute-matcher.rb +38 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-attribute.rb +123 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-code-snippet.rb +37 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-color-scheme.rb +82 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-color.rb +47 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-data.rb +303 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-diff.rb +518 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-emacs-runner.rb +60 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-error.rb +26 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-failure.rb +33 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-fault-location-detector.rb +163 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-fixture.rb +713 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-notification.rb +33 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-omission.rb +81 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-pending.rb +70 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-priority.rb +173 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-case.rb +1171 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-result.rb +113 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-suite-creator.rb +97 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/test-test-suite.rb +150 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/testunit-test-util.rb +31 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/ui/test_testrunmediator.rb +20 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test-method-owner-finder.rb +38 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test-output.rb +11 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_backtracefilter.rb +52 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_observable.rb +102 -0
- data/vendor/bundle/ruby/2.2.0/gems/test-unit-3.1.9/test/util/test_procwrapper.rb +36 -0
- data/vendor/bundle/ruby/2.2.0/specifications/colorize-0.7.7.gemspec +38 -0
- data/vendor/bundle/ruby/2.2.0/specifications/devkit-0.1.0.gemspec +46 -0
- data/vendor/bundle/ruby/2.2.0/specifications/highline-1.7.8.gemspec +37 -0
- data/vendor/bundle/ruby/2.2.0/specifications/power_assert-0.3.0.gemspec +41 -0
- data/vendor/bundle/ruby/2.2.0/specifications/rake-11.1.2.gemspec +43 -0
- data/vendor/bundle/ruby/2.2.0/specifications/test-unit-3.1.9.gemspec +47 -0
- data/win32-api.gemspec +27 -27
- metadata +345 -5
- data/lib/win32/ruby18/win32/api.so +0 -0
- data/lib/win32/ruby19/win32/api.so +0 -0
| @@ -0,0 +1,49 @@ | |
| 1 | 
            +
            require 'test/unit/ui/console/testrunner'
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            module Test
         | 
| 4 | 
            +
              module Unit
         | 
| 5 | 
            +
                module UI
         | 
| 6 | 
            +
                  module Emacs
         | 
| 7 | 
            +
                    class TestRunner < Console::TestRunner
         | 
| 8 | 
            +
                      private
         | 
| 9 | 
            +
                      def output_setup_end
         | 
| 10 | 
            +
                      end
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                      def output_started
         | 
| 13 | 
            +
                      end
         | 
| 14 | 
            +
             | 
| 15 | 
            +
                      def format_fault(fault)
         | 
| 16 | 
            +
                        return super unless fault.respond_to?(:label)
         | 
| 17 | 
            +
                        format_method_name = "format_fault_#{fault.label.downcase}"
         | 
| 18 | 
            +
                        if respond_to?(format_method_name, true)
         | 
| 19 | 
            +
                          __send__(format_method_name, fault)
         | 
| 20 | 
            +
                        else
         | 
| 21 | 
            +
                          super
         | 
| 22 | 
            +
                        end
         | 
| 23 | 
            +
                      end
         | 
| 24 | 
            +
             | 
| 25 | 
            +
                      def format_fault_failure(failure)
         | 
| 26 | 
            +
                        if failure.location.size == 1
         | 
| 27 | 
            +
                          location = failure.location[0]
         | 
| 28 | 
            +
                          location_display = location.sub(/\A(.+:\d+).*/, ' [\\1]')
         | 
| 29 | 
            +
                        else
         | 
| 30 | 
            +
                          location_display = "\n" + failure.location.join("\n")
         | 
| 31 | 
            +
                        end
         | 
| 32 | 
            +
                        result = "#{failure.label}:\n"
         | 
| 33 | 
            +
                        result << "#{failure.test_name}#{location_display}:\n"
         | 
| 34 | 
            +
                        result << failure.message
         | 
| 35 | 
            +
                        result
         | 
| 36 | 
            +
                      end
         | 
| 37 | 
            +
             | 
| 38 | 
            +
                      def format_fault_error(error)
         | 
| 39 | 
            +
                        result = "#{error.label}:\n"
         | 
| 40 | 
            +
                        result << "#{error.test_name}:\n"
         | 
| 41 | 
            +
                        result << "#{error.message}\n"
         | 
| 42 | 
            +
                        result << error.backtrace.join("\n")
         | 
| 43 | 
            +
                        result
         | 
| 44 | 
            +
                      end
         | 
| 45 | 
            +
                    end
         | 
| 46 | 
            +
                  end
         | 
| 47 | 
            +
                end
         | 
| 48 | 
            +
              end
         | 
| 49 | 
            +
            end
         | 
| @@ -0,0 +1,53 @@ | |
| 1 | 
            +
            require 'test/unit/ui/testrunnerutilities'
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            module Test
         | 
| 4 | 
            +
              module Unit
         | 
| 5 | 
            +
                module UI
         | 
| 6 | 
            +
                  class TestRunner
         | 
| 7 | 
            +
                    extend TestRunnerUtilities
         | 
| 8 | 
            +
             | 
| 9 | 
            +
                    attr_reader :listeners
         | 
| 10 | 
            +
                    def initialize(suite, options={})
         | 
| 11 | 
            +
                      if suite.respond_to?(:suite)
         | 
| 12 | 
            +
                        @suite = suite.suite
         | 
| 13 | 
            +
                      else
         | 
| 14 | 
            +
                        @suite = suite
         | 
| 15 | 
            +
                      end
         | 
| 16 | 
            +
                      @options = options
         | 
| 17 | 
            +
                      @listeners = @options[:listeners] || []
         | 
| 18 | 
            +
                    end
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                    # Begins the test run.
         | 
| 21 | 
            +
                    def start
         | 
| 22 | 
            +
                      setup_mediator
         | 
| 23 | 
            +
                      attach_to_mediator
         | 
| 24 | 
            +
                      attach_listeners
         | 
| 25 | 
            +
                      start_mediator
         | 
| 26 | 
            +
                    end
         | 
| 27 | 
            +
             | 
| 28 | 
            +
                    private
         | 
| 29 | 
            +
                    def setup_mediator
         | 
| 30 | 
            +
                      @mediator = TestRunnerMediator.new(@suite)
         | 
| 31 | 
            +
                    end
         | 
| 32 | 
            +
             | 
| 33 | 
            +
                    def attach_listeners
         | 
| 34 | 
            +
                      @listeners.each do |listener|
         | 
| 35 | 
            +
                        listener.attach_to_mediator(@mediator)
         | 
| 36 | 
            +
                      end
         | 
| 37 | 
            +
                    end
         | 
| 38 | 
            +
             | 
| 39 | 
            +
                    def start_mediator
         | 
| 40 | 
            +
                      @mediator.run
         | 
| 41 | 
            +
                    end
         | 
| 42 | 
            +
             | 
| 43 | 
            +
                    def diff_target_string?(string)
         | 
| 44 | 
            +
                      Assertions::AssertionMessage.diff_target_string?(string)
         | 
| 45 | 
            +
                    end
         | 
| 46 | 
            +
             | 
| 47 | 
            +
                    def prepare_for_diff(from, to)
         | 
| 48 | 
            +
                      Assertions::AssertionMessage.prepare_for_diff(from, to)
         | 
| 49 | 
            +
                    end
         | 
| 50 | 
            +
                  end
         | 
| 51 | 
            +
                end
         | 
| 52 | 
            +
              end
         | 
| 53 | 
            +
            end
         | 
| @@ -0,0 +1,114 @@ | |
| 1 | 
            +
            #--
         | 
| 2 | 
            +
            #
         | 
| 3 | 
            +
            # Author:: Nathaniel Talbott.
         | 
| 4 | 
            +
            # Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
         | 
| 5 | 
            +
            # License:: Ruby license.
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            require 'test/unit/util/observable'
         | 
| 8 | 
            +
            require 'test/unit/testresult'
         | 
| 9 | 
            +
             | 
| 10 | 
            +
            module Test
         | 
| 11 | 
            +
              module Unit
         | 
| 12 | 
            +
                module UI
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                  # Provides an interface to write any given UI against,
         | 
| 15 | 
            +
                  # hopefully making it easy to write new UIs.
         | 
| 16 | 
            +
                  class TestRunnerMediator
         | 
| 17 | 
            +
                    RESET = name + "::RESET"
         | 
| 18 | 
            +
                    STARTED = name + "::STARTED"
         | 
| 19 | 
            +
                    FINISHED = name + "::FINISHED"
         | 
| 20 | 
            +
             | 
| 21 | 
            +
                    include Util::Observable
         | 
| 22 | 
            +
             | 
| 23 | 
            +
                    # Creates a new TestRunnerMediator initialized to run
         | 
| 24 | 
            +
                    # the passed suite.
         | 
| 25 | 
            +
                    def initialize(suite)
         | 
| 26 | 
            +
                      @suite = suite
         | 
| 27 | 
            +
                    end
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                    # Runs the suite the TestRunnerMediator was created
         | 
| 30 | 
            +
                    # with.
         | 
| 31 | 
            +
                    def run
         | 
| 32 | 
            +
                      AutoRunner.need_auto_run = false
         | 
| 33 | 
            +
             | 
| 34 | 
            +
                      result = create_result
         | 
| 35 | 
            +
             | 
| 36 | 
            +
                      Test::Unit.run_at_start_hooks
         | 
| 37 | 
            +
                      start_time = Time.now
         | 
| 38 | 
            +
                      begin
         | 
| 39 | 
            +
                        catch do |stop_tag|
         | 
| 40 | 
            +
                          result.stop_tag = stop_tag
         | 
| 41 | 
            +
                          with_listener(result) do
         | 
| 42 | 
            +
                            notify_listeners(RESET, @suite.size)
         | 
| 43 | 
            +
                            notify_listeners(STARTED, result)
         | 
| 44 | 
            +
             | 
| 45 | 
            +
                            run_suite(result)
         | 
| 46 | 
            +
                          end
         | 
| 47 | 
            +
                        end
         | 
| 48 | 
            +
                      ensure
         | 
| 49 | 
            +
                        elapsed_time = Time.now - start_time
         | 
| 50 | 
            +
                        notify_listeners(FINISHED, elapsed_time)
         | 
| 51 | 
            +
                      end
         | 
| 52 | 
            +
                      Test::Unit.run_at_exit_hooks
         | 
| 53 | 
            +
             | 
| 54 | 
            +
                      result
         | 
| 55 | 
            +
                    end
         | 
| 56 | 
            +
             | 
| 57 | 
            +
                    # Just for backward compatibility for NetBeans.
         | 
| 58 | 
            +
                    # NetBeans should not use monkey patching. NetBeans
         | 
| 59 | 
            +
                    # should use runner change public API.
         | 
| 60 | 
            +
                    #
         | 
| 61 | 
            +
                    # See GitHub#38
         | 
| 62 | 
            +
                    #   https://github.com/test-unit/test-unit/issues/38
         | 
| 63 | 
            +
                    def run_suite(result=nil)
         | 
| 64 | 
            +
                      if result.nil?
         | 
| 65 | 
            +
                        run
         | 
| 66 | 
            +
                      else
         | 
| 67 | 
            +
                        @suite.run(result) do |channel, value|
         | 
| 68 | 
            +
                          notify_listeners(channel, value)
         | 
| 69 | 
            +
                        end
         | 
| 70 | 
            +
                      end
         | 
| 71 | 
            +
                    end
         | 
| 72 | 
            +
             | 
| 73 | 
            +
                    private
         | 
| 74 | 
            +
                    # A factory method to create the result the mediator
         | 
| 75 | 
            +
                    # should run with. Can be overridden by subclasses if
         | 
| 76 | 
            +
                    # one wants to use a different result.
         | 
| 77 | 
            +
                    def create_result
         | 
| 78 | 
            +
                      TestResult.new
         | 
| 79 | 
            +
                    end
         | 
| 80 | 
            +
             | 
| 81 | 
            +
                    def measure_time
         | 
| 82 | 
            +
                      begin_time = Time.now
         | 
| 83 | 
            +
                      yield
         | 
| 84 | 
            +
                      Time.now - begin_time
         | 
| 85 | 
            +
                    end
         | 
| 86 | 
            +
             | 
| 87 | 
            +
                    def with_listener(result)
         | 
| 88 | 
            +
                      finished_listener = result.add_listener(TestResult::FINISHED) do |*args|
         | 
| 89 | 
            +
                        notify_listeners(TestResult::FINISHED, *args)
         | 
| 90 | 
            +
                      end
         | 
| 91 | 
            +
                      changed_listener = result.add_listener(TestResult::CHANGED) do |*args|
         | 
| 92 | 
            +
                        notify_listeners(TestResult::CHANGED, *args)
         | 
| 93 | 
            +
                      end
         | 
| 94 | 
            +
                      pass_assertion_listener = result.add_listener(TestResult::PASS_ASSERTION) do |*args|
         | 
| 95 | 
            +
                        notify_listeners(TestResult::PASS_ASSERTION, *args)
         | 
| 96 | 
            +
                      end
         | 
| 97 | 
            +
                      fault_listener = result.add_listener(TestResult::FAULT) do |*args|
         | 
| 98 | 
            +
                        notify_listeners(TestResult::FAULT, *args)
         | 
| 99 | 
            +
                      end
         | 
| 100 | 
            +
             | 
| 101 | 
            +
                      begin
         | 
| 102 | 
            +
                        yield
         | 
| 103 | 
            +
                      ensure
         | 
| 104 | 
            +
                        result.remove_listener(TestResult::FAULT, fault_listener)
         | 
| 105 | 
            +
                        result.remove_listener(TestResult::CHANGED, changed_listener)
         | 
| 106 | 
            +
                        result.remove_listener(TestResult::FINISHED, finished_listener)
         | 
| 107 | 
            +
                        result.remove_listener(TestResult::PASS_ASSERTION,
         | 
| 108 | 
            +
                                               pass_assertion_listener)
         | 
| 109 | 
            +
                      end
         | 
| 110 | 
            +
                    end
         | 
| 111 | 
            +
                  end
         | 
| 112 | 
            +
                end
         | 
| 113 | 
            +
              end
         | 
| 114 | 
            +
            end
         | 
| @@ -0,0 +1,41 @@ | |
| 1 | 
            +
            #--
         | 
| 2 | 
            +
            #
         | 
| 3 | 
            +
            # Author:: Nathaniel Talbott.
         | 
| 4 | 
            +
            # Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
         | 
| 5 | 
            +
            # License:: Ruby license.
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            module Test
         | 
| 8 | 
            +
              module Unit
         | 
| 9 | 
            +
                module UI
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                  # Provides some utilities common to most, if not all,
         | 
| 12 | 
            +
                  # TestRunners.
         | 
| 13 | 
            +
                  #
         | 
| 14 | 
            +
                  #--
         | 
| 15 | 
            +
                  #
         | 
| 16 | 
            +
                  # Perhaps there ought to be a TestRunner superclass? There
         | 
| 17 | 
            +
                  # seems to be a decent amount of shared code between test
         | 
| 18 | 
            +
                  # runners.
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                  module TestRunnerUtilities
         | 
| 21 | 
            +
             | 
| 22 | 
            +
                    # Creates a new TestRunner and runs the suite.
         | 
| 23 | 
            +
                    def run(suite, options={})
         | 
| 24 | 
            +
                      return new(suite, options).start
         | 
| 25 | 
            +
                    end
         | 
| 26 | 
            +
             | 
| 27 | 
            +
                    # Takes care of the ARGV parsing and suite
         | 
| 28 | 
            +
                    # determination necessary for running one of the
         | 
| 29 | 
            +
                    # TestRunners from the command line.
         | 
| 30 | 
            +
                    def start_command_line_test
         | 
| 31 | 
            +
                      if ARGV.empty?
         | 
| 32 | 
            +
                        puts "You should supply the name of a test suite file to the runner"
         | 
| 33 | 
            +
                        exit
         | 
| 34 | 
            +
                      end
         | 
| 35 | 
            +
                      require ARGV[0].gsub(/.+::/, '')
         | 
| 36 | 
            +
                      new(eval(ARGV[0])).start
         | 
| 37 | 
            +
                    end
         | 
| 38 | 
            +
                  end
         | 
| 39 | 
            +
                end
         | 
| 40 | 
            +
              end
         | 
| 41 | 
            +
            end
         | 
| @@ -0,0 +1,224 @@ | |
| 1 | 
            +
            #--
         | 
| 2 | 
            +
            #
         | 
| 3 | 
            +
            # Author:: Kouhei Sutou
         | 
| 4 | 
            +
            # Copyright::
         | 
| 5 | 
            +
            #   * Copyright (c) 2011 Kouhei Sutou <kou@clear-code.com>
         | 
| 6 | 
            +
            # License:: Ruby license.
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            require 'erb'
         | 
| 9 | 
            +
            require 'time'
         | 
| 10 | 
            +
            require 'test/unit/ui/testrunner'
         | 
| 11 | 
            +
            require 'test/unit/ui/testrunnermediator'
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            module Test
         | 
| 14 | 
            +
              module Unit
         | 
| 15 | 
            +
                module UI
         | 
| 16 | 
            +
                  module XML
         | 
| 17 | 
            +
             | 
| 18 | 
            +
                    # Runs a Test::Unit::TestSuite and outputs XML.
         | 
| 19 | 
            +
                    class TestRunner < UI::TestRunner
         | 
| 20 | 
            +
                      include ERB::Util
         | 
| 21 | 
            +
             | 
| 22 | 
            +
                      # Creates a new TestRunner for running the passed
         | 
| 23 | 
            +
                      # suite. :output option specifies where runner
         | 
| 24 | 
            +
                      # output should go to; defaults to STDOUT.
         | 
| 25 | 
            +
                      def initialize(suite, options={})
         | 
| 26 | 
            +
                        super
         | 
| 27 | 
            +
                        @output = @options[:output] || STDOUT
         | 
| 28 | 
            +
                        if @options[:output_file_descriptor]
         | 
| 29 | 
            +
                          @output = IO.new(@options[:output_file_descriptor], "w")
         | 
| 30 | 
            +
                        end
         | 
| 31 | 
            +
                        @already_outputted = false
         | 
| 32 | 
            +
                        @indent = 0
         | 
| 33 | 
            +
                        @top_level = true
         | 
| 34 | 
            +
                        @current_test = nil
         | 
| 35 | 
            +
                        @current_test_suite = nil
         | 
| 36 | 
            +
                        @already_outputted = false
         | 
| 37 | 
            +
                      end
         | 
| 38 | 
            +
             | 
| 39 | 
            +
                      private
         | 
| 40 | 
            +
                      def attach_to_mediator
         | 
| 41 | 
            +
                        @mediator.add_listener(TestResult::PASS_ASSERTION,
         | 
| 42 | 
            +
                                               &method(:result_pass_assertion))
         | 
| 43 | 
            +
                        @mediator.add_listener(TestResult::FAULT,
         | 
| 44 | 
            +
                                               &method(:result_fault))
         | 
| 45 | 
            +
                        @mediator.add_listener(TestRunnerMediator::STARTED,
         | 
| 46 | 
            +
                                               &method(:started))
         | 
| 47 | 
            +
                        @mediator.add_listener(TestRunnerMediator::FINISHED,
         | 
| 48 | 
            +
                                               &method(:finished))
         | 
| 49 | 
            +
                        @mediator.add_listener(TestCase::STARTED_OBJECT,
         | 
| 50 | 
            +
                                               &method(:test_started))
         | 
| 51 | 
            +
                        @mediator.add_listener(TestCase::FINISHED_OBJECT,
         | 
| 52 | 
            +
                                               &method(:test_finished))
         | 
| 53 | 
            +
                        @mediator.add_listener(TestSuite::STARTED_OBJECT,
         | 
| 54 | 
            +
                                               &method(:test_suite_started))
         | 
| 55 | 
            +
                        @mediator.add_listener(TestSuite::FINISHED_OBJECT,
         | 
| 56 | 
            +
                                               &method(:test_suite_finished))
         | 
| 57 | 
            +
                      end
         | 
| 58 | 
            +
             | 
| 59 | 
            +
                      def result_pass_assertion(result)
         | 
| 60 | 
            +
                        open_tag("pass-assertion") do
         | 
| 61 | 
            +
                          output_test(@current_test)
         | 
| 62 | 
            +
                        end
         | 
| 63 | 
            +
                      end
         | 
| 64 | 
            +
             | 
| 65 | 
            +
                      def result_fault(fault)
         | 
| 66 | 
            +
                        open_tag("test-result") do
         | 
| 67 | 
            +
                          open_tag("result") do
         | 
| 68 | 
            +
                            output_test_suite(@current_test_suite)
         | 
| 69 | 
            +
                            output_test(@current_test)
         | 
| 70 | 
            +
                            open_tag("backtrace") do
         | 
| 71 | 
            +
                              fault.location.each do |entry|
         | 
| 72 | 
            +
                                file, line, info = entry.split(/:/, 3)
         | 
| 73 | 
            +
                                open_tag("entry") do
         | 
| 74 | 
            +
                                  add_content("file", file)
         | 
| 75 | 
            +
                                  add_content("line", line)
         | 
| 76 | 
            +
                                  add_content("info", info)
         | 
| 77 | 
            +
                                end
         | 
| 78 | 
            +
                              end
         | 
| 79 | 
            +
                            end
         | 
| 80 | 
            +
                            if fault.respond_to?(:expected)
         | 
| 81 | 
            +
                              add_content("expected", fault.expected)
         | 
| 82 | 
            +
                            end
         | 
| 83 | 
            +
                            if fault.respond_to?(:actual)
         | 
| 84 | 
            +
                              add_content("actual", fault.actual)
         | 
| 85 | 
            +
                            end
         | 
| 86 | 
            +
                            add_content("detail", fault.message)
         | 
| 87 | 
            +
                            add_content("status", fault.label.downcase)
         | 
| 88 | 
            +
                          end
         | 
| 89 | 
            +
                        end
         | 
| 90 | 
            +
                        @already_outputted = true if fault.critical?
         | 
| 91 | 
            +
                      end
         | 
| 92 | 
            +
             | 
| 93 | 
            +
                      def started(result)
         | 
| 94 | 
            +
                        @result = result
         | 
| 95 | 
            +
                        output_started
         | 
| 96 | 
            +
                      end
         | 
| 97 | 
            +
             | 
| 98 | 
            +
                      def output_started
         | 
| 99 | 
            +
                        open_tag("stream")
         | 
| 100 | 
            +
                      end
         | 
| 101 | 
            +
             | 
| 102 | 
            +
                      def finished(elapsed_time)
         | 
| 103 | 
            +
                        add_content("success", @result.passed?)
         | 
| 104 | 
            +
                        close_tag("stream")
         | 
| 105 | 
            +
                      end
         | 
| 106 | 
            +
             | 
| 107 | 
            +
                      def test_started(test)
         | 
| 108 | 
            +
                        @already_outputted = false
         | 
| 109 | 
            +
                        @current_test = test
         | 
| 110 | 
            +
                        open_tag("start-test") do
         | 
| 111 | 
            +
                          output_test(test)
         | 
| 112 | 
            +
                        end
         | 
| 113 | 
            +
                      end
         | 
| 114 | 
            +
             | 
| 115 | 
            +
                      def test_finished(test)
         | 
| 116 | 
            +
                        unless @already_outputted
         | 
| 117 | 
            +
                          open_tag("test-result") do
         | 
| 118 | 
            +
                            output_test(test)
         | 
| 119 | 
            +
                            open_tag("result") do
         | 
| 120 | 
            +
                              output_test_suite(@current_test_suite)
         | 
| 121 | 
            +
                              output_test(test)
         | 
| 122 | 
            +
                              add_content("status", "success")
         | 
| 123 | 
            +
                            end
         | 
| 124 | 
            +
                          end
         | 
| 125 | 
            +
                        end
         | 
| 126 | 
            +
             | 
| 127 | 
            +
                        open_tag("complete-test") do
         | 
| 128 | 
            +
                          output_test(test)
         | 
| 129 | 
            +
                          add_content("success", test.passed?)
         | 
| 130 | 
            +
                        end
         | 
| 131 | 
            +
                        @current_test = nil
         | 
| 132 | 
            +
                      end
         | 
| 133 | 
            +
             | 
| 134 | 
            +
                      def test_suite_started(suite)
         | 
| 135 | 
            +
                        @current_test_suite = suite
         | 
| 136 | 
            +
                        if suite.test_case.nil?
         | 
| 137 | 
            +
                          open_tag("ready-test-suite") do
         | 
| 138 | 
            +
                            add_content("n-tests", suite.size)
         | 
| 139 | 
            +
                          end
         | 
| 140 | 
            +
                          open_tag("start-test-suite") do
         | 
| 141 | 
            +
                            output_test_suite(suite)
         | 
| 142 | 
            +
                          end
         | 
| 143 | 
            +
                        else
         | 
| 144 | 
            +
                          open_tag("ready-test-case") do
         | 
| 145 | 
            +
                            output_test_suite(suite)
         | 
| 146 | 
            +
                            add_content("n-tests", suite.size)
         | 
| 147 | 
            +
                          end
         | 
| 148 | 
            +
                          open_tag("start-test-case") do
         | 
| 149 | 
            +
                            output_test_suite(suite)
         | 
| 150 | 
            +
                          end
         | 
| 151 | 
            +
                        end
         | 
| 152 | 
            +
                      end
         | 
| 153 | 
            +
             | 
| 154 | 
            +
                      def test_suite_finished(suite)
         | 
| 155 | 
            +
                        if suite.test_case.nil?
         | 
| 156 | 
            +
                          open_tag("complete-test-suite") do
         | 
| 157 | 
            +
                            output_test_suite(suite)
         | 
| 158 | 
            +
                            add_content("success", suite.passed?)
         | 
| 159 | 
            +
                          end
         | 
| 160 | 
            +
                        else
         | 
| 161 | 
            +
                          open_tag("complete-test-case") do
         | 
| 162 | 
            +
                            output_test_suite(suite)
         | 
| 163 | 
            +
                            add_content("success", suite.passed?)
         | 
| 164 | 
            +
                          end
         | 
| 165 | 
            +
                        end
         | 
| 166 | 
            +
                        @current_test_suite = nil
         | 
| 167 | 
            +
                      end
         | 
| 168 | 
            +
             | 
| 169 | 
            +
                      def indent
         | 
| 170 | 
            +
                        " " * @indent
         | 
| 171 | 
            +
                      end
         | 
| 172 | 
            +
             | 
| 173 | 
            +
                      def open_tag(name)
         | 
| 174 | 
            +
                        @output.puts("#{indent}<#{name}>")
         | 
| 175 | 
            +
                        @indent += 2
         | 
| 176 | 
            +
                        if block_given?
         | 
| 177 | 
            +
                          yield
         | 
| 178 | 
            +
                          close_tag(name)
         | 
| 179 | 
            +
                        end
         | 
| 180 | 
            +
                      end
         | 
| 181 | 
            +
             | 
| 182 | 
            +
                      def add_content(name, content)
         | 
| 183 | 
            +
                        return if content.nil?
         | 
| 184 | 
            +
                        case content
         | 
| 185 | 
            +
                        when Time
         | 
| 186 | 
            +
                          content = content.iso8601
         | 
| 187 | 
            +
                        end
         | 
| 188 | 
            +
                        @output.puts("#{indent}<#{name}>#{h(content)}</#{name}>")
         | 
| 189 | 
            +
                      end
         | 
| 190 | 
            +
             | 
| 191 | 
            +
                      def close_tag(name)
         | 
| 192 | 
            +
                        @indent -= 2
         | 
| 193 | 
            +
                        @output.puts("#{indent}</#{name}>")
         | 
| 194 | 
            +
                      end
         | 
| 195 | 
            +
             | 
| 196 | 
            +
                      def output_test(test)
         | 
| 197 | 
            +
                        open_tag("test") do
         | 
| 198 | 
            +
                          add_content("name", test.method_name)
         | 
| 199 | 
            +
                          add_content("start-time", test.start_time)
         | 
| 200 | 
            +
                          add_content("elapsed", test.elapsed_time)
         | 
| 201 | 
            +
                        end
         | 
| 202 | 
            +
                      end
         | 
| 203 | 
            +
             | 
| 204 | 
            +
                      def output_test_suite(test_suite)
         | 
| 205 | 
            +
                        test_case = test_suite.test_case
         | 
| 206 | 
            +
                        if test_case.nil?
         | 
| 207 | 
            +
                          open_tag("test-suite") do
         | 
| 208 | 
            +
                            add_content("name", test_suite.name)
         | 
| 209 | 
            +
                            add_content("start-time", test_suite.start_time)
         | 
| 210 | 
            +
                            add_content("elapsed", test_suite.elapsed_time)
         | 
| 211 | 
            +
                          end
         | 
| 212 | 
            +
                        else
         | 
| 213 | 
            +
                          open_tag("test-case") do
         | 
| 214 | 
            +
                            add_content("name", test_suite.name)
         | 
| 215 | 
            +
                            add_content("start-time", test_suite.start_time)
         | 
| 216 | 
            +
                            add_content("elapsed", test_suite.elapsed_time)
         | 
| 217 | 
            +
                          end
         | 
| 218 | 
            +
                        end
         | 
| 219 | 
            +
                      end
         | 
| 220 | 
            +
                    end
         | 
| 221 | 
            +
                  end
         | 
| 222 | 
            +
                end
         | 
| 223 | 
            +
              end
         | 
| 224 | 
            +
            end
         |