async def test_rate_limiter_run(config, mocker): """Test the RateLimiter does the work the rate_limiter should do.""" logger_mock = mocker.MagicMock() p = RateLimiter(config, logger_mock) p._do_work = AsyncMock() await p.run() p._do_work.assert_called()
async def test_rate_limiter_run_exception(config, mocker): """Test an error doesn't kill the RateLimiter.""" logger_mock = mocker.MagicMock() p = RateLimiter(config, logger_mock) p.last_work_end_timestamp = None p._do_work = AsyncMock() p._do_work.side_effect = [Exception("bad thing happen!")] await p.run() p._do_work.assert_called() assert p.last_work_end_timestamp