Skip to content

Commit

Permalink
Merge pull request #68 from rtzll/add-create-methods-to-fm-profile
Browse files Browse the repository at this point in the history
Add create methods to the ClientFirmwareManagementProfile
  • Loading branch information
TVolden authored Jun 28, 2018
2 parents 1debb7e + 5fb949f commit 30e6948
Show file tree
Hide file tree
Showing 2 changed files with 51 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,7 @@ of this software and associated documentation files (the "Software"), to deal
import eu.chargetime.ocpp.feature.*;
import eu.chargetime.ocpp.model.Confirmation;
import eu.chargetime.ocpp.model.Request;
import eu.chargetime.ocpp.model.firmware.GetDiagnosticsRequest;
import eu.chargetime.ocpp.model.firmware.UpdateFirmwareRequest;
import eu.chargetime.ocpp.model.firmware.*;

import java.util.HashSet;
import java.util.UUID;
Expand All @@ -48,6 +47,30 @@ public ClientFirmwareManagementProfile(ClientFirmwareManagementEventHandler even
features.add(new UpdateFirmwareFeature(this));
}

/**
* Create a {@link DiagnosticsStatusNotificationRequest} with required values.
*
* @param status required. Identification of the {@link DiagnosticsStatus}.
* @return an instance of {@link DiagnosticsStatusNotificationRequest}.
* @see DiagnosticsStatusNotificationRequest
* @see DiagnosticsStatusNotificationFeature
*/
public DiagnosticsStatusNotificationRequest createDiagnosticsStatusNotificationRequest(DiagnosticsStatus status) {
return new DiagnosticsStatusNotificationRequest(status);
}

/**
* Create a {@link FirmwareStatusNotificationRequest} with required values.
*
* @param status required. Identification of the {@link FirmwareStatus}.
* @return an instance of {@link FirmwareStatusNotificationRequest}.
* @see FirmwareStatusNotificationRequest
* @see FirmwareStatusNotificationFeature
*/
public FirmwareStatusNotificationRequest createFirmwareStatusNotificationRequest(FirmwareStatus status) {
return new FirmwareStatusNotificationRequest(status);
}

@Override
public Feature[] getFeatureList() {
return features.toArray(new Feature[0]);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,7 @@ of this software and associated documentation files (the "Software"), to deal
import eu.chargetime.ocpp.feature.*;
import eu.chargetime.ocpp.feature.profile.ClientFirmwareManagementEventHandler;
import eu.chargetime.ocpp.feature.profile.ClientFirmwareManagementProfile;
import eu.chargetime.ocpp.model.firmware.GetDiagnosticsRequest;
import eu.chargetime.ocpp.model.firmware.UpdateFirmwareRequest;
import eu.chargetime.ocpp.model.firmware.*;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
Expand Down Expand Up @@ -118,4 +117,28 @@ public void handleRequest_aUpdateFirmwareRequest_callsHandleUpdateFirmwareReques
verify(handler, times(1)).handleUpdateFirmwareRequest(eq(request));
}

}
@Test
public void createDiagnosticsStatusNotificationRequest_withStatus_returnsDiagnosticsStatusNotificationRequestWithStatus() {
// Given
DiagnosticsStatus status = DiagnosticsStatus.Idle;

// When
DiagnosticsStatusNotificationRequest result = profile.createDiagnosticsStatusNotificationRequest(status);

// Then
assertThat(result.getStatus(), is(status));
}

@Test
public void createFirmwareStatusNotificationRequest_withStatus_returnsFirmwareStatusNotificationRequestWithStatus() {
// Given
FirmwareStatus status = FirmwareStatus.Idle;

// When
FirmwareStatusNotificationRequest result = profile.createFirmwareStatusNotificationRequest(status);

// Then
assertThat(result.getStatus(), is(status));
}

}

0 comments on commit 30e6948

Please sign in to comment.