3.0.ipv8.test.messaging.test_payload_dataclass

Attributes

Classes

Module Contents

3.0.ipv8.test.messaging.test_payload_dataclass.varlenH
3.0.ipv8.test.messaging.test_payload_dataclass.T
class 3.0.ipv8.test.messaging.test_payload_dataclass.NativeBool(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A single boolean payload.

a: bool
class 3.0.ipv8.test.messaging.test_payload_dataclass.NativeInt(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A single integer payload.

a: int
class 3.0.ipv8.test.messaging.test_payload_dataclass.NativeBytes(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A single bytes payload.

a: bytes
class 3.0.ipv8.test.messaging.test_payload_dataclass.NativeStr(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A single string payload.

a: str
class 3.0.ipv8.test.messaging.test_payload_dataclass.SerializerType(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A Serializer format payload.

a: varlenH
class 3.0.ipv8.test.messaging.test_payload_dataclass.NestedType(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A single nested payload.

a: NativeInt
class 3.0.ipv8.test.messaging.test_payload_dataclass.NestedListType(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A single list of nested payload.

a: list[NativeInt]
class 3.0.ipv8.test.messaging.test_payload_dataclass.ListIntType(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A single list of integers.

a: list[int]
class 3.0.ipv8.test.messaging.test_payload_dataclass.ListBoolType(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A single list of booleans.

a: list[bool]
class 3.0.ipv8.test.messaging.test_payload_dataclass.Unknown(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

To whomever is reading this and wondering why dict is not supported: use a nested payload instead.

a: dict
class 3.0.ipv8.test.messaging.test_payload_dataclass.A(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A payload consisting of two integers.

a: int
b: int
class 3.0.ipv8.test.messaging.test_payload_dataclass.B(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A payload consisting of two integers, of which one has a default value.

a: int
b: int = 3
class 3.0.ipv8.test.messaging.test_payload_dataclass.FwdDataclass(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

A payload to test if the dataclass overwrite forwards its arguments to the “real” dataclass.

a: int
class 3.0.ipv8.test.messaging.test_payload_dataclass.StripMsgId(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

Payload to make sure that the message id is not seen as a field.

a: int
msg_id = 1
names = []
format_list = []
class 3.0.ipv8.test.messaging.test_payload_dataclass.FwdMsgId(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload[1]

Payload that specfies the message id as an argument to the dataclass overwrite.

a: int
class 3.0.ipv8.test.messaging.test_payload_dataclass.EverythingItem(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

An item for the following Everything payload.

a: bool
class 3.0.ipv8.test.messaging.test_payload_dataclass.Everything(*args: Any, **kwargs)

Bases: 3.0.ipv8.messaging.payload_dataclass.DataClassPayload

Dataclass payload that includes all functionality.

a: int
b: bytes
c: varlenH
d: EverythingItem
e: list[EverythingItem]
f: str
g: list[int]
h: list[bool]
class 3.0.ipv8.test.messaging.test_payload_dataclass.TestDataclassPayload(methodName: str = 'runTest')

Bases: 3.0.ipv8.test.base.TestBase

Tests for dataclass-based payloads.

static _pack_and_unpack(payload: type[T], instance: object) T

Serialize and unserialize an instance of payload.

Parameters:
  • payload (type(Payload)) – the payload class to serialize for

  • instance (Payload) – the payload instance to serialize

Returns:

the repacked instance

test_base_unnamed() None

Check if the wrapper returns the payload correctly with unnamed arguments.

test_base_named() None

Check if the wrapper returns the payload correctly with named arguments.

test_pass_default() None

Check if the wrapper forwards default values.

test_pass_default_overwrite() None

Check if the wrapper correctly overwrites default values.

test_nativebool_t_payload() None

Check if unpacked BitPayload(true) works correctly.

test_nativebool_f_payload() None

Check if unpacked BitPayload(false) works correctly.

test_nativeint_negative_payload() None

Check if unpacked NativeInt(-1) works correctly.

test_nativeint_zero_payload() None

Check if unpacked NativeInt(0) works correctly.

test_nativeint_positive_payload() None

Check if unpacked NativeInt(1) works correctly.

test_nativebytes_empty_payload() None

Check if unpacked NativeBytes(b’’) works correctly.

test_nativebytes_filled_payload() None

Check if unpacked NativeBytes(b’hi’) works correctly.

test_nativestr_empty_payload() None

Check if unpacked NativeStr(‘’) works correctly.

test_nativestr_filled_payload() None

Check if unpacked NativeStr(‘hi’) works correctly.

test_serializertype_payload() None

Check if a custom SerializerType (“varlenH”) works correctly.

test_nested_payload() None

Check if a nested payload works correctly.

test_native_intlist_payload() None

Check if a list of native types works correctly.

test_native_boollist_payload() None

Check if a list of native types works correctly.

test_nestedlist_empty_payload() None

Check if an empty list of nested payloads works correctly.

test_nestedlist_filled_payload() None

Check if a list of nested payloads works correctly.

test_unknown_payload() None

Check if an unknown type raises an error.

test_fwd_args() None

Check if dataclass_payload forwards its arguments to dataclass.

We forward eq=False because it’s easy to test.

test_strip_msg_id() None

Check if the msg_id field is identified and stripped.

test_fwd_msg_id() None

Check if the msg_id argument sets the Payload msg_id.

test_everything() None

Check if the wrapper handles all of the different data types together.