public void WhenNameSet_ThenValueUpdated() { var target = new VehicleStatisticsModel { Name = "Name" }; Assert.Equal("Name", target.Name); }
private static JsonStatisticsViewModel ToJsonStatisticsViewModel(VehicleStatisticsModel statistics) { return(new JsonStatisticsViewModel { Name = statistics.Name, AverageFillupPrice = statistics.AverageFillupPrice, AverageFuelEfficiency = statistics.AverageFuelEfficiency, AverageCostPerMonth = statistics.AverageCostPerMonth, AverageCostToDrive = statistics.AverageCostToDrive, Odometer = statistics.Odometer, TotalDistance = statistics.TotalDistance, TotalFuelCost = statistics.TotalFuelCost, TotalUnits = statistics.TotalUnits, TotalCost = statistics.TotalCost }); }
public static VehicleStatisticsModel VehicleStatistics(List <ReportModel> reports) { var statistics = new VehicleStatisticsModel(); if (reports.Count > 0) { foreach (var report in reports) { statistics.Distance += report.Distance; statistics.TotalCost += report.TotalPrice; statistics.AvaragePrimaryFuelAmount += report.PrimaryFuelAmount; statistics.AvaragePrimaryFuelCost += report.PrimaryFuelUnitPrice * report.PrimaryFuelAmount; if (report.SecondaryFuel_ID != null) { statistics.AvarageSecondaryFuelAmount += report.SecondaryFuelAmount.Value; statistics.AvarageSecondaryFuelCost += report.SecondaryFuelUnitPrice.Value * report.SecondaryFuelAmount.Value; } } statistics.AvarageDistance = Math.Round((decimal)statistics.Distance / reports.Count, 2); statistics.AvaragePrimaryFuelCostTenKm = Math.Round(statistics.AvaragePrimaryFuelCost / statistics.Distance * 10, 2); statistics.AvaragePrimaryFuelAmount = Math.Round(statistics.AvaragePrimaryFuelAmount / reports.Count, 2); statistics.AvaragePrimaryFuelCost = Math.Round(statistics.AvaragePrimaryFuelCost / reports.Count, 2); statistics.AvarageCost = Math.Round(statistics.TotalCost / reports.Count, 2); if (statistics.AvarageSecondaryFuelAmount != 0) { statistics.AvarageSecondaryFuelCostTenKm = Math.Round(statistics.AvarageSecondaryFuelAmount / statistics.Distance * 10, 2); statistics.AvarageSecondaryFuelAmount = Math.Round(statistics.AvarageSecondaryFuelAmount / reports.Count, 2); statistics.AvarageSecondaryFuelCost = Math.Round(statistics.AvarageSecondaryFuelCost / reports.Count, 2); } } return(statistics); }