def test_critical_constants(self): """ ATTENTION: Changing of those constants may require changing of C++ code""" assert Header.length == 32 assert Header.State.FAILURE == "FAILURE" assert Header.State.SUCCESS == "SUCCESS" assert Header.State.WAITING == "WAITING" assert Header.default_protocol_name() == "fetch"
def test_neq(self): header = Header("name", Header.State.SUCCESS, "crit", 42) other_name = header.clone() other_name.name = "toto" assert header != other_name other_state = header.clone() other_state.state = Header.State.FAILURE assert header != other_state other_crit = header.clone() other_crit.severity = "tnih" assert header != other_crit other_len = header.clone() other_len.payload_length = 69 assert header != other_len
def test_from_network(self): header = Header("fetch", "SUCCESS", "crit", 42) assert Header.from_network(bytes(header) + 42 * b"*") == header
def test_failure_header(self, state): header = Header("fetch", state, "crit", 42) assert bytes(header) == b"fetch:FAILURE:crit :42 :"
def test_success_header(self, state): header = Header("name", state, "crit", 41) assert bytes(header) == b"name :SUCCESS:crit :41 :"
def test_len(self): header = Header("name", "SUCCESS", "crit", 42) assert len(header) == len(bytes(header))
def test_hash(self): header = Header("name", "SUCCESS", "crit", 42) assert hash(header) == hash(bytes(header))
def test_repr(self): header = Header("name", "SUCCESS", "crit", 42) assert isinstance(repr(header), str)
def test_eq(self): header = Header("name", Header.State.SUCCESS, "crit", 42) assert header == bytes(header) assert bytes(header) == header
def test_len(self): header = Header("name", "SUCCESS", "hint", 42) assert len(header) == len(str(header))
def test_clone(self): header = Header("name", Header.State.SUCCESS, "crit", 42) other = header.clone() assert other is not header assert other == header
def test_hash(self): header = Header("name", "SUCCESS", "hint", 42) assert hash(header) == hash(str(header))
def test_eq(self): header = Header("name", Header.State.SUCCESS, "hint", 42) assert header == str(header) assert str(header) == header
def test_from_network(self): header = Header("fetch", "SUCCESS", "hint", 42) assert Header.from_network(str(header) + 42 * "*") == header
def test_failure_header(self, state): header = Header("fetch", state, "hint", 42) assert str(header) == "fetch:FAILURE:hint :42 :"
def test_success_header(self, state): header = Header("name", state, "hint", 41) assert str(header) == "name :SUCCESS:hint :41 :"