Methods
D
S
T
Class Public methods
default_headers()
# File actionpack/test/dispatch/live_response_test.rb, line 20
def self.default_headers
  { 'omg' => 'g' }
end
Instance Public methods
setup()
# File actionpack/test/dispatch/live_response_test.rb, line 7
def setup
  @response = Live::Response.new
  @response.request = ActionDispatch::Request.empty
end
test_cache_control_is_set()
# File actionpack/test/dispatch/live_response_test.rb, line 52
def test_cache_control_is_set
  @response.stream.write 'omg'
  assert_equal 'no-cache', @response.headers['Cache-Control']
end
test_content_length_is_removed()
# File actionpack/test/dispatch/live_response_test.rb, line 57
def test_content_length_is_removed
  @response.headers['Content-Length'] = "1234"
  @response.stream.write 'omg'
  assert_nil @response.headers['Content-Length']
end
test_header_merge()
# File actionpack/test/dispatch/live_response_test.rb, line 12
def test_header_merge
  header = @response.header.merge('Foo' => 'Bar')
  assert_kind_of(ActionController::Live::Response::Header, header)
  assert_not_equal header, @response.header
end
test_headers_cannot_be_written_after_close()
# File actionpack/test/dispatch/live_response_test.rb, line 84
def test_headers_cannot_be_written_after_close
  @response.stream.close
  # we can add data until it's actually written, which happens on `each`
  @response.each { |x| }

  e = assert_raises(ActionDispatch::IllegalStateError) do
    @response.headers['Content-Length'] = "zomg"
  end
  assert_equal 'header already sent', e.message
end
test_headers_cannot_be_written_after_webserver_reads()
# File actionpack/test/dispatch/live_response_test.rb, line 63
def test_headers_cannot_be_written_after_webserver_reads
  @response.stream.write 'omg'
  latch = Concurrent::CountDownLatch.new

  t = Thread.new {
    @response.each do
      latch.count_down
    end
  }

  latch.wait
  assert @response.headers.frozen?
  e = assert_raises(ActionDispatch::IllegalStateError) do
    @response.headers['Content-Length'] = "zomg"
  end

  assert_equal 'header already sent', e.message
  @response.stream.close
  t.join
end
test_initialize_with_default_headers()
# File actionpack/test/dispatch/live_response_test.rb, line 18
def test_initialize_with_default_headers
  r = Class.new(Live::Response) do
    def self.default_headers
      { 'omg' => 'g' }
    end
  end

  header = r.new.header
  assert_kind_of(ActionController::Live::Response::Header, header)
end
test_parallel()
# File actionpack/test/dispatch/live_response_test.rb, line 29
def test_parallel
  latch = Concurrent::CountDownLatch.new

  t = Thread.new {
    @response.stream.write 'foo'
    latch.wait
    @response.stream.close
  }

  @response.await_commit
  @response.each do |part|
    assert_equal 'foo', part
    latch.count_down
  end
  assert t.join
end
test_setting_body_populates_buffer()
# File actionpack/test/dispatch/live_response_test.rb, line 46
def test_setting_body_populates_buffer
  @response.body = 'omg'
  @response.close
  assert_equal ['omg'], @response.body_parts
end