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,64 @@ | |
| 1 | 
            +
            require File.expand_path('../helper', __FILE__)
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            class TestRakeInvocationChain < Rake::TestCase
         | 
| 4 | 
            +
              include Rake
         | 
| 5 | 
            +
             | 
| 6 | 
            +
              def setup
         | 
| 7 | 
            +
                super
         | 
| 8 | 
            +
             | 
| 9 | 
            +
                @empty = InvocationChain.empty
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                @first_member = "A"
         | 
| 12 | 
            +
                @second_member = "B"
         | 
| 13 | 
            +
                @one = @empty.append(@first_member)
         | 
| 14 | 
            +
                @two = @one.append(@second_member)
         | 
| 15 | 
            +
              end
         | 
| 16 | 
            +
             | 
| 17 | 
            +
              def test_conj_on_invocation_chains
         | 
| 18 | 
            +
                list = InvocationChain.empty.conj("B").conj("A")
         | 
| 19 | 
            +
                assert_equal InvocationChain.make("A", "B"), list
         | 
| 20 | 
            +
                assert_equal InvocationChain, list.class
         | 
| 21 | 
            +
              end
         | 
| 22 | 
            +
             | 
| 23 | 
            +
              def test_make_on_invocation_chains
         | 
| 24 | 
            +
                assert_equal @empty, InvocationChain.make()
         | 
| 25 | 
            +
                assert_equal @one, InvocationChain.make(@first_member)
         | 
| 26 | 
            +
                assert_equal @two, InvocationChain.make(@second_member, @first_member)
         | 
| 27 | 
            +
              end
         | 
| 28 | 
            +
             | 
| 29 | 
            +
              def test_append_with_one_argument
         | 
| 30 | 
            +
                chain = @empty.append("A")
         | 
| 31 | 
            +
             | 
| 32 | 
            +
                assert_equal 'TOP => A', chain.to_s # HACK
         | 
| 33 | 
            +
              end
         | 
| 34 | 
            +
             | 
| 35 | 
            +
              def test_append_one_circular
         | 
| 36 | 
            +
                ex = assert_raises RuntimeError do
         | 
| 37 | 
            +
                  @one.append(@first_member)
         | 
| 38 | 
            +
                end
         | 
| 39 | 
            +
                assert_match(/circular +dependency/i, ex.message)
         | 
| 40 | 
            +
                assert_match(/A.*=>.*A/, ex.message)
         | 
| 41 | 
            +
              end
         | 
| 42 | 
            +
             | 
| 43 | 
            +
              def test_append_two_circular
         | 
| 44 | 
            +
                ex = assert_raises RuntimeError do
         | 
| 45 | 
            +
                  @two.append(@first_member)
         | 
| 46 | 
            +
                end
         | 
| 47 | 
            +
                assert_match(/A.*=>.*B.*=>.*A/, ex.message)
         | 
| 48 | 
            +
              end
         | 
| 49 | 
            +
             | 
| 50 | 
            +
              def test_member_eh_one
         | 
| 51 | 
            +
                assert @one.member?(@first_member)
         | 
| 52 | 
            +
              end
         | 
| 53 | 
            +
             | 
| 54 | 
            +
              def test_member_eh_two
         | 
| 55 | 
            +
                assert @two.member?(@first_member)
         | 
| 56 | 
            +
                assert @two.member?(@second_member)
         | 
| 57 | 
            +
              end
         | 
| 58 | 
            +
             | 
| 59 | 
            +
              def test_to_s_empty
         | 
| 60 | 
            +
                assert_equal "TOP", @empty.to_s
         | 
| 61 | 
            +
                assert_equal "TOP => A", @one.to_s
         | 
| 62 | 
            +
              end
         | 
| 63 | 
            +
             | 
| 64 | 
            +
            end
         | 
| @@ -0,0 +1,18 @@ | |
| 1 | 
            +
            require File.expand_path('../helper', __FILE__)
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            class TestRakeLateTime < Rake::TestCase
         | 
| 4 | 
            +
              def test_late_time_comparisons
         | 
| 5 | 
            +
                late = Rake::LATE
         | 
| 6 | 
            +
                assert_equal late, late
         | 
| 7 | 
            +
                assert late >= Time.now
         | 
| 8 | 
            +
                assert late > Time.now
         | 
| 9 | 
            +
                assert late != Time.now
         | 
| 10 | 
            +
                assert Time.now < late
         | 
| 11 | 
            +
                assert Time.now <= late
         | 
| 12 | 
            +
                assert Time.now != late
         | 
| 13 | 
            +
              end
         | 
| 14 | 
            +
             | 
| 15 | 
            +
              def test_to_s
         | 
| 16 | 
            +
                assert_equal '<LATE TIME>', Rake::LATE.to_s
         | 
| 17 | 
            +
              end
         | 
| 18 | 
            +
            end
         | 
| @@ -0,0 +1,84 @@ | |
| 1 | 
            +
            require File.expand_path('../helper', __FILE__)
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            class TestLinkedList < Rake::TestCase
         | 
