test.rb in mahoro-0.2 vs test.rb in mahoro-0.3
- old
+ new
@@ -20,16 +20,31 @@
'text/x-c; charset=us-ascii' => true,
'text/x-c charset=us-ascii' => true
}.include?(@m.file('mahoro.c')))
end
+ def test_null_byte_in_path
+ assert_raises(ArgumentError) { @m.file("mahoro.c\0foo") }
+ end
+
def test_buffer
@m.flags = Mahoro::NONE
assert_equal('ASCII C program text',
@m.buffer(File.read('mahoro.c')))
end
+ def test_buffer_string_convert
+ tmp = File.read('mahoro.c')
+ buf = Struct.new(:to_str).new(tmp)
+ assert_equal('ASCII C program text', @m.buffer(buf))
+ end
+
+ def test_buffer_invalid
+ @m.flags = Mahoro::NONE
+ assert_raises(TypeError) { @m.buffer @m }
+ end
+
def test_mime_buffer
@m.flags = Mahoro::MIME
assert({
'text/x-c; charset=us-ascii' => true,
'text/x-c charset=us-ascii' => true
@@ -38,8 +53,27 @@
def test_valid
assert(@m.valid?, 'Default database was not valid.')
end
+ def test_valid_with_null
+ assert_raises(ArgumentError) { @m.valid? "mahoro.c\0" }
+ end
+
+ def test_compile
+ File.open(__FILE__) do |fp|
+ fp.flock File::LOCK_EX
+ assert Mahoro.compile("magic.sample")
+ assert_nothing_raised do
+ File.unlink("magic.sample.mgc")
+ end
+ end
+ end
+
+ def test_compile_bad
+ assert_raises(ArgumentError) do
+ Mahoro.compile "magic.sample\0"
+ end
+ end
end
# arch-tag: test