public void ShouldCalculateCostForMeterReadingsForEveryPricePlan() { var electricityReading = new ElectricityReading() { Time = DateTime.Now.AddHours(-1), Reading = 15.0m }; var otherReading = new ElectricityReading() { Time = DateTime.Now, Reading = 5.0m }; meterReadingService.StoreReadings(SMART_METER_ID, new List <ElectricityReading>() { electricityReading, otherReading }); var result = controller.CalculatedCostForEachPricePlan(SMART_METER_ID).Value; var actualCosts = ((JObject)result).ToObject <Dictionary <string, decimal> >(); Assert.Equal(3, actualCosts.Count); Assert.Equal(100m, actualCosts["" + Supplier.DrEvilsDarkEnergy], 3); Assert.Equal(20m, actualCosts["" + Supplier.TheGreenEco], 3); Assert.Equal(10m, actualCosts["" + Supplier.PowerForEveryone], 3); }
public void ShouldCalculateCostForMeterReadingsForEveryPricePlan() { var electricityReading = new ElectricityReading() { Time = DateTime.Now.AddHours(-1), Reading = 15.0m }; var otherReading = new ElectricityReading() { Time = DateTime.Now, Reading = 5.0m }; meterReadingService.StoreReadings(SMART_METER_ID, new List <ElectricityReading>() { electricityReading, otherReading }); Dictionary <string, decimal> result = controller.CalculatedCostForEachPricePlan(SMART_METER_ID).Value as Dictionary <string, decimal>; Assert.NotNull(result); Assert.Equal(3, result.Count); Assert.Equal(100m, result[Supplier.DrEvilsDarkEnergy.ToString()], 3); Assert.Equal(20m, result[Supplier.TheGreenEco.ToString()], 3); Assert.Equal(10m, result[Supplier.PowerForEveryone.ToString()], 3); }