| 4 | 
            +
              include Rake
         | 
| 5 | 
            +
             | 
| 6 | 
            +
              def test_empty_list
         | 
| 7 | 
            +
                empty = LinkedList::EMPTY
         | 
| 8 | 
            +
                assert empty.empty?, "should be empty"
         | 
| 9 | 
            +
              end
         | 
| 10 | 
            +
             | 
| 11 | 
            +
              def test_list_with_one_item
         | 
| 12 | 
            +
                list = LinkedList.make(:one)
         | 
| 13 | 
            +
                assert ! list.empty?, "should not be empty"
         | 
| 14 | 
            +
                assert_equal :one, list.head
         | 
| 15 | 
            +
                assert_equal LinkedList::EMPTY, list.tail
         | 
| 16 | 
            +
              end
         | 
| 17 | 
            +
             | 
| 18 | 
            +
              def test_make_with_no_arguments
         | 
| 19 | 
            +
                empty = LinkedList.make()
         | 
| 20 | 
            +
                assert_equal LinkedList::EMPTY, empty
         | 
| 21 | 
            +
              end
         | 
| 22 | 
            +
             | 
| 23 | 
            +
              def test_make_with_one_argument
         | 
| 24 | 
            +
                list = LinkedList.make(:one)
         | 
| 25 | 
            +
                assert ! list.empty?
         | 
| 26 | 
            +
                assert_equal :one, list.head
         | 
| 27 | 
            +
                assert_equal LinkedList::EMPTY, list.tail
         | 
| 28 | 
            +
              end
         | 
| 29 | 
            +
             | 
| 30 | 
            +
              def test_make_with_two_arguments
         | 
| 31 | 
            +
                list = LinkedList.make(:one, :two)
         | 
| 32 | 
            +
                assert ! list.empty?
         | 
| 33 | 
            +
                assert_equal :one, list.head
         | 
| 34 | 
            +
                assert_equal :two, list.tail.head
         | 
| 35 | 
            +
                assert_equal LinkedList::EMPTY, list.tail.tail
         | 
| 36 | 
            +
              end
         | 
| 37 | 
            +
             | 
| 38 | 
            +
              def test_list_with_several_items
         | 
| 39 | 
            +
                list = LinkedList.make(:one, :two, :three)
         | 
| 40 | 
            +
             | 
| 41 | 
            +
                assert ! list.empty?, "should not be empty"
         | 
| 42 | 
            +
                assert_equal :one, list.head
         | 
| 43 | 
            +
                assert_equal :two, list.tail.head
         | 
| 44 | 
            +
                assert_equal :three, list.tail.tail.head
         | 
| 45 | 
            +
                assert_equal LinkedList::EMPTY, list.tail.tail.tail
         | 
| 46 | 
            +
              end
         | 
| 47 | 
            +
             | 
| 48 | 
            +
              def test_lists_are_structurally_equivalent
         | 
| 49 | 
            +
                list = LinkedList.make(1, 2, 3)
         | 
| 50 | 
            +
                same = LinkedList.make(1, 2, 3)
         | 
| 51 | 
            +
                diff = LinkedList.make(1, 2, 4)
         | 
| 52 | 
            +
                short = LinkedList.make(1, 2)
         | 
| 53 | 
            +
             | 
| 54 | 
            +
                assert_equal list, same
         | 
| 55 | 
            +
                refute_equal list, diff
         | 
| 56 | 
            +
                refute_equal list, short
         | 
| 57 | 
            +
                refute_equal short, list
         | 
| 58 | 
            +
              end
         | 
| 59 | 
            +
             | 
| 60 | 
            +
              def test_conversion_to_string
         | 
| 61 | 
            +
                list = LinkedList.make(:one, :two, :three)
         | 
| 62 | 
            +
                assert_equal "LL(one, two, three)", list.to_s
         | 
| 63 | 
            +
                assert_equal "LL()", LinkedList.make().to_s
         | 
| 64 | 
            +
              end
         | 
| 65 | 
            +
             | 
| 66 | 
            +
              def test_conversion_with_inspect
         | 
| 67 | 
            +
                list = LinkedList.make(:one, :two, :three)
         | 
| 68 | 
            +
                assert_equal "LL(:one, :two, :three)", list.inspect
         | 
| 69 | 
            +
                assert_equal "LL()", LinkedList.make().inspect
         | 
| 70 | 
            +
              end
         | 
| 71 | 
            +
             | 
| 72 | 
            +
              def test_lists_are_enumerable
         | 
| 73 | 
            +
                list = LinkedList.make(1, 2, 3)
         | 
| 74 | 
            +
                new_list = list.map { |item| item + 10 }
         | 
| 75 | 
            +
                expected = [11, 12, 13]
         | 
| 76 | 
            +
                assert_equal expected, new_list
         | 
| 77 | 
            +
              end
         | 
| 78 | 
            +
             | 
| 79 | 
            +
              def test_conjunction
         | 
| 80 | 
            +
                list = LinkedList.make.conj("C").conj("B").conj("A")
         | 
