use of jooq.steve.db.tables.records.TransactionRecord in project EVSUPERVISION by EnergyTIC.
the class OperationalTestSoapOCPP16 method testBody.
private void testBody(List<MeterValue> meterValues, List<MeterValue> transactionData) {
final int usedConnectorID = 1;
CentralSystemService client = getForOcpp16(path);
initStationWithBootNotification(client);
initConnectorsWithStatusNotification(client);
// heartbeat
HeartbeatResponse heartbeat = client.heartbeat(new HeartbeatRequest(), REGISTERED_CHARGE_BOX_ID);
Assertions.assertNotNull(heartbeat);
// Auth
AuthorizeResponse auth = client.authorize(new AuthorizeRequest().withIdTag(REGISTERED_OCPP_TAG), REGISTERED_CHARGE_BOX_ID);
// Simple request, not much done here
Assertions.assertNotNull(auth);
Assertions.assertEquals(AuthorizationStatus.ACCEPTED, auth.getIdTagInfo().getStatus());
// startTransaction
DateTime startTimeStamp = DateTime.now();
StartTransactionResponse start = client.startTransaction(new StartTransactionRequest().withConnectorId(usedConnectorID).withIdTag(REGISTERED_OCPP_TAG).withTimestamp(startTimeStamp).withMeterStart(0), REGISTERED_CHARGE_BOX_ID);
Assertions.assertNotNull(start);
int transactionID = start.getTransactionId();
List<TransactionRecord> allTransactions = __DatabasePreparer__.getTransactionRecords();
Assertions.assertEquals(1, allTransactions.size());
{
TransactionRecord t = allTransactions.get(0);
Assertions.assertEquals(startTimeStamp, t.getStartTimestamp());
Assertions.assertEquals(0, Integer.parseInt(t.getStartValue()));
Assertions.assertNull(t.getStopTimestamp());
Assertions.assertNull(t.getStopReason());
Assertions.assertNull(t.getStopValue());
}
// status
StatusNotificationResponse statusStart = client.statusNotification(new StatusNotificationRequest().withStatus(ChargePointStatus.CHARGING).withErrorCode(ChargePointErrorCode.NO_ERROR).withConnectorId(0).withTimestamp(DateTime.now()), REGISTERED_CHARGE_BOX_ID);
Assertions.assertNotNull(statusStart);
// send meterValues
if (meterValues != null) {
MeterValuesResponse meter = client.meterValues(new MeterValuesRequest().withConnectorId(usedConnectorID).withTransactionId(transactionID).withMeterValue(meterValues), REGISTERED_CHARGE_BOX_ID);
Assertions.assertNotNull(meter);
checkMeterValues(meterValues, transactionID);
}
// stopTransaction
DateTime stopTimeStamp = DateTime.now();
int stopValue = 30;
StopTransactionResponse stop = client.stopTransaction(new StopTransactionRequest().withTransactionId(transactionID).withTransactionData(transactionData).withTimestamp(stopTimeStamp).withIdTag(REGISTERED_OCPP_TAG).withMeterStop(stopValue), REGISTERED_CHARGE_BOX_ID);
{
Assertions.assertNotNull(stop);
List<TransactionRecord> transactionsStop = __DatabasePreparer__.getTransactionRecords();
Assertions.assertEquals(1, transactionsStop.size());
TransactionRecord t = transactionsStop.get(0);
Assertions.assertEquals(stopTimeStamp, t.getStopTimestamp());
Assertions.assertEquals(stopValue, Integer.parseInt(t.getStopValue()));
if (transactionData != null) {
checkMeterValues(transactionData, transactionID);
}
}
// status
StatusNotificationResponse statusStop = client.statusNotification(new StatusNotificationRequest().withStatus(ChargePointStatus.AVAILABLE).withErrorCode(ChargePointErrorCode.NO_ERROR).withConnectorId(usedConnectorID).withTimestamp(DateTime.now()), REGISTERED_CHARGE_BOX_ID);
Assertions.assertNotNull(statusStop);
}
use of jooq.steve.db.tables.records.TransactionRecord in project steve by RWTH-i5-IDSG.
the class OperationalTestSoapOCPP16 method testBody.
private void testBody(List<MeterValue> meterValues, List<MeterValue> transactionData) {
final int usedConnectorID = 1;
CentralSystemService client = getForOcpp16(path);
initStationWithBootNotification(client);
initConnectorsWithStatusNotification(client);
// heartbeat
HeartbeatResponse heartbeat = client.heartbeat(new HeartbeatRequest(), REGISTERED_CHARGE_BOX_ID);
Assertions.assertNotNull(heartbeat);
// Auth
AuthorizeResponse auth = client.authorize(new AuthorizeRequest().withIdTag(REGISTERED_OCPP_TAG), REGISTERED_CHARGE_BOX_ID);
// Simple request, not much done here
Assertions.assertNotNull(auth);
Assertions.assertEquals(AuthorizationStatus.ACCEPTED, auth.getIdTagInfo().getStatus());
// startTransaction
DateTime startTimeStamp = DateTime.now();
StartTransactionResponse start = client.startTransaction(new StartTransactionRequest().withConnectorId(usedConnectorID).withIdTag(REGISTERED_OCPP_TAG).withTimestamp(startTimeStamp).withMeterStart(0), REGISTERED_CHARGE_BOX_ID);
Assertions.assertNotNull(start);
int transactionID = start.getTransactionId();
List<TransactionRecord> allTransactions = __DatabasePreparer__.getTransactionRecords();
Assertions.assertEquals(1, allTransactions.size());
{
TransactionRecord t = allTransactions.get(0);
Assertions.assertEquals(startTimeStamp, t.getStartTimestamp());
Assertions.assertEquals(0, Integer.parseInt(t.getStartValue()));
Assertions.assertNull(t.getStopTimestamp());
Assertions.assertNull(t.getStopReason());
Assertions.assertNull(t.getStopValue());
}
// status
StatusNotificationResponse statusStart = client.statusNotification(new StatusNotificationRequest().withStatus(ChargePointStatus.CHARGING).withErrorCode(ChargePointErrorCode.NO_ERROR).withConnectorId(0).withTimestamp(DateTime.now()), REGISTERED_CHARGE_BOX_ID);
Assertions.assertNotNull(statusStart);
// send meterValues
if (meterValues != null) {
MeterValuesResponse meter = client.meterValues(new MeterValuesRequest().withConnectorId(usedConnectorID).withTransactionId(transactionID).withMeterValue(meterValues), REGISTERED_CHARGE_BOX_ID);
Assertions.assertNotNull(meter);
checkMeterValues(meterValues, transactionID);
}
// stopTransaction
DateTime stopTimeStamp = DateTime.now();
int stopValue = 30;
StopTransactionResponse stop = client.stopTransaction(new StopTransactionRequest().withTransactionId(transactionID).withTransactionData(transactionData).withTimestamp(stopTimeStamp).withIdTag(REGISTERED_OCPP_TAG).withMeterStop(stopValue), REGISTERED_CHARGE_BOX_ID);
{
Assertions.assertNotNull(stop);
List<TransactionRecord> transactionsStop = __DatabasePreparer__.getTransactionRecords();
Assertions.assertEquals(1, transactionsStop.size());
TransactionRecord t = transactionsStop.get(0);
Assertions.assertEquals(stopTimeStamp, t.getStopTimestamp());
Assertions.assertEquals(stopValue, Integer.parseInt(t.getStopValue()));
if (transactionData != null) {
checkMeterValues(transactionData, transactionID);
}
}
// status
StatusNotificationResponse statusStop = client.statusNotification(new StatusNotificationRequest().withStatus(ChargePointStatus.AVAILABLE).withErrorCode(ChargePointErrorCode.NO_ERROR).withConnectorId(usedConnectorID).withTimestamp(DateTime.now()), REGISTERED_CHARGE_BOX_ID);
Assertions.assertNotNull(statusStop);
}
Aggregations