def run(num_waits = 10, &block)
result = nil
super(num_waits) {
block.call if block
es = ArrayEventStream.new(@entries)
buffer = @instance.format_stream(@tag, es)
if @expected_buffer
assert_equal(@expected_buffer, buffer)
end
chunk = if @instance.instance_eval{ @chunk_key_tag }
@instance.buffer.generate_chunk(@instance.metadata(@tag, nil, nil)).staged!
else
@instance.buffer.generate_chunk(@instance.metadata(nil, nil, nil)).staged!
end
chunk.concat(buffer, es.size)
begin
result = @instance.write(chunk)
ensure
chunk.purge
end
}
result
end