### Question:
MotownCentralSystemService implements io.motown.ocpp.v15.soap.centralsystem.schema.CentralSystemService { @Override public DiagnosticsStatusNotificationResponse diagnosticsStatusNotification(DiagnosticsStatusNotificationRequest request, String chargeBoxIdentity) { ChargingStationId chargingStationId = new ChargingStationId(chargeBoxIdentity); DiagnosticsStatus diagnosticsStatus = request.getStatus(); domainService.diagnosticsUploadStatusUpdate(chargingStationId, DiagnosticsStatus.UPLOADED.equals(diagnosticsStatus), addOnIdentity); return new DiagnosticsStatusNotificationResponse(); }  @Override DataTransferResponse dataTransfer(final DataTransferRequest request, final String chargeBoxIdentity); @Override StatusNotificationResponse statusNotification(StatusNotificationRequest request, String chargeBoxIdentity); @Override StopTransactionResponse stopTransaction(StopTransactionRequest request, String chargeBoxIdentity); @Override BootNotificationResponse bootNotification(BootNotificationRequest request, String chargeBoxIdentity); @Override HeartbeatResponse heartbeat(HeartbeatRequest parameters, String chargeBoxIdentity); @Override MeterValuesResponse meterValues(MeterValuesRequest request, String chargeBoxIdentity); @Override DiagnosticsStatusNotificationResponse diagnosticsStatusNotification(DiagnosticsStatusNotificationRequest request, String chargeBoxIdentity); @Override AuthorizeResponse authorize(final AuthorizeRequest request, final String chargeBoxIdentity); @Override FirmwareStatusNotificationResponse firmwareStatusNotification(FirmwareStatusNotificationRequest request, String chargeBoxIdentity); @Override StartTransactionResponse startTransaction(final StartTransactionRequest parameters, final String chargeBoxIdentity); void setDomainService(DomainService domainService); void setContext(WebServiceContext context); void setContinuationTimeout(int continuationTimeout); void setHeartbeatIntervalFallback(int heartbeatIntervalFallback); void setSoapHeaderReader(SoapHeaderReader soapHeaderReader); void setAddOnId(String id); static final String ADD_ON_TYPE; }### Answer:
@Test public void diagnosticsStatusNotificationVerifyResponse() { DiagnosticsStatusNotificationRequest request = new DiagnosticsStatusNotificationRequest(); DiagnosticsStatusNotificationResponse response = motownCentralSystemService.diagnosticsStatusNotification(request, CHARGING_STATION_ID.getId()); assertNotNull(response); }
@Test public void diagnosticsStatusNotificationUploadedVerifyServiceCall() { DiagnosticsStatusNotificationRequest request = new DiagnosticsStatusNotificationRequest(); request.setStatus(DiagnosticsStatus.UPLOADED); motownCentralSystemService.diagnosticsStatusNotification(request, CHARGING_STATION_ID.getId()); verify(domainService).diagnosticsUploadStatusUpdate(CHARGING_STATION_ID, true, OCPPS15_ADD_ON_IDENTITY); }
@Test public void diagnosticsStatusNotificationUploadFailedVerifyServiceCall() { DiagnosticsStatusNotificationRequest request = new DiagnosticsStatusNotificationRequest(); request.setStatus(DiagnosticsStatus.UPLOAD_FAILED); motownCentralSystemService.diagnosticsStatusNotification(request, CHARGING_STATION_ID.getId()); verify(domainService).diagnosticsUploadStatusUpdate(CHARGING_STATION_ID, false, OCPPS15_ADD_ON_IDENTITY); }