| 81 | 
            +
                assert_equal LinkedList.make("A", "B", "C"), list
         | 
| 82 | 
            +
              end
         | 
| 83 | 
            +
             | 
| 84 | 
            +
            end
         | 
| @@ -0,0 +1,46 @@ | |
| 1 | 
            +
            require File.expand_path('../helper', __FILE__)
         | 
| 2 | 
            +
            require 'rake/loaders/makefile'
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            class TestRakeMakefileLoader < Rake::TestCase
         | 
| 5 | 
            +
              include Rake
         | 
| 6 | 
            +
             | 
| 7 | 
            +
              def test_parse
         | 
| 8 | 
            +
                Dir.chdir @tempdir
         | 
| 9 | 
            +
             | 
| 10 | 
            +
                open 'sample.mf', 'w' do |io|
         | 
| 11 | 
            +
                  io << <<-'SAMPLE_MF'
         | 
| 12 | 
            +
            # Comments
         | 
| 13 | 
            +
            a: a1 a2 a3 a4
         | 
| 14 | 
            +
            b: b1 b2 b3 \
         | 
| 15 | 
            +
               b4 b5 b6\
         | 
| 16 | 
            +
            # Mid: Comment
         | 
| 17 | 
            +
            b7
         | 
| 18 | 
            +
             | 
| 19 | 
            +
             a : a5 a6 a7
         | 
| 20 | 
            +
            c: c1
         | 
| 21 | 
            +
            d: d1 d2 \
         | 
| 22 | 
            +
             | 
| 23 | 
            +
            e f : e1 f1
         | 
| 24 | 
            +
             | 
| 25 | 
            +
            g\ 0: g1 g\ 2 g\ 3 g4
         | 
| 26 | 
            +
                  SAMPLE_MF
         | 
| 27 | 
            +
                end
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                Task.clear
         | 
| 30 | 
            +
                loader = Rake::MakefileLoader.new
         | 
| 31 | 
            +
                loader.load 'sample.mf'
         | 
| 32 | 
            +
                %w(a b c d).each do |t|
         | 
| 33 | 
            +
                  assert Task.task_defined?(t), "#{t} should be a defined task"
         | 
| 34 | 
            +
                end
         | 
| 35 | 
            +
                assert_equal %w(a1 a2 a3 a4 a5 a6 a7).sort, Task['a'].prerequisites.sort
         | 
| 36 | 
            +
                assert_equal %w(b1 b2 b3 b4 b5 b6 b7).sort, Task['b'].prerequisites.sort
         | 
| 37 | 
            +
                assert_equal %w(c1).sort, Task['c'].prerequisites.sort
         | 
| 38 | 
            +
                assert_equal %w(d1 d2).sort, Task['d'].prerequisites.sort
         | 
| 39 | 
            +
                assert_equal %w(e1 f1).sort, Task['e'].prerequisites.sort
         | 
| 40 | 
            +
                assert_equal %w(e1 f1).sort, Task['f'].prerequisites.sort
         | 
| 41 | 
            +
                assert_equal(
         | 
| 42 | 
            +
                  ["g1", "g 2", "g 3", "g4"].sort,
         | 
| 43 | 
            +
                  Task['g 0'].prerequisites.sort)
         | 
| 44 | 
            +
                assert_equal 7, Task.tasks.size
         | 
| 45 | 
            +
              end
         | 
| 46 | 
            +
            end
         | 
| @@ -0,0 +1,64 @@ | |
| 1 | 
            +
            require File.expand_path('../helper', __FILE__)
         | 
| 2 | 
            +
            require 'thread'
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            class TestRakeMultiTask < Rake::TestCase
         | 
| 5 | 
            +
              include Rake
         | 
| 6 | 
            +
              include Rake::DSL
         | 
| 7 | 
            +
             | 
| 8 | 
            +
              def setup
         | 
| 9 | 
            +
                super
         | 
| 10 | 
            +
             | 
| 11 | 
            +
                Task.clear
         | 
| 12 | 
            +
                @runs = Array.new
         | 
| 13 | 
            +
                @mutex = Mutex.new
         | 
| 14 | 
            +
              end
         | 
| 15 | 
            +
             | 
| 16 | 
            +
              def teardown
         | 
| 17 | 
            +
                Rake.application.thread_pool.join
         | 
| 18 | 
            +
             | 
| 19 | 
            +
                super
         | 
| 20 | 
            +
              end
         | 
| 21 | 
            +
             | 
| 22 | 
            +
              def add_run(obj)
         | 
| 23 | 
            +
                @mutex.synchronize do
         | 
| 24 | 
            +
                  @runs << obj
         | 
| 25 | 
            +
                end
         | 
| 26 | 
            +
              end
         | 
| 27 | 
            +
             | 
| 28 | 
            +
              def test_running_multitasks
         | 
| 29 | 
            +
                task :a do 3.times do |i| add_run("A#{i}"); sleep 0.01; end end
         | 
