|
1 | | -from app.events.metadata import AvroEventMetadata |
| 1 | +from app.infrastructure.kafka.events.metadata import AvroEventMetadata |
2 | 2 |
|
3 | 3 |
|
4 | | -def test_metadata_helpers(): |
5 | | - m = AvroEventMetadata(service_name="s", service_version="1") |
| 4 | +def test_to_dict() -> None: |
| 5 | + m = AvroEventMetadata(service_name="svc", service_version="1.0") |
6 | 6 | d = m.to_dict() |
7 | | - assert d["service_name"] == "s" |
8 | | - m2 = AvroEventMetadata.from_dict({"service_name": "a", "service_version": "2", "user_id": "u"}) |
9 | | - assert m2.user_id == "u" |
10 | | - m3 = m.with_correlation("cid") |
11 | | - assert m3.correlation_id == "cid" |
12 | | - m4 = m.with_user("u2") |
13 | | - assert m4.user_id == "u2" |
14 | | - assert m.ensure_correlation_id().correlation_id |
| 7 | + assert d["service_name"] == "svc" |
| 8 | + assert d["service_version"] == "1.0" |
| 9 | + |
| 10 | + |
| 11 | +def test_from_dict() -> None: |
| 12 | + m = AvroEventMetadata.from_dict({"service_name": "a", "service_version": "2", "user_id": "u"}) |
| 13 | + assert m.service_name == "a" |
| 14 | + assert m.service_version == "2" |
| 15 | + assert m.user_id == "u" |
| 16 | + |
| 17 | + |
| 18 | +def test_with_correlation() -> None: |
| 19 | + m = AvroEventMetadata(service_name="svc", service_version="1") |
| 20 | + m2 = m.with_correlation("cid") |
| 21 | + assert m2.correlation_id == "cid" |
| 22 | + assert m2.service_name == m.service_name # preserves other fields |
15 | 23 |
|
| 24 | + |
| 25 | +def test_with_user() -> None: |
| 26 | + m = AvroEventMetadata(service_name="svc", service_version="1") |
| 27 | + m2 = m.with_user("u1") |
| 28 | + assert m2.user_id == "u1" |
| 29 | + |
| 30 | + |
| 31 | +def test_ensure_correlation_id() -> None: |
| 32 | + m = AvroEventMetadata(service_name="svc", service_version="1") |
| 33 | + # ensure_correlation_id returns self if correlation_id already present |
| 34 | + same = m.ensure_correlation_id() |
| 35 | + assert same.correlation_id == m.correlation_id |
| 36 | + assert m.ensure_correlation_id().correlation_id |
0 commit comments