Sha256: 053dbbc88aeb52878a824e0ac7b560506998366dbb0851ddcec32544b3d41256

Contents?: true

Size: 911 Bytes

Versions: 5

Compression:

Stored size: 911 Bytes

Contents

#!/usr/bin/env ruby

require File.expand_path(File.join(File.dirname(__FILE__), "test_helper"))

describe BinData::CountBytesRemaining do
  let(:obj) { BinData::CountBytesRemaining.new }

  it "initial state" do
    obj.must_equal 0
    obj.num_bytes.must_equal 0
  end

  it "counts till end of stream" do
    data = "abcdefghij"
    obj.read(data).must_equal 10
  end

  it "does not read any data" do
    io = StringIO.new "abcdefghij"
    obj.read(io)

    io.pos.must_equal 0
  end

  it "does not write any data" do
    obj.to_binary_s.must_equal_binary ""
  end

  it "allows setting value for completeness" do
    obj.assign("123")
    obj.must_equal "123"
    obj.to_binary_s.must_equal_binary ""
  end

  it "accepts BinData::BasePrimitive parameters" do
    count = BinData::CountBytesRemaining.new(:assert => 2)
    lambda {
      count.read("xyz")
    }.must_raise BinData::ValidityError
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
bindata-2.3.3 test/count_bytes_remaining_test.rb
bindata-2.3.2 test/count_bytes_remaining_test.rb
bindata-2.3.1 test/count_bytes_remaining_test.rb
bindata-2.3.0 test/count_bytes_remaining_test.rb
bindata-2.2.0 test/count_bytes_remaining_test.rb