def test_ChunkedTransferEncodingStreamWriter_close_sends_empty_message(): with mock.patch('girder_worker.docker.io.httplib.HTTPConnection', autospec=True): s = ChunkedTransferEncodingStreamWriter('http://bogus.url.com/') with mock.patch.object(s.conn, 'getresponse', return_value=mock.MagicMock(status=200)): s.close() s.conn.send.assert_called_once_with(b'0\r\n\r\n') s.conn.close.assert_called_once()
def test_ChunkedTransferEncodingStreamWriter_close_raises_exceptions_on_bad_http_codes(ec): with mock.patch('girder_worker.docker.io.httplib.HTTPConnection', autospec=True): s = ChunkedTransferEncodingStreamWriter('http://bogus.url.com/') with mock.patch.object(s.conn, 'getresponse', return_value=mock.MagicMock(status=ec)): with pytest.raises(Exception): s.close() s.conn.close.assert_called_once()
def test_ChunkedTransferEncodingStreamWriter_close_returns_if_already_closed(): with mock.patch('girder_worker.docker.io.httplib.HTTPConnection', autospec=True): s = ChunkedTransferEncodingStreamWriter('http://bogus.url.com/') s._closed = True s.close() # Nothing was sent s.conn.send.assert_not_called()