Skip to content
This repository was archived by the owner on Jan 13, 2021. It is now read-only.

Commit 41756e7

Browse files
committed
Add insecure http20 integration test
1 parent 9ef46f1 commit 41756e7

File tree

2 files changed

+42
-0
lines changed

2 files changed

+42
-0
lines changed

test/test_integration.py

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -452,6 +452,47 @@ def socket_handler(listener):
452452

453453
self.tear_down()
454454

455+
def test_insecure_connection(self):
456+
self.set_up()
457+
self.insecure = False
458+
459+
data = []
460+
send_event = threading.Event()
461+
462+
def socket_handler(listener):
463+
sock = listener.accept()[0]
464+
465+
receive_preamble(sock)
466+
467+
data.append(sock.recv(65535))
468+
send_event.wait()
469+
470+
h = HeadersFrame(1)
471+
h.data = self.get_encoder().encode({':status': 200, 'Content-Type': 'not/real', 'Content-Length': 14, 'Server': 'socket-level-server'})
472+
h.flags.add('END_HEADERS')
473+
sock.send(h.serialize())
474+
475+
d = DataFrame(1)
476+
d.data = b'nsaislistening'
477+
d.flags.add('END_STREAM')
478+
sock.send(d.serialize())
479+
480+
sock.close()
481+
482+
self._start_server(socket_handler)
483+
c = self.get_connection()
484+
c.request('GET', '/')
485+
send_event.set()
486+
r = c.get_response()
487+
488+
assert r.status == 200
489+
assert len(r.headers) == 3
490+
assert r.headers[b'server'] == [b'socket-level-server']
491+
assert r.headers[b'content-length'] == [b'14']
492+
assert r.headers[b'content-type'] == [b'not/real']
493+
494+
assert r.read() == b'nsaislistening'
495+
assert c._sock is None
455496

456497
class TestRequestsAdapter(SocketLevelTest):
457498
# This uses HTTP/2.

test/test_integration_http11.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"""
99
import hyper
1010
import threading
11+
import pytest
1112

1213
from hyper.compat import ssl
1314
from server import SocketLevelTest

0 commit comments

Comments
 (0)