def test_del_trace(self): fake = FakeLock() lock = MeteredLock(fake, "test") with patch("corehq.util.datadog.lockmeter.tracer") as tracer: lock.acquire() tracer.reset_mock() lock.__del__() self.assertListEqual(tracer.mock_calls, [ call.trace().set_tag("deleted", "not_released"), call.trace().finish(), ])
def test_acquire_untracked(self): fake = FakeLock() lock = MeteredLock(fake, "test", track_unreleased=False) with patch("corehq.util.datadog.lockmeter.tracer") as tracer: lock.acquire() self.assertListEqual(tracer.mock_calls, [ call.trace("commcare.lock.acquire", resource="key"), call.trace().__enter__(), call.trace().__enter__().set_tags({ "key": "key", "name": "test", "acquired": "true", }), call.trace().__exit__(None, None, None), ])
def test_release_trace(self): fake = FakeLock() lock = MeteredLock(fake, "test") with patch("corehq.util.metrics.lockmeter.tracer") as tracer: lock.acquire() tracer.reset_mock() lock.release() self.assertListEqual(tracer.mock_calls, [call.trace().finish()])