Sha256: 516d30cdfe4462fd755e4352b9ad5074a75d4ac3346c0284ce36bbbd49044513

Contents?: true

Size: 997 Bytes

Versions: 1

Compression:

Stored size: 997 Bytes

Contents

require "test_helper"
require "rack/http_streaming_response"

class HttpStreamingResponseTest < Test::Unit::TestCase

  def setup
    host, req = "trix.pl", Net::HTTP::Get.new("/")
    @response = Rack::HttpStreamingResponse.new(req, host)
  end

  def test_streaming
    # Response status
    assert @response.status == 200

    # Headers
    headers = @response.headers

    assert headers.size > 0

    assert headers["content-type"] == ["text/html;charset=utf-8"]
    assert headers["CoNtEnT-TyPe"] == headers["content-type"]
    assert headers["content-length"].first.to_i > 0

    # Body
    chunks = []
    @response.body.each do |chunk|
      chunks << chunk
    end

    assert chunks.size > 0
    chunks.each do |chunk|
      assert chunk.is_a?(String)
    end


  end

  def test_to_s
    assert_equal @response.headers["Content-Length"].first.to_i, @response.body.to_s.size
  end

  def test_to_s_called_twice
    body = @response.body
    assert_equal body.to_s, body.to_s
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rack-proxy-0.4.0 test/http_streaming_response_test.rb