| 30 | 
            +
                task :b do 3.times do |i| add_run("B#{i}"); sleep 0.01;  end end
         | 
| 31 | 
            +
                multitask :both => [:a, :b]
         | 
| 32 | 
            +
                Task[:both].invoke
         | 
| 33 | 
            +
                assert_equal 6, @runs.size
         | 
| 34 | 
            +
                assert @runs.index("A0") < @runs.index("A1")
         | 
| 35 | 
            +
                assert @runs.index("A1") < @runs.index("A2")
         | 
| 36 | 
            +
                assert @runs.index("B0") < @runs.index("B1")
         | 
| 37 | 
            +
                assert @runs.index("B1") < @runs.index("B2")
         | 
| 38 | 
            +
              end
         | 
| 39 | 
            +
             | 
| 40 | 
            +
              def test_all_multitasks_wait_on_slow_prerequisites
         | 
| 41 | 
            +
                task :slow do 3.times do |i| add_run("S#{i}"); sleep 0.05 end end
         | 
| 42 | 
            +
                task :a => [:slow] do 3.times do |i| add_run("A#{i}"); sleep 0.01 end end
         | 
| 43 | 
            +
                task :b => [:slow] do 3.times do |i| add_run("B#{i}"); sleep 0.01 end end
         | 
| 44 | 
            +
                multitask :both => [:a, :b]
         | 
| 45 | 
            +
                Task[:both].invoke
         | 
| 46 | 
            +
                assert_equal 9, @runs.size
         | 
| 47 | 
            +
                assert @runs.index("S0") < @runs.index("S1")
         | 
| 48 | 
            +
                assert @runs.index("S1") < @runs.index("S2")
         | 
| 49 | 
            +
                assert @runs.index("S2") < @runs.index("A0")
         | 
| 50 | 
            +
                assert @runs.index("S2") < @runs.index("B0")
         | 
| 51 | 
            +
                assert @runs.index("A0") < @runs.index("A1")
         | 
| 52 | 
            +
                assert @runs.index("A1") < @runs.index("A2")
         | 
| 53 | 
            +
                assert @runs.index("B0") < @runs.index("B1")
         | 
| 54 | 
            +
                assert @runs.index("B1") < @runs.index("B2")
         | 
| 55 | 
            +
              end
         | 
| 56 | 
            +
             | 
| 57 | 
            +
              def test_multitasks_with_parameters
         | 
| 58 | 
            +
                task :a, [:arg] do |t, args| add_run(args[:arg]) end
         | 
| 59 | 
            +
                multitask :b, [:arg] => [:a] do |t, args| add_run(args[:arg] + 'mt') end
         | 
| 60 | 
            +
                Task[:b].invoke "b"
         | 
| 61 | 
            +
                assert @runs[0] == "b"
         | 
| 62 | 
            +
                assert @runs[1] == "bmt"
         | 
| 63 | 
            +
              end
         | 
| 64 | 
            +
            end
         | 
| @@ -0,0 +1,57 @@ | |
| 1 | 
            +
            require File.expand_path('../helper', __FILE__)
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            class TestRakeNameSpace < Rake::TestCase
         | 
| 4 | 
            +
             | 
| 5 | 
            +
              class TM
         | 
| 6 | 
            +
                include Rake::TaskManager
         | 
| 7 | 
            +
              end
         | 
| 8 | 
            +
             | 
| 9 | 
            +
              def test_namespace_creation
         | 
| 10 | 
            +
                mgr = TM.new
         | 
| 11 | 
            +
                ns = Rake::NameSpace.new(mgr, [])
         | 
| 12 | 
            +
                refute_nil ns
         | 
| 13 | 
            +
              end
         | 
| 14 | 
            +
             | 
| 15 | 
            +
              def test_namespace_lookup
         | 
| 16 | 
            +
                mgr = TM.new
         | 
| 17 | 
            +
                ns = mgr.in_namespace("n") do
         | 
| 18 | 
            +
                  mgr.define_task(Rake::Task, "t")
         | 
| 19 | 
            +
                end
         | 
| 20 | 
            +
             | 
| 21 | 
            +
                refute_nil ns["t"]
         | 
| 22 | 
            +
                assert_equal mgr["n:t"], ns["t"]
         | 
| 23 | 
            +
              end
         | 
| 24 | 
            +
             | 
| 25 | 
            +
              def test_namespace_reports_tasks_it_owns
         | 
| 26 | 
            +
                mgr = TM.new
         | 
| 27 | 
            +
                nns = nil
         | 
| 28 | 
            +
                ns = mgr.in_namespace("n") do
         | 
| 29 | 
            +
                  mgr.define_task(Rake::Task, :x)
         | 
| 30 | 
            +
                  mgr.define_task(Rake::Task, :y)
         | 
| 31 | 
            +
                  nns = mgr.in_namespace("nn") do
         | 
| 32 | 
            +
                    mgr.define_task(Rake::Task, :z)
         | 
| 33 | 
            +
                  end
         | 
| 34 | 
            +
                end
         | 
| 35 | 
            +
                mgr.in_namespace("m") do
         | 
