public async Task CalculatePointTyreDegradationTest_Invalid() { //e.g. Silverstone|Towcester|14,57 const double trackDegradationPoint = 57; var dataManager = new DataManager(); await dataManager.LoadAndParseData(); var tyreDetailsViewModel = new TyreDetailsViewModel(dataManager.Tyres[0]); var tyreCoefficient = tyreDetailsViewModel.TyreCoefficient; double temperature = 0.0; var weatherService = new WeatherService(new OpenWeatherMapApiConsumer(new WebClientConsumer())); weatherService.GetTemperatureForLocationAsync("Towcester", (object sender, EventArgs e) => { if (e is TemperatureUpdatedEventArgs temperatureArgs) { temperature = temperatureArgs.NewTemperature; } }); var pointTyreDegradataion = TyrePlacementViewModel.CalculatePointTyreDegradation(trackDegradationPoint, tyreCoefficient, temperature); var manualCalculation = (14 + temperature) / tyreCoefficient; Assert.AreNotEqual(manualCalculation, pointTyreDegradataion); }
public void CalculateTyreCoefficientTest() { const int degradationCoefficient = 10; const int percentage = 80; var tyreCoefficient = TyreDetailsViewModel.CalculateTyreCoefficient(percentage, degradationCoefficient); Assert.AreEqual(8, tyreCoefficient); }
public async Task GetPercentageValueTest() { var dataManager = new DataManager(); await dataManager.LoadAndParseData(); var tyreDetailsViewModel = new TyreDetailsViewModel(dataManager.Tyres[0]); var value = tyreDetailsViewModel.GetPercentageValue(); Assert.AreEqual(80, value); }
public async Task IsSameFamilyAsTest_DifferentFamily() { var dataManager = new DataManager(); await dataManager.LoadAndParseData(); var tyreDetailsViewModel = new TyreDetailsViewModel(dataManager.Tyres[0]); var newTyreDetails = new TyreDetailsViewModel(dataManager.Tyres.FirstOrDefault(t => t.Family.Trim() != tyreDetailsViewModel.Family.ToString())); Assert.IsFalse(tyreDetailsViewModel.IsSameFamilyAs(newTyreDetails)); }