Sha256: 1cf456aaa005be18255895895fdd7e6b1d4970a182e13a5bdc8b5693f2b3404f
Contents?: true
Size: 1.08 KB
Versions: 2
Compression:
Stored size: 1.08 KB
Contents
# encoding: UTF-8 require 'spec_helper' describe JsonWriteStream::YieldingWriter do let(:stream) do StringIO.new.tap do |io| io.set_encoding(Encoding::UTF_8) end end let(:stream_writer) { JsonWriteStream::YieldingWriter.new(stream) } def check_roundtrip(obj) YieldingRoundtripChecker.check_roundtrip(obj) end def utf8(str) str.encode(Encoding::UTF_8) end it_behaves_like 'a json stream' describe '#write_key_value' do it 'converts all keys to strings' do stream_writer.write_object do |object_writer| object_writer.write_key_value(123, 'abc') end expect(stream.string).to eq(utf8('{"123":"abc"}')) end it 'supports non-string values' do stream_writer.write_object do |object_writer| object_writer.write_key_value('abc', 123) object_writer.write_key_value('def', true) end expect(stream.string).to eq(utf8('{"abc":123,"def":true}')) end end describe '#close' do it 'closes the underlying stream' do stream_writer.close expect(stream).to be_closed end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
json-write-stream-1.1.0 | spec/yielding_spec.rb |
json-write-stream-1.0.2 | spec/yielding_spec.rb |