### Question:
LoggingUsageReporter implements UsageReporter { @Override public void cdpDatahubClusterRequested(long timestamp, UsageProto.CDPDatahubClusterRequested details) { checkNotNull(details); log(eventBuilder() .setTimestamp(timestamp) .setCdpDatahubClusterRequested(details) .build()); }  @Override void cdpDatahubClusterRequested(long timestamp, UsageProto.CDPDatahubClusterRequested details); @Override void cdpDatahubClusterStatusChanged(UsageProto.CDPDatahubClusterStatusChanged details); @Override void cdpDatalakeClusterRequested(long timestamp, UsageProto.CDPDatalakeClusterRequested details); @Override void cdpDatalakeClusterStatusChanged(UsageProto.CDPDatalakeClusterStatusChanged details);  }### Answer:
@Test public void cdpDatahubClusterRequested() { long timestamp = System.currentTimeMillis(); UsageProto.CDPDatahubClusterRequested proto = UsageProto.CDPDatahubClusterRequested.newBuilder() .setAccountId(dummy) .setCdpdVersion(dummy) .setClusterId(dummy) .setClusterName(dummy) .setCreatorCrn(dummy) .setDatalakeCrn(dummy) .build(); usageReporter.cdpDatahubClusterRequested(timestamp, proto); ArgumentCaptor<UsageProto.Event> captor = ArgumentCaptor.forClass(UsageProto.Event.class); verify(usageReporter).log(captor.capture()); assertEquals(timestamp, captor.getValue().getTimestamp()); assertEquals(dummy, captor.getValue().getCdpDatahubClusterRequested().getCreatorCrn()); }