| 36 | 
            +
                  mgr.define_task(Rake::Task, :x)
         | 
| 37 | 
            +
                end
         | 
| 38 | 
            +
             | 
| 39 | 
            +
                assert_equal ["n:nn:z", "n:x", "n:y"],
         | 
| 40 | 
            +
                  ns.tasks.map { |tsk| tsk.name }
         | 
| 41 | 
            +
                assert_equal ["n:nn:z"], nns.tasks.map { |t| t.name }
         | 
| 42 | 
            +
              end
         | 
| 43 | 
            +
             | 
| 44 | 
            +
              def test_scope
         | 
| 45 | 
            +
                mgr = TM.new
         | 
| 46 | 
            +
             | 
| 47 | 
            +
                scope = Rake::LinkedList.new 'b'
         | 
| 48 | 
            +
                scope = scope.conj 'a'
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                ns = Rake::NameSpace.new mgr, scope
         | 
| 51 | 
            +
             | 
| 52 | 
            +
                assert_equal scope, ns.scope
         | 
| 53 | 
            +
             | 
| 54 | 
            +
                refute_same scope, ns.scope
         | 
| 55 | 
            +
              end
         | 
| 56 | 
            +
             | 
| 57 | 
            +
            end
         | 
| @@ -0,0 +1,79 @@ | |
| 1 | 
            +
            require File.expand_path('../helper', __FILE__)
         | 
| 2 | 
            +
            require 'rake/packagetask'
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            class TestRakePackageTask < Rake::TestCase
         | 
| 5 | 
            +
             | 
| 6 | 
            +
              def test_initialize
         | 
| 7 | 
            +
                touch 'install.rb'
         | 
| 8 | 
            +
                touch 'a.c'
         | 
| 9 | 
            +
                touch 'b.c'
         | 
| 10 | 
            +
                mkdir 'CVS'
         | 
| 11 | 
            +
                touch 'a.rb~'
         | 
| 12 | 
            +
             | 
| 13 | 
            +
                pkg = Rake::PackageTask.new("pkgr", "1.2.3") { |p|
         | 
| 14 | 
            +
                  p.package_files << "install.rb"
         | 
| 15 | 
            +
                  p.package_files.include '*.c'
         | 
| 16 | 
            +
                  p.package_files.exclude(/\bCVS\b/)
         | 
| 17 | 
            +
                  p.package_files.exclude(/~$/)
         | 
| 18 | 
            +
                  p.package_dir = 'pkg'
         | 
| 19 | 
            +
                  p.need_tar = true
         | 
| 20 | 
            +
                  p.need_tar_gz = true
         | 
| 21 | 
            +
                  p.need_tar_bz2 = true
         | 
| 22 | 
            +
                  p.need_zip = true
         | 
| 23 | 
            +
                }
         | 
| 24 | 
            +
             | 
| 25 | 
            +
                assert_equal "pkg", pkg.package_dir
         | 
| 26 | 
            +
             | 
| 27 | 
            +
                assert_includes pkg.package_files, 'a.c'
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                assert_equal 'pkgr', pkg.name
         | 
| 30 | 
            +
                assert_equal '1.2.3', pkg.version
         | 
| 31 | 
            +
                assert Rake::Task[:package]
         | 
| 32 | 
            +
                assert Rake::Task['pkg/pkgr-1.2.3.tgz']
         | 
| 33 | 
            +
                assert Rake::Task['pkg/pkgr-1.2.3.tar.gz']
         | 
| 34 | 
            +
                assert Rake::Task['pkg/pkgr-1.2.3.tar.bz2']
         | 
| 35 | 
            +
                assert Rake::Task['pkg/pkgr-1.2.3.zip']
         | 
| 36 | 
            +
                assert Rake::Task['pkg/pkgr-1.2.3']
         | 
| 37 | 
            +
                assert Rake::Task[:clobber_package]
         | 
| 38 | 
            +
                assert Rake::Task[:repackage]
         | 
| 39 | 
            +
              end
         | 
| 40 | 
            +
             | 
| 41 | 
            +
              def test_initialize_no_version
         | 
| 42 | 
            +
                e = assert_raises RuntimeError do
         | 
| 43 | 
            +
                  Rake::PackageTask.new 'pkgr'
         | 
| 44 | 
            +
                end
         | 
| 45 | 
            +
             | 
| 46 | 
            +
                assert_equal 'Version required (or :noversion)', e.message
         | 
| 47 | 
            +
              end
         | 
| 48 | 
            +
             | 
| 49 | 
            +
              def test_initialize_noversion
         | 
| 50 | 
            +
                pkg = Rake::PackageTask.new 'pkgr', :noversion
         | 
| 51 | 
            +
             | 
| 52 | 
            +
                assert_equal 'pkg',  pkg.package_dir
         | 
| 53 | 
            +
                assert_equal 'pkgr', pkg.name
         | 
| 54 | 
            +
                assert_equal nil,    pkg.version
         | 
| 55 | 
            +
              end
         | 
