source: EcnlProtoTool/trunk/mruby-2.1.1/mrbgems/mruby-io/test/file_test.rb@ 439

Last change on this file since 439 was 439, checked in by coas-nagasima, 4 years ago

mrubyを2.1.1に更新

  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/x-ruby;charset=UTF-8
File size: 2.8 KB
Line 
1##
2# FileTest
3
4MRubyIOTestUtil.io_test_setup
5
6assert("FileTest.directory?") do
7 dir = MRubyIOTestUtil.mkdtemp("mruby-io-test.XXXXXX")
8 begin
9 assert_true FileTest.directory?(dir)
10 assert_false FileTest.directory?($mrbtest_io_rfname)
11 ensure
12 MRubyIOTestUtil.rmdir dir
13 end
14end
15
16assert("FileTest.exist?") do
17 assert_equal true, FileTest.exist?($mrbtest_io_rfname), "filename - exist"
18 assert_equal false, FileTest.exist?($mrbtest_io_rfname + "-"), "filename - not exist"
19 io = IO.new(IO.sysopen($mrbtest_io_rfname))
20 assert_equal true, FileTest.exist?(io), "io obj - exist"
21 io.close
22 assert_equal true, io.closed?
23 assert_raise(IOError) { FileTest.exist?(io) }
24 assert_raise(TypeError) { File.exist?($mrbtest_io_rfname.to_sym) }
25end
26
27assert("FileTest.file?") do
28 dir = MRubyIOTestUtil.mkdtemp("mruby-io-test.XXXXXX")
29 begin
30 assert_true FileTest.file?($mrbtest_io_rfname)
31 assert_false FileTest.file?(dir)
32 ensure
33 MRubyIOTestUtil.rmdir dir
34 end
35end
36
37assert("FileTest.pipe?") do
38 begin
39 assert_equal false, FileTest.pipe?("/tmp")
40 io = IO.popen("ls")
41 assert_equal true, FileTest.pipe?(io)
42 rescue NotImplementedError => e
43 skip e.message
44 end
45end
46
47assert('FileTest.size') do
48 assert_equal FileTest.size($mrbtest_io_rfname), $mrbtest_io_msg.size
49 assert_equal FileTest.size($mrbtest_io_wfname), 0
50end
51
52assert("FileTest.size?") do
53 assert_equal $mrbtest_io_msg.size, FileTest.size?($mrbtest_io_rfname)
54 assert_equal nil, FileTest.size?($mrbtest_io_wfname)
55 assert_equal nil, FileTest.size?("not-exist-test-target-file")
56
57 fp1 = File.open($mrbtest_io_rfname)
58 fp2 = File.open($mrbtest_io_wfname)
59 assert_equal $mrbtest_io_msg.size, FileTest.size?(fp1)
60 assert_equal nil, FileTest.size?(fp2)
61 fp1.close
62 fp2.close
63
64 assert_raise IOError do
65 FileTest.size?(fp1)
66 end
67 assert_true fp1.closed?
68 assert_raise IOError do
69 FileTest.size?(fp2)
70 end
71 assert_true fp2.closed?
72end
73
74assert("FileTest.socket?") do
75 begin
76 assert_true FileTest.socket?($mrbtest_io_socketname)
77 rescue NotImplementedError => e
78 skip e.message
79 end
80end
81
82assert("FileTest.symlink?") do
83 begin
84 assert_true FileTest.symlink?($mrbtest_io_symlinkname)
85 rescue NotImplementedError => e
86 skip e.message
87 end
88end
89
90assert("FileTest.zero?") do
91 assert_equal false, FileTest.zero?($mrbtest_io_rfname)
92 assert_equal true, FileTest.zero?($mrbtest_io_wfname)
93 assert_equal false, FileTest.zero?("not-exist-test-target-file")
94
95 fp1 = File.open($mrbtest_io_rfname)
96 fp2 = File.open($mrbtest_io_wfname)
97 assert_equal false, FileTest.zero?(fp1)
98 assert_equal true, FileTest.zero?(fp2)
99 fp1.close
100 fp2.close
101
102 assert_raise IOError do
103 FileTest.zero?(fp1)
104 end
105 assert_true fp1.closed?
106 assert_raise IOError do
107 FileTest.zero?(fp2)
108 end
109 assert_true fp2.closed?
110end
111
112MRubyIOTestUtil.io_test_cleanup
Note: See TracBrowser for help on using the repository browser.