Fix frozen delta watermark and add error stats, lazy source, concurrent disk reads, and per-engine config
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
from loguru import logger
|
||||
|
||||
import sqlmem
|
||||
|
||||
|
||||
def test_add_sink_idempotent_no_duplicate_lines():
|
||||
"""Calling add_sink twice for the same sink must not duplicate log lines."""
|
||||
sqlmem._added_sinks.clear()
|
||||
msgs: list[str] = []
|
||||
sink = lambda message: msgs.append(str(message)) # noqa: E731
|
||||
|
||||
try:
|
||||
sqlmem.add_sink(sink, level="DEBUG", colorize=False)
|
||||
sqlmem.add_sink(sink, level="DEBUG", colorize=False) # second call: no-op
|
||||
assert len(sqlmem._added_sinks) == 1
|
||||
|
||||
# Emit one record that passes the "sqlmem" name filter.
|
||||
logger.patch(lambda r: r.update(name="sqlmem")).info("hello sqlmem")
|
||||
assert sum("hello sqlmem" in m for m in msgs) == 1
|
||||
finally:
|
||||
for handler_id in sqlmem._added_sinks.values():
|
||||
logger.remove(handler_id)
|
||||
sqlmem._added_sinks.clear()
|
||||
logger.disable("sqlmem") # restore the default-silent state for other tests
|
||||
Reference in New Issue
Block a user