MCPcopy
hub / github.com/benoitc/gunicorn / make_uwsgi_packet

Function make_uwsgi_packet

tests/test_uwsgi.py:20–39  ·  view source on GitHub ↗

Create uWSGI packet for testing. Args: vars_dict: Dict of WSGI environ variables modifier1: Packet type (0 = WSGI request) modifier2: Additional flags Returns: bytes: Complete uWSGI packet

(vars_dict, modifier1=0, modifier2=0)

Source from the content-addressed store, hash-verified

18
19
20def make_uwsgi_packet(vars_dict, modifier1=0, modifier2=0):
21 """Create uWSGI packet for testing.
22
23 Args:
24 vars_dict: Dict of WSGI environ variables
25 modifier1: Packet type (0 = WSGI request)
26 modifier2: Additional flags
27
28 Returns:
29 bytes: Complete uWSGI packet
30 """
31 vars_data = b''
32 for key, value in vars_dict.items():
33 k = key.encode('latin-1')
34 v = value.encode('latin-1')
35 vars_data += len(k).to_bytes(2, 'little') + k
36 vars_data += len(v).to_bytes(2, 'little') + v
37
38 header = bytes([modifier1]) + len(vars_data).to_bytes(2, 'little') + bytes([modifier2])
39 return header + vars_data
40
41
42def make_uwsgi_packet_with_body(vars_dict, body=b'', modifier1=0, modifier2=0):

Callers 15

test_empty_varsMethod · 0.85
test_single_varMethod · 0.85
test_multiple_varsMethod · 0.85
test_parse_headersMethod · 0.85
test_https_schemeMethod · 0.85
test_wsgi_url_schemeMethod · 0.85
test_default_valuesMethod · 0.85
test_forbidden_ipMethod · 0.85

Calls 2

itemsMethod · 0.80
encodeMethod · 0.80

Tested by

no test coverage detected