Skip to content

Commit

Permalink
Add specs for CompositeIO operating in binary mode
Browse files Browse the repository at this point in the history
  • Loading branch information
janko authored and ixti committed Jan 30, 2018
1 parent 31eefbc commit 79d5ac0
Showing 1 changed file with 21 additions and 0 deletions.
21 changes: 21 additions & 0 deletions spec/lib/http/form_data/composite_io_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,27 @@
expect(composite_io.read(3, outbuf)).to eq nil
expect(outbuf).to eq ""
end

it "returns data in binary encoding" do
io = HTTP::FormData::CompositeIO.new(%w[Janko Marohnić])

expect(io.read(5).encoding).to eq Encoding::BINARY
expect(io.read(9).encoding).to eq Encoding::BINARY

io.rewind
expect(io.read.encoding).to eq Encoding::BINARY
expect(io.read.encoding).to eq Encoding::BINARY
end

it "reads data in bytes" do
emoji = "😃"
io = HTTP::FormData::CompositeIO.new([emoji])

expect(io.read(1)).to eq emoji.b[0]
expect(io.read(1)).to eq emoji.b[1]
expect(io.read(1)).to eq emoji.b[2]
expect(io.read(1)).to eq emoji.b[3]
end
end

describe "#rewind" do
Expand Down

0 comments on commit 79d5ac0

Please sign in to comment.