4 class ChunkTest < Test::Unit::TestCase
6 @data = Eet::Chunk.new("tag", "foo\0bar\0baz").to_s
10 assert_equal("CHnK\017\0\0\0tag\0foo\0bar\0baz", @data)
16 assert_nothing_raised do
17 chunk, = Eet::Chunk.deserialize(@data)
20 assert_equal("tag", chunk.tag)
21 assert_equal("foo\0bar\0baz", chunk.data)
24 def test_deserialize_invalid
25 assert_raise(Eet::ChunkError) do
26 Eet::Chunk.deserialize("foobar" << "\377" * 4 << "tagdata")
29 assert_raise(Eet::ChunkError) do
30 Eet::Chunk.deserialize("CHnK" << "\377" * 4 << "tagdata")
33 assert_raise(Eet::ChunkError) do
34 Eet::Chunk.deserialize("CHnK\010\0\0\0tag0data")
37 assert_nothing_raised do
38 Eet::Chunk.deserialize("CHnK\10\0\0\0tag\0data")
42 def test_catch_invalid_tag
43 assert_raise(ArgumentError) do
44 Eet::Chunk.new("foo\0bar", "data")