| 56 | 
            +
             | 
| 57 | 
            +
              def test_clone
         | 
| 58 | 
            +
                pkg = Rake::PackageTask.new("x", :noversion)
         | 
| 59 | 
            +
                p2 = pkg.clone
         | 
| 60 | 
            +
                pkg.package_files << "y"
         | 
| 61 | 
            +
                p2.package_files << "x"
         | 
| 62 | 
            +
                assert_equal ["y"], pkg.package_files
         | 
| 63 | 
            +
                assert_equal ["x"], p2.package_files
         | 
| 64 | 
            +
              end
         | 
| 65 | 
            +
             | 
| 66 | 
            +
              def test_package_name
         | 
| 67 | 
            +
                pkg = Rake::PackageTask.new 'a', '1'
         | 
| 68 | 
            +
             | 
| 69 | 
            +
                assert_equal 'a-1', pkg.package_name
         | 
| 70 | 
            +
              end
         | 
| 71 | 
            +
             | 
| 72 | 
            +
              def test_package_name_noversion
         | 
| 73 | 
            +
                pkg = Rake::PackageTask.new 'a', :noversion
         | 
| 74 | 
            +
             | 
| 75 | 
            +
                assert_equal 'a', pkg.package_name
         | 
| 76 | 
            +
              end
         | 
| 77 | 
            +
             | 
| 78 | 
            +
            end
         | 
| 79 | 
            +
             | 
| @@ -0,0 +1,168 @@ | |
| 1 | 
            +
            require File.expand_path('../helper', __FILE__)
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            class TestRakePathMap < Rake::TestCase
         | 
| 4 | 
            +
             | 
| 5 | 
            +
              def test_returns_self_with_no_args
         | 
| 6 | 
            +
                assert_equal "abc.rb", "abc.rb".pathmap
         | 
| 7 | 
            +
              end
         | 
| 8 | 
            +
             | 
| 9 | 
            +
              def test_s_returns_file_separator
         | 
| 10 | 
            +
                sep = File::ALT_SEPARATOR || File::SEPARATOR
         | 
| 11 | 
            +
                assert_equal sep, "abc.rb".pathmap("%s")
         | 
| 12 | 
            +
                assert_equal sep, "".pathmap("%s")
         | 
| 13 | 
            +
                assert_equal "a#{sep}b", "a/b".pathmap("%d%s%f")
         | 
| 14 | 
            +
              end
         | 
| 15 | 
            +
             | 
| 16 | 
            +
              def test_f_returns_basename
         | 
| 17 | 
            +
                assert_equal "abc.rb", "abc.rb".pathmap("%f")
         | 
| 18 | 
            +
                assert_equal "abc.rb", "this/is/a/dir/abc.rb".pathmap("%f")
         | 
| 19 | 
            +
                assert_equal "abc.rb", "/this/is/a/dir/abc.rb".pathmap("%f")
         | 
| 20 | 
            +
              end
         | 
| 21 | 
            +
             | 
| 22 | 
            +
              def test_n_returns_basename_without_extension
         | 
| 23 | 
            +
                assert_equal "abc", "abc.rb".pathmap("%n")
         | 
| 24 | 
            +
                assert_equal "abc", "abc".pathmap("%n")
         | 
| 25 | 
            +
                assert_equal "abc", "this/is/a/dir/abc.rb".pathmap("%n")
         | 
| 26 | 
            +
                assert_equal "abc", "/this/is/a/dir/abc.rb".pathmap("%n")
         | 
| 27 | 
            +
                assert_equal "abc", "/this/is/a/dir/abc".pathmap("%n")
         | 
| 28 | 
            +
              end
         | 
| 29 | 
            +
             | 
| 30 | 
            +
              def test_d_returns_dirname
         | 
| 31 | 
            +
                assert_equal ".", "abc.rb".pathmap("%d")
         | 
| 32 | 
            +
                assert_equal "/", "/abc".pathmap("%d")
         | 
| 33 | 
            +
                assert_equal "this/is/a/dir", "this/is/a/dir/abc.rb".pathmap("%d")
         | 
| 34 | 
            +
                assert_equal "/this/is/a/dir", "/this/is/a/dir/abc.rb".pathmap("%d")
         | 
| 35 | 
            +
              end
         | 
| 36 | 
            +
             | 
| 37 | 
            +
              def test_9d_returns_partial_dirname
         | 
| 38 | 
            +
                assert_equal "this/is", "this/is/a/dir/abc.rb".pathmap("%2d")
         | 
| 39 | 
            +
                assert_equal "this", "this/is/a/dir/abc.rb".pathmap("%1d")
         | 
| 40 | 
            +
                assert_equal ".", "this/is/a/dir/abc.rb".pathmap("%0d")
         | 
| 41 | 
            +
                assert_equal "dir", "this/is/a/dir/abc.rb".pathmap("%-1d")
         | 
| 42 | 
            +
                assert_equal "a/dir", "this/is/a/dir/abc.rb".pathmap("%-2d")
         | 
