Beispiel #1
0
        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);
        }
Beispiel #2
0
        public void CalculatePointTyreDegradation_Invalid()
        {
            const int    trackDegradationPoint = 14;
            const double tyreCoefficient       = 0.8;
            const int    temperature           = 1;
            var          point = TyrePlacementViewModel.CalculatePointTyreDegradation(trackDegradationPoint, tyreCoefficient, temperature);
            var          manualWrongCalculation = (trackDegradationPoint + temperature) / 1.00;

            Assert.AreNotEqual(manualWrongCalculation, point);
        }
Beispiel #3
0
        public async Task CalculateResults_Invalid()
        {
            var dataManager = new DataManager();
            await dataManager.LoadAndParseData();

            var samplesList         = dataManager.Tracks[0].GetDegradationSamples();
            var samplesListAsDouble = TrackDetailsViewModel.ConvertStringSamplesToDouble(samplesList);
            var newTyrePlacement    =
                new TyrePlacementViewModel(TyrePlacement.FL)
            {
                SelectedTyre = new TyreDetailsViewModel(dataManager.Tyres[0])
            };

            newTyrePlacement.CalculateResults(samplesListAsDouble, 22.28);
            Assert.AreNotEqual(9, newTyrePlacement.Average.Value);
            Assert.AreNotEqual(14, newTyrePlacement.Mode.Value);
            Assert.AreNotEqual(11, newTyrePlacement.Range.Value);
        }
Beispiel #4
0
        public void TyrePlacementViewModelTest_ValidPlacement()
        {
            var newTyrePlacement = new TyrePlacementViewModel(TyrePlacement.FL);

            Assert.AreNotEqual(null, newTyrePlacement);
        }