diff options
author | Heikki Nousiainen <htn@aiven.io> | 2018-08-29 17:02:48 +0300 |
---|---|---|
committer | Jeff Widman <jeff@jeffwidman.com> | 2018-09-27 15:22:03 -0700 |
commit | 9d30ab8bdbbd7e722ba4a96a6883a965d577d3cc (patch) | |
tree | 539e33eb423ae44d29bf09018a628148e40f8d73 | |
parent | 5825c67cf9b90c9e8045fcfc064c562a2888725c (diff) | |
download | kafka-python-9d30ab8bdbbd7e722ba4a96a6883a965d577d3cc.tar.gz |
Add positive tests for headers in record encode/decode
-rw-r--r-- | test/record/test_default_records.py | 6 | ||||
-rw-r--r-- | test/record/test_records.py | 15 |
2 files changed, 18 insertions, 3 deletions
diff --git a/test/record/test_default_records.py b/test/record/test_default_records.py index 6e2f5e8..c3a7b02 100644 --- a/test/record/test_default_records.py +++ b/test/record/test_default_records.py @@ -119,8 +119,12 @@ def test_default_batch_builder_validates_arguments(): builder.append( 5, timestamp=9999999, key=b"123", value=None, headers=[]) + # Check record with headers + builder.append( + 6, timestamp=9999999, key=b"234", value=None, headers=[("hkey", b"hval")]) + # in case error handling code fails to fix inner buffer in builder - assert len(builder.build()) == 104 + assert len(builder.build()) == 124 def test_default_correct_metadata_response(): diff --git a/test/record/test_records.py b/test/record/test_records.py index 224989f..f1b8baa 100644 --- a/test/record/test_records.py +++ b/test/record/test_records.py @@ -22,6 +22,11 @@ record_batch_data_v2 = [ b'\x85\xb7\x00\x00\x00\x00\x00\x00\x00\x00\x01]\xff|\xe7\x9d\x00\x00\x01]' b'\xff|\xe7\x9d\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff' b'\x00\x00\x00\x01\x12\x00\x00\x00\x01\x06123\x00' + # Fourth batch value = "hdr" with header hkey=hval + b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00E\x00\x00\x00\x00\x02\\' + b'\xd8\xefR\x00\x00\x00\x00\x00\x00\x00\x00\x01e\x85\xb6\xf3\xc1\x00\x00' + b'\x01e\x85\xb6\xf3\xc1\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff' + b'\xff\xff\x00\x00\x00\x01&\x00\x00\x00\x01\x06hdr\x02\x08hkey\x08hval' ] record_batch_data_v1 = [ @@ -60,8 +65,8 @@ def test_memory_records_v2(): data_bytes = b"".join(record_batch_data_v2) + b"\x00" * 4 records = MemoryRecords(data_bytes) - assert records.size_in_bytes() == 222 - assert records.valid_bytes() == 218 + assert records.size_in_bytes() == 303 + assert records.valid_bytes() == 299 assert records.has_next() is True batch = records.next_batch() @@ -77,6 +82,12 @@ def test_memory_records_v2(): assert records.next_batch() is not None assert records.next_batch() is not None + batch = records.next_batch() + recs = list(batch) + assert len(recs) == 1 + assert recs[0].value == b"hdr" + assert recs[0].headers == [('hkey', b'hval')] + assert records.has_next() is False assert records.next_batch() is None assert records.next_batch() is None |