1require 'test/unit' 2require 'fileutils' 3 4class TestFileUtils < Test::Unit::TestCase 5end 6 7## 8# These tests are reused in the FileUtils::Verbose, FileUtils::NoWrite and 9# FileUtils::DryRun tests 10 11module TestFileUtils::Visibility 12 13 FileUtils::METHODS.each do |m| 14 define_method "test_singleton_visibility_#{m}" do 15 assert @fu_module.respond_to?(m, true), 16 "FileUtils::Verbose.#{m} is not defined" 17 assert @fu_module.respond_to?(m, false), 18 "FileUtils::Verbose.#{m} is not public" 19 end 20 21 define_method "test_visibility_#{m}" do 22 assert respond_to?(m, true), 23 "FileUtils::Verbose\##{m} is not defined" 24 assert @fu_module.private_method_defined?(m), 25 "FileUtils::Verbose\##{m} is not private" 26 end 27 end 28 29 FileUtils::StreamUtils_.private_instance_methods.each do |m| 30 define_method "test_singleton_visibility_#{m}" do 31 assert @fu_module.respond_to?(m, true), 32 "FileUtils::Verbose\##{m} is not defined" 33 end 34 35 define_method "test_visibility_#{m}" do 36 assert respond_to?(m, true), 37 "FileUtils::Verbose\##{m} is not defined" 38 end 39 end 40 41end 42