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

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

文字コードを設定

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