Skip to content

Commit d96f7e0

Browse files
committed
add system_test.
1 parent a400f09 commit d96f7e0

File tree

2 files changed

+25
-12
lines changed

2 files changed

+25
-12
lines changed

system_test/questdb_line_sender.py

+24-11
Original file line numberDiff line numberDiff line change
@@ -98,9 +98,16 @@ class CertificateAuthority(Enum):
9898
c_line_protocol_version = ctypes.c_int
9999

100100

101-
class ProtocolVersion(Enum):
102-
V1 = (c_line_protocol_version(0), 'v1')
103-
V2 = (c_line_protocol_version(1), 'v2')
101+
class LineProtocolVersion(Enum):
102+
V1 = (c_line_protocol_version(1), 'v1')
103+
V2 = (c_line_protocol_version(2), 'v2')
104+
105+
@classmethod
106+
def from_int(cls, value: c_line_protocol_version):
107+
for member in cls:
108+
if member.value[0].value == value:
109+
return member
110+
raise ValueError(f"invalid protocol version: {value}")
104111

105112

106113
class c_line_sender_opts(ctypes.Structure):
@@ -213,6 +220,8 @@ def set_sig(fn, restype, *argtypes):
213220
c_size_t)
214221
set_sig(
215222
dll.line_sender_buffer_set_line_protocol_version,
223+
c_bool,
224+
c_line_sender_buffer_p,
216225
c_line_protocol_version,
217226
c_line_sender_error_p_p)
218227
set_sig(
@@ -594,12 +603,14 @@ def __init__(self, micros: int):
594603

595604

596605
class Buffer:
597-
def __init__(self, init_buf_size=65536, max_name_len=127, line_protocol_version=ProtocolVersion.V2):
606+
def __init__(self, init_buf_size=65536, max_name_len=127, line_protocol_version=LineProtocolVersion.V2):
598607
self._impl = _DLL.line_sender_buffer_with_max_name_len(
599608
c_size_t(max_name_len))
600609
_DLL.line_sender_buffer_reserve(self._impl, c_size_t(init_buf_size))
601610
_error_wrapped_call(
602-
_DLL.line_sender_buffer_set_line_protocol_version(self._impl, line_protocol_version.value[0]))
611+
_DLL.line_sender_buffer_set_line_protocol_version,
612+
self._impl,
613+
line_protocol_version.value[0])
603614

604615
def __len__(self):
605616
return _DLL.line_sender_buffer_size(self._impl)
@@ -617,8 +628,11 @@ def peek(self) -> str:
617628
else:
618629
return ''
619630

620-
def set_line_protocol_version(self, version: ProtocolVersion):
621-
_error_wrapped_call(_DLL.line_sender_buffer_set_line_protocol_version(self._impl, version))
631+
def set_line_protocol_version(self, version: LineProtocolVersion):
632+
_error_wrapped_call(
633+
_DLL.line_sender_buffer_set_line_protocol_version,
634+
self._impl,
635+
version.value[0])
622636

623637
def reserve(self, additional):
624638
_DLL.line_sender_buffer_reserve(self._impl, c_size_t(additional))
@@ -809,7 +823,8 @@ def connect(self):
809823

810824
def __enter__(self):
811825
self.connect()
812-
self._buffer = Buffer(line_protocol_version=self.line_sender_default_line_protocol_version())
826+
self._buffer = Buffer(
827+
line_protocol_version=LineProtocolVersion.from_int(self.line_sender_default_line_protocol_version()))
813828
return self
814829

815830
def _check_connected(self):
@@ -818,9 +833,7 @@ def _check_connected(self):
818833

819834
def line_sender_default_line_protocol_version(self):
820835
self._check_connected()
821-
return _error_wrapped_call(
822-
_DLL.line_sender_default_line_protocol_version,
823-
self._impl)
836+
return _DLL.line_sender_default_line_protocol_version(self._impl)
824837

825838
def table(self, table: str):
826839
self._buffer.table(table)

system_test/test.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -523,7 +523,7 @@ def test_line_protocol_version_v1(self):
523523
table_name = uuid.uuid4().hex
524524
pending = None
525525
with self._mk_linesender() as sender:
526-
sender.buffer.set_line_protocol_version(qls.ProtocolVersion.V1)
526+
sender.buffer.set_line_protocol_version(qls.LineProtocolVersion.V1)
527527
for num in numbers:
528528
sender.table(table_name)
529529
sender.column('n', num)

0 commit comments

Comments
 (0)