@Test
public void testLazyArgs() {

  FakeLoggerBackend backend = new FakeLoggerBackend();
  FluentLogger logger = new FluentLogger(backend);
  logger.atInfo().log("Hello %s", LazyArgs.lazy(() -> "World"));
  logger.atFine().log(
      "Hello %s",
      LazyArgs.lazy(
          () -> {
            throw new RuntimeException(
                "Lazy arguments should not be evaluated in a disabled log statement");
          }));
  // By the time the backend processes a log statement, lazy arguments have been evaluated.
  backend.assertLastLogged().hasMessage("Hello %s");
  backend.assertLastLogged().hasArguments("World");
}