| 43 | 
            +
                assert_equal "this/is/a/dir", "this/is/a/dir/abc.rb".pathmap("%100d")
         | 
| 44 | 
            +
                assert_equal "this/is/a/dir", "this/is/a/dir/abc.rb".pathmap("%-100d")
         | 
| 45 | 
            +
              end
         | 
| 46 | 
            +
             | 
| 47 | 
            +
              def test_x_returns_extension
         | 
| 48 | 
            +
                assert_equal "", "abc".pathmap("%x")
         | 
| 49 | 
            +
                assert_equal ".rb", "abc.rb".pathmap("%x")
         | 
| 50 | 
            +
                assert_equal ".rb", "abc.xyz.rb".pathmap("%x")
         | 
| 51 | 
            +
                assert_equal "", ".depends".pathmap("%x")
         | 
| 52 | 
            +
                assert_equal "", "dir/.depends".pathmap("%x")
         | 
| 53 | 
            +
              end
         | 
| 54 | 
            +
             | 
| 55 | 
            +
              def test_x_returns_everything_but_extension
         | 
| 56 | 
            +
                assert_equal "abc", "abc".pathmap("%X")
         | 
| 57 | 
            +
                assert_equal "abc", "abc.rb".pathmap("%X")
         | 
| 58 | 
            +
                assert_equal "abc.xyz", "abc.xyz.rb".pathmap("%X")
         | 
| 59 | 
            +
                assert_equal "ab.xyz", "ab.xyz.rb".pathmap("%X")
         | 
| 60 | 
            +
                assert_equal "a.xyz", "a.xyz.rb".pathmap("%X")
         | 
| 61 | 
            +
                assert_equal "abc", "abc.rb".pathmap("%X")
         | 
| 62 | 
            +
                assert_equal "ab", "ab.rb".pathmap("%X")
         | 
| 63 | 
            +
                assert_equal "a", "a.rb".pathmap("%X")
         | 
| 64 | 
            +
                assert_equal ".depends", ".depends".pathmap("%X")
         | 
| 65 | 
            +
                assert_equal "a/dir/.depends", "a/dir/.depends".pathmap("%X")
         | 
| 66 | 
            +
                assert_equal "/.depends", "/.depends".pathmap("%X")
         | 
| 67 | 
            +
              end
         | 
| 68 | 
            +
             | 
| 69 | 
            +
              def test_p_returns_entire_pathname
         | 
| 70 | 
            +
                assert_equal "abc.rb", "abc.rb".pathmap("%p")
         | 
| 71 | 
            +
                assert_equal "this/is/a/dir/abc.rb", "this/is/a/dir/abc.rb".pathmap("%p")
         | 
| 72 | 
            +
                assert_equal "/this/is/a/dir/abc.rb", "/this/is/a/dir/abc.rb".pathmap("%p")
         | 
| 73 | 
            +
              end
         | 
| 74 | 
            +
             | 
| 75 | 
            +
              def test_dash_returns_empty_string
         | 
| 76 | 
            +
                assert_equal "", "abc.rb".pathmap("%-")
         | 
| 77 | 
            +
                assert_equal "abc.rb", "abc.rb".pathmap("%X%-%x")
         | 
| 78 | 
            +
              end
         | 
| 79 | 
            +
             | 
| 80 | 
            +
              def test_percent_percent_returns_percent
         | 
| 81 | 
            +
                assert_equal "a%b", "".pathmap("a%%b")
         | 
| 82 | 
            +
              end
         | 
| 83 | 
            +
             | 
| 84 | 
            +
              def test_undefined_percent_causes_error
         | 
| 85 | 
            +
                assert_raises(ArgumentError) {
         | 
| 86 | 
            +
                  "dir/abc.rb".pathmap("%z")
         | 
| 87 | 
            +
                }
         | 
| 88 | 
            +
              end
         | 
| 89 | 
            +
             | 
| 90 | 
            +
              def test_pattern_returns_substitutions
         | 
| 91 | 
            +
                assert_equal "bin/org/osb",
         | 
| 92 | 
            +
                  "src/org/osb/Xyz.java".pathmap("%{src,bin}d")
         | 
| 93 | 
            +
              end
         | 
| 94 | 
            +
             | 
| 95 | 
            +
              def test_pattern_can_use_backreferences
         | 
| 96 | 
            +
                assert_equal "dir/hi/is", "dir/this/is".pathmap("%{t(hi)s,\\1}p")
         | 
| 97 | 
            +
              end
         | 
| 98 | 
            +
             | 
| 99 | 
            +
              def test_pattern_with_star_replacement_string_uses_block
         | 
| 100 | 
            +
                assert_equal "src/ORG/osb",
         | 
| 101 | 
            +
                  "src/org/osb/Xyz.java".pathmap("%{/org,*}d") { |d| d.upcase }
         | 
| 102 | 
            +
                assert_equal "Xyz.java",
         | 
| 103 | 
            +
                  "src/org/osb/Xyz.java".pathmap("%{.*,*}f") { |f| f.capitalize }
         | 
