Sha256: b7d6397e1599501d8beb3634897466cea9980e21f87abf1643b325fb566d6e0c

Contents?: true

Size: 1001 Bytes

Versions: 2

Compression:

Stored size: 1001 Bytes

Contents

require "test_helper"
require "rack/http_streaming_response"

class HttpStreamingResponseTest < Test::Unit::TestCase

  def setup
    host, req = "www.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

2 entries across 2 versions & 1 rubygems

Version Path
rack-proxy-0.5.1 test/http_streaming_response_test.rb
rack-proxy-0.5.0 test/http_streaming_response_test.rb