1 # $Id: test_chunk.rb 1 2005-03-26 01:45:38Z tilman $
6 class ChunkTest < Test::Unit::TestCase
8 @data = Eet::Chunk.new("tag", "foo\0bar\0baz").serialize
12 assert_equal("CHnK\017\0\0\0tag\0foo\0bar\0baz", @data)
18 assert_nothing_raised do
19 chunk = Eet::Chunk.deserialize(@data)
22 assert_equal("tag", chunk.tag)
23 assert_equal("foo\0bar\0baz", chunk.data)
26 def test_deserialize_invalid
27 assert_raise(Eet::ChunkError) do
28 Eet::Chunk.deserialize("foobar" << "\377" * 4 << "tagdata")
31 assert_raise(Eet::ChunkError) do
32 Eet::Chunk.deserialize("CHnK" << "\377" * 4 << "tagdata")
35 assert_raise(Eet::ChunkError) do
36 Eet::Chunk.deserialize("CHnK\010\0\0\0tag0data")
39 assert_nothing_raised do
40 Eet::Chunk.deserialize("CHnK\10\0\0\0tag\0data")
44 def test_catch_invalid_tag
45 assert_raise(ArgumentError) do
46 Eet::Chunk.new("foo\0bar", "data")