summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authornagachika <nagachika@ruby-lang.org>2022-09-25 13:45:46 +0900
committernagachika <nagachika@ruby-lang.org>2022-09-25 13:45:46 +0900
commite3607e687014da4f6347c462e7d11fb67000b733 (patch)
tree05c3532ce0a80a008c6a72d45c9d071af2181a3a /test
parentc356c31f77b2d7c7c7f40f5b19dbb0961ea5f803 (diff)
merge revision(s) a0040af6715d85f416f1282588974e151a8164eb: [Backport #18732]
[Win32] Fix mode of character/pipe device stat [Bug #18732] --- test/ruby/test_file_exhaustive.rb | 33 ++++++++++++++++++++++++++++----- win32/win32.c | 22 ++++++++++++++++------ 2 files changed, 44 insertions(+), 11 deletions(-)
Diffstat (limited to 'test')
-rw-r--r--test/ruby/test_file_exhaustive.rb33
1 files changed, 28 insertions, 5 deletions
diff --git a/test/ruby/test_file_exhaustive.rb b/test/ruby/test_file_exhaustive.rb
index 03675eaebc..a960ef0d74 100644
--- a/test/ruby/test_file_exhaustive.rb
+++ b/test/ruby/test_file_exhaustive.rb
@@ -173,9 +173,7 @@ class TestFileExhaustive < Test::Unit::TestCase
end
def chardev
- return @chardev if defined? @chardev
- @chardev = File::NULL == "/dev/null" ? "/dev/null" : nil
- @chardev
+ File::NULL
end
def blockdev
@@ -332,7 +330,7 @@ class TestFileExhaustive < Test::Unit::TestCase
assert_file.not_chardev?(regular_file)
assert_file.not_chardev?(utf8_file)
assert_file.not_chardev?(nofile)
- assert_file.chardev?(chardev) if chardev
+ assert_file.chardev?(chardev)
end
def test_exist_p
@@ -1512,6 +1510,31 @@ class TestFileExhaustive < Test::Unit::TestCase
assert_equal(File.executable?(f), test(?x, f), f)
assert_equal(File.executable_real?(f), test(?X, f), f)
assert_equal(File.zero?(f), test(?z, f), f)
+
+ stat = File.stat(f)
+ assert_equal(stat.atime, File.atime(f), f)
+ assert_equal(stat.ctime, File.ctime(f), f)
+ assert_equal(stat.mtime, File.mtime(f), f)
+ assert_equal(stat.blockdev?, File.blockdev?(f), f)
+ assert_equal(stat.chardev?, File.chardev?(f), f)
+ assert_equal(stat.directory?, File.directory?(f), f)
+ assert_equal(stat.file?, File.file?(f), f)
+ assert_equal(stat.setgid?, File.setgid?(f), f)
+ assert_equal(stat.grpowned?, File.grpowned?(f), f)
+ assert_equal(stat.sticky?, File.sticky?(f), f)
+ assert_equal(File.lstat(f).symlink?, File.symlink?(f), f)
+ assert_equal(stat.owned?, File.owned?(f), f)
+ assert_equal(stat.pipe?, File.pipe?(f), f)
+ assert_equal(stat.readable?, File.readable?(f), f)
+ assert_equal(stat.readable_real?, File.readable_real?(f), f)
+ assert_equal(stat.size?, File.size?(f), f)
+ assert_equal(stat.socket?, File.socket?(f), f)
+ assert_equal(stat.setuid?, File.setuid?(f), f)
+ assert_equal(stat.writable?, File.writable?(f), f)
+ assert_equal(stat.writable_real?, File.writable_real?(f), f)
+ assert_equal(stat.executable?, File.executable?(f), f)
+ assert_equal(stat.executable_real?, File.executable_real?(f), f)
+ assert_equal(stat.zero?, File.zero?(f), f)
end
assert_equal(false, test(?-, @dir, fn1))
assert_equal(true, test(?-, fn1, fn1))
@@ -1621,7 +1644,7 @@ class TestFileExhaustive < Test::Unit::TestCase
def test_stat_chardev_p
assert_not_predicate(File::Stat.new(@dir), :chardev?)
assert_not_predicate(File::Stat.new(regular_file), :chardev?)
- assert_predicate(File::Stat.new(chardev), :chardev?) if chardev
+ assert_predicate(File::Stat.new(chardev), :chardev?)
end
def test_stat_readable_p