Sha256: 39470a7b393c2b6ac8c17db79e67146ef8d1426b2f8273eed3ad28bb087674fa
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
# encoding: utf-8 require 'spec_helper' describe 'Request body streaming', reactor: true do include_context :server_client_pair let(:chunks) { [] } before do client.perform(request).sync Fiber.new do intercepted_requests[0].body.each do |chunk| chunks << chunk end end.resume end let(:request) { open_request } subject! do %w[foo bar baz].each do |chunk| request.body.write(chunk) tick end request.close tick end it 'progressively sends the body' do expect(intercepted_requests[0].headers) .to include('Transfer-Encoding' => 'chunked') expect(chunks).to eq(%w[foo bar baz]) end end describe 'Response body streaming', reactor: true do include_context :server_client_pair let(:chunks) { [] } let(:response) { client.request(:get, '/streaming') } subject! { response } before do response.body.each do |chunk| chunks << chunk end end it 'progressively receives the body' do expect(chunks).to eq(%w[foo bar baz]) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
httpkit-0.6.0 | spec/integration/streaming_spec.rb |
httpkit-0.6.0.pre.5 | spec/integration/streaming_spec.rb |