/* * Copyright 2013, 2014, 2015 EnergyOS.org * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.energyos.espi.common.domain; import static org.junit.Assert.assertEquals; import javax.xml.bind.JAXBException; import org.energyos.espi.common.utils.EspiMarshaller; import org.junit.Before; import org.junit.Test; public class ElectricPowerUsageSummaryMarshallingTests { static final String XML_INPUT = "<ElectricPowerUsageSummary xmlns=\"http://naesb.org/espi\">" + "<billLastPeriod>1</billLastPeriod>" + "<billToDate>2</billToDate>" + "<costAdditionalLastPeriod>3</costAdditionalLastPeriod>" + "<currency>currency</currency>" + "<qualityOfReading>qualityOfReading</qualityOfReading>" + "<statusTimeStamp>4</statusTimeStamp>" + "<ratchetDemandPeriod>" + "<duration>1119600</duration>" + "<start>1119601</start>" + "</ratchetDemandPeriod>" + "<billingPeriod>" + "<duration>1119602</duration>" + "<start>1119603</start>" + "</billingPeriod>" + "<currentBillingPeriodOverAllConsumption>" + "<powerOfTenMultiplier>PowerOfTenMultiplier</powerOfTenMultiplier>" + "<timeStamp>1331784000</timeStamp>" + "<uom>Uom</uom>" + "<value>93018</value>" + "</currentBillingPeriodOverAllConsumption>" + "<currentDayLastYearNetConsumption>" + "<powerOfTenMultiplier>PowerOfTenMultiplier</powerOfTenMultiplier>" + "<timeStamp>1331784000</timeStamp>" + "<uom>Uom</uom>" + "<value>93018</value>" + "</currentDayLastYearNetConsumption>" + "<currentDayNetConsumption>" + "<powerOfTenMultiplier>PowerOfTenMultiplier</powerOfTenMultiplier>" + "<timeStamp>1331784000</timeStamp>" + "<uom>Uom</uom>" + "<value>93018</value>" + "</currentDayNetConsumption>" + "<currentDayOverallConsumption>" + "<powerOfTenMultiplier>PowerOfTenMultiplier</powerOfTenMultiplier>" + "<timeStamp>1331784000</timeStamp>" + "<uom>Uom</uom>" + "<value>93018</value>" + "</currentDayOverallConsumption>" + "<peakDemand>" + "<powerOfTenMultiplier>PowerOfTenMultiplier</powerOfTenMultiplier>" + "<timeStamp>1331784000</timeStamp>" + "<uom>Uom</uom>" + "<value>93018</value>" + "</peakDemand>" + "<previousDayLastYearOverallConsumption>" + "<powerOfTenMultiplier>PowerOfTenMultiplier</powerOfTenMultiplier>" + "<timeStamp>1331784000</timeStamp>" + "<uom>Uom</uom>" + "<value>93018</value>" + "</previousDayLastYearOverallConsumption>" + "<previousDayNetConsumption>" + "<powerOfTenMultiplier>PowerOfTenMultiplier</powerOfTenMultiplier>" + "<timeStamp>1331784000</timeStamp>" + "<uom>Uom</uom>" + "<value>93018</value>" + "</previousDayNetConsumption>" + "<previousDayOverallConsumption>" + "<powerOfTenMultiplier>PowerOfTenMultiplier</powerOfTenMultiplier>" + "<timeStamp>1331784000</timeStamp>" + "<uom>Uom</uom>" + "<value>93018</value>" + "</previousDayOverallConsumption>" + "<ratchetDemand>" + "<powerOfTenMultiplier>PowerOfTenMultiplier</powerOfTenMultiplier>" + "<timeStamp>1331784000</timeStamp>" + "<uom>Uom</uom>" + "<value>93018</value>" + "</ratchetDemand>" + "</ElectricPowerUsageSummary>"; private ElectricPowerUsageSummary electricPowerUsageSummary; @Before public void before() throws JAXBException { electricPowerUsageSummary = EspiMarshaller .<ElectricPowerUsageSummary> unmarshal(XML_INPUT).getValue(); } @Test public void unmarshalsElectricPowerUsageSummary() { assertEquals(ElectricPowerUsageSummary.class, electricPowerUsageSummary.getClass()); } @Test public void unmarshal_setsBillLastPeriod() { assertEquals(1L, electricPowerUsageSummary.getBillLastPeriod() .longValue()); }; @Test public void unmarshal_setsBillToDate() { assertEquals(2L, electricPowerUsageSummary.getBillToDate().longValue()); }; @Test public void unmarshal_setsCostAdditionalLastPeriod() { assertEquals(3L, electricPowerUsageSummary .getCostAdditionalLastPeriod().longValue()); }; @Test public void unmarshal_setsCurrency() { assertEquals("currency", electricPowerUsageSummary.getCurrency()); }; @Test public void unmarshal_setsQualityOfReading() { assertEquals("qualityOfReading", electricPowerUsageSummary.getQualityOfReading()); }; @Test public void unmarshal_setsStatusTimeStamp() { assertEquals(4L, electricPowerUsageSummary.getStatusTimeStamp()); }; @Test public void unmarshal_setsRatchetDemandPeriod() { assertEquals(1119600L, electricPowerUsageSummary .getRatchetDemandPeriod().getDuration().longValue()); assertEquals(1119601L, electricPowerUsageSummary .getRatchetDemandPeriod().getStart().longValue()); }; @Test public void unmarshal_setsBillingPeriod() { assertEquals(1119602L, electricPowerUsageSummary.getBillingPeriod() .getDuration().longValue()); assertEquals(1119603L, electricPowerUsageSummary.getBillingPeriod() .getStart().longValue()); }; @Test public void unmarshal_setsCurrentBillingPeriodOverAllConsumption() { assertSummaryMeasurement(electricPowerUsageSummary .getCurrentBillingPeriodOverAllConsumption()); }; @Test public void unmarshal_setsCurrentDayLastYearNetConsumption() { assertSummaryMeasurement(electricPowerUsageSummary .getCurrentDayLastYearNetConsumption()); }; @Test public void unmarshal_setsCurrentDayNetConsumption() { assertSummaryMeasurement(electricPowerUsageSummary .getCurrentDayNetConsumption()); }; @Test public void unmarshal_setsCurrentDayOverallConsumption() { assertSummaryMeasurement(electricPowerUsageSummary .getCurrentDayOverallConsumption()); }; @Test public void unmarshal_setsPeakDemand() { assertSummaryMeasurement(electricPowerUsageSummary.getPeakDemand()); }; @Test public void unmarshal_setsPreviousDayLastYearOverallConsumption() { assertSummaryMeasurement(electricPowerUsageSummary .getPreviousDayLastYearOverallConsumption()); }; @Test public void unmarshal_setsPreviousDayNetConsumption() { assertSummaryMeasurement(electricPowerUsageSummary .getPreviousDayNetConsumption()); }; @Test public void unmarshal_setsPreviousDayOverallConsumption() { assertSummaryMeasurement(electricPowerUsageSummary .getPreviousDayOverallConsumption()); }; @Test public void unmarshal_setsRatchetDemand() { assertSummaryMeasurement(electricPowerUsageSummary.getRatchetDemand()); }; private void assertSummaryMeasurement(SummaryMeasurement sm) { assertEquals("PowerOfTenMultiplier", sm.getPowerOfTenMultiplier()); assertEquals(1331784000L, sm.getTimeStamp().longValue()); assertEquals("Uom", sm.getUom()); assertEquals(93018L, sm.getValue().longValue()); } }