2017-01-07 05:14:07 +03:00
|
|
|
# frozen_string_literal: true
|
2013-03-01 06:09:42 +04:00
|
|
|
require 'test/unit'
|
|
|
|
require 'fileutils'
|
|
|
|
|
|
|
|
##
|
|
|
|
# These tests are reused in the FileUtils::Verbose, FileUtils::NoWrite and
|
|
|
|
# FileUtils::DryRun tests
|
|
|
|
|
2022-04-22 23:01:43 +03:00
|
|
|
module TestFileUtilsIncVisibility
|
2013-03-01 06:09:42 +04:00
|
|
|
|
|
|
|
FileUtils::METHODS.each do |m|
|
|
|
|
define_method "test_singleton_visibility_#{m}" do
|
|
|
|
assert @fu_module.respond_to?(m, true),
|
|
|
|
"FileUtils::Verbose.#{m} is not defined"
|
|
|
|
assert @fu_module.respond_to?(m, false),
|
|
|
|
"FileUtils::Verbose.#{m} is not public"
|
|
|
|
end
|
|
|
|
|
|
|
|
define_method "test_visibility_#{m}" do
|
|
|
|
assert respond_to?(m, true),
|
|
|
|
"FileUtils::Verbose\##{m} is not defined"
|
|
|
|
assert @fu_module.private_method_defined?(m),
|
|
|
|
"FileUtils::Verbose\##{m} is not private"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
FileUtils::StreamUtils_.private_instance_methods.each do |m|
|
|
|
|
define_method "test_singleton_visibility_#{m}" do
|
|
|
|
assert @fu_module.respond_to?(m, true),
|
|
|
|
"FileUtils::Verbose\##{m} is not defined"
|
|
|
|
end
|
|
|
|
|
|
|
|
define_method "test_visibility_#{m}" do
|
|
|
|
assert respond_to?(m, true),
|
|
|
|
"FileUtils::Verbose\##{m} is not defined"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|