| 104 | 
            +
              end
         | 
| 105 | 
            +
             | 
| 106 | 
            +
              def test_pattern_with_no_replacement_nor_block_substitutes_empty_string
         | 
| 107 | 
            +
                assert_equal "bc.rb", "abc.rb".pathmap("%{a}f")
         | 
| 108 | 
            +
              end
         | 
| 109 | 
            +
             | 
| 110 | 
            +
              def test_pattern_works_with_certain_valid_operators
         | 
| 111 | 
            +
                assert_equal "dir/xbc.rb", "dir/abc.rb".pathmap("%{a,x}p")
         | 
| 112 | 
            +
                assert_equal "d1r", "dir/abc.rb".pathmap("%{i,1}d")
         | 
| 113 | 
            +
                assert_equal "xbc.rb", "dir/abc.rb".pathmap("%{a,x}f")
         | 
| 114 | 
            +
                assert_equal ".Rb", "dir/abc.rb".pathmap("%{r,R}x")
         | 
| 115 | 
            +
                assert_equal "xbc", "dir/abc.rb".pathmap("%{a,x}n")
         | 
| 116 | 
            +
              end
         | 
| 117 | 
            +
             | 
| 118 | 
            +
              def test_multiple_patterns
         | 
| 119 | 
            +
                assert_equal "this/is/b/directory/abc.rb",
         | 
| 120 | 
            +
                  "this/is/a/dir/abc.rb".pathmap("%{a,b;dir,\\0ectory}p")
         | 
| 121 | 
            +
              end
         | 
| 122 | 
            +
             | 
| 123 | 
            +
              def test_partial_directory_selection_works_with_patterns
         | 
| 124 | 
            +
                assert_equal "this/is/a/long",
         | 
| 125 | 
            +
                  "this/is/a/really/long/path/ok.rb".pathmap("%{/really/,/}5d")
         | 
| 126 | 
            +
              end
         | 
| 127 | 
            +
             | 
| 128 | 
            +
              def test_pattern_with_invalid_operator
         | 
| 129 | 
            +
                ex = assert_raises(ArgumentError) do
         | 
| 130 | 
            +
                  "abc.xyz".pathmap("%{src,bin}z")
         | 
| 131 | 
            +
                end
         | 
| 132 | 
            +
                assert_match(/unknown.*pathmap.*spec.*z/i, ex.message)
         | 
| 133 | 
            +
              end
         | 
| 134 | 
            +
             | 
| 135 | 
            +
              def test_works_with_windows_separators
         | 
| 136 | 
            +
                if File::ALT_SEPARATOR
         | 
| 137 | 
            +
                  assert_equal "abc", 'dir\abc.rb'.pathmap("%n")
         | 
| 138 | 
            +
                  assert_equal 'this\is\a\dir',
         | 
| 139 | 
            +
                    'this\is\a\dir\abc.rb'.pathmap("%d")
         | 
| 140 | 
            +
                end
         | 
| 141 | 
            +
              end
         | 
| 142 | 
            +
             | 
| 143 | 
            +
              def test_complex_patterns
         | 
| 144 | 
            +
                sep = "".pathmap("%s")
         | 
| 145 | 
            +
                assert_equal(
         | 
| 146 | 
            +
                  "dir/abc.rb",
         | 
| 147 | 
            +
                  "dir/abc.rb".pathmap("%d/%n%x"))
         | 
| 148 | 
            +
                assert_equal(
         | 
| 149 | 
            +
                  "./abc.rb",
         | 
| 150 | 
            +
                  "abc.rb".pathmap("%d/%n%x"))
         | 
| 151 | 
            +
                assert_equal(
         | 
| 152 | 
            +
                  "Your file extension is '.rb'",
         | 
| 153 | 
            +
                  "dir/abc.rb".pathmap("Your file extension is '%x'"))
         | 
| 154 | 
            +
                assert_equal(
         | 
| 155 | 
            +
                  "bin/org/onestepback/proj/A.class",
         | 
| 156 | 
            +
                  "src/org/onestepback/proj/A.java".pathmap("%{src,bin}d/%n.class"))
         | 
| 157 | 
            +
                assert_equal(
         | 
| 158 | 
            +
                  "src_work/bin/org/onestepback/proj/A.class",
         | 
| 159 | 
            +
                  "src_work/src/org/onestepback/proj/A.java".
         | 
| 160 | 
            +
                    pathmap('%{\bsrc\b,bin}X.class'))
         | 
| 161 | 
            +
                assert_equal(
         | 
| 162 | 
            +
                  ".depends.bak",
         | 
| 163 | 
            +
                  ".depends".pathmap("%X.bak"))
         | 
| 164 | 
            +
                assert_equal(
         | 
| 165 | 
            +
                  "d#{sep}a/b/c#{sep}file.txt",
         | 
| 166 | 
            +
                  "a/b/c/d/file.txt".pathmap("%-1d%s%3d%s%f"))
         | 
| 167 | 
            +
              end
         | 
| 168 | 
            +
            end
         |