from opengoods.etl.state import get_watermark, set_watermark def test_watermark_roundtrip_and_monotonic(db_conn): src = "test-source" assert get_watermark(db_conn, src) == 0 set_watermark(db_conn, src, 100, stats={"loaded": 1}) assert get_watermark(db_conn, src) == 100 # A lower watermark must not rewind progress. set_watermark(db_conn, src, 50) assert get_watermark(db_conn, src) == 100 set_watermark(db_conn, src, 150) assert get_watermark(db_conn, src) == 150