import pytest import shush def test_muzzle(caplog, logger): @shush.muzzle("foo") def muzzled_func(): logger.info("this contains `foo` so it should be muzzled out") logger.info("this doesn't contain it so it should be showing") muzzled_func() assert caplog.text == ("INFO test_logger:test_muzzle.py:10 " "this doesn't contain it so it should be showing\n") @pytest.mark.anyio() async def test_muzzle_async(caplog, logger): @shush.muzzle("foo") async def muzzled_func(): logger.info("this contains `foo` so it should be muzzled out") logger.info("this doesn't contain it so it should be showing") await muzzled_func() assert caplog.text == ("INFO test_logger:test_muzzle.py:22 " "this doesn't contain it so it should be showing\n")