public void GetUpdatedSetup_SafeAndAggressiveLoaded_BlendedSetupReturned()
        {
            // Arrange
            var safeSetup       = PreparedSetups.GetMinSetup();
            var aggressiveSetup = PreparedSetups.GetMaxSetup();

            // Act
            var blendSafeAndAggressive = new BlendSafeAndAggressive(safeSetup, aggressiveSetup);
            var updatedSetup           = blendSafeAndAggressive.GetUpdatedSetup();

            // Assert
            var tyres = updatedSetup.BasicSetup.Tyres;

            Assert.Equal(new int[] { 74, 74, 74, 74 }, tyres.TyrePressure.ToArray());

            var alignment = updatedSetup.BasicSetup.Alignment;

            Assert.Equal(new int[] { 25, 25, 25, 25 }, alignment.Camber.ToArray());
            Assert.Equal(new int[] { 40, 40, 40, 40 }, alignment.Toe.ToArray());
            Assert.Equal(49, alignment.CasterLF);
            Assert.Equal(49, alignment.CasterRF);

            var electronics = updatedSetup.BasicSetup.Electronics;

            Assert.Equal(6, electronics.TC1);
            Assert.Equal(6, electronics.TC2);
            Assert.Equal(6, electronics.Abs);
            Assert.Equal(6, electronics.ECUMap);

            var mechanicalBalance = updatedSetup.AdvancedSetup.MechanicalBalance;

            Assert.Equal(25, mechanicalBalance.ARBFront);
            Assert.Equal(25, mechanicalBalance.ARBRear);
            Assert.Equal(10, mechanicalBalance.BrakeTorque);
            Assert.Equal(53, mechanicalBalance.BrakeBias);
            Assert.Equal(new int[] { 5, 5, 5, 5 }, mechanicalBalance.WheelRate.ToArray());
            Assert.Equal(new int[] { 11, 11, 11, 11 }, mechanicalBalance.BumpStopRateUp.ToArray());
            Assert.Equal(new int[] { 5, 5, 5, 5 }, mechanicalBalance.BumpStopRateDn.ToArray());
            Assert.Equal(new int[] { 10, 10, 30, 30 }, mechanicalBalance.BumpStopWindow.ToArray());

            var dampers = updatedSetup.AdvancedSetup.Dampers;

            Assert.Equal(new int[] { 6, 6, 6, 6 }, dampers.BumpSlow.ToArray());
            Assert.Equal(new int[] { 6, 6, 6, 6 }, dampers.BumpFast.ToArray());
            Assert.Equal(new int[] { 6, 6, 6, 6 }, dampers.ReboundSlow.ToArray());
            Assert.Equal(new int[] { 6, 6, 6, 6 }, dampers.ReboundFast.ToArray());


            var aeroBalance = updatedSetup.AdvancedSetup.AeroBalance;

            Assert.Equal(new int[] { 13, 6, 13, 18 }, aeroBalance.RideHeight);
            Assert.Equal(6, aeroBalance.Splitter);
            Assert.Equal(7, aeroBalance.RearWing);
            Assert.Equal(new int[] { 3, 3 }, aeroBalance.BrakeDuct);

            var driveTrain = updatedSetup.AdvancedSetup.Drivetrain;

            Assert.Equal(14, driveTrain.Preload);
        }
Пример #2
0
        public void GetUpdatedSetup_SafeAndAggressiveLoaded_BlendedSetupReturned()
        {
            // Arrange
            var aggressiveSetup = PreparedSetups.GetMaxSetup();

            // Act
            //var blendSafeAndAggressive = new ReduceUndersteer(aggressiveSetup);
            //var updatedSetup = blendSafeAndAggressive.GetUpdatedSetup();

            // Assert
        }
Пример #3
0
        public void ApplySetup_TwoSourceSetups_AddedToSourceSetups()
        {
            // Arrange
            var setup = new Setup();

            setup.AddSourceSetup(PreparedSetups.GetSafeSetup());
            setup.AddSourceSetup(PreparedSetups.GetAggressiveSetup());

            // Act
            var sourceSetups = setup.GetSourceSetups();

            // Assert
            Assert.Equal(2, sourceSetups.Count);
        }
Пример #4
0
        public void QueryJson_Experiment()
        {
            var setup = PreparedSetups.GetSafeSetupJsonDocument();


            var setupDictionary = new Dictionary <string, string>();


            var propertyList = new List <string>
            {
                "carName",
                "basicSetup.tyres.tyreCompound",
                "basicSetup.tyres.tyrePressure",
                "basicSetup.alignment.camber",
                "basicSetup.alignment.toe",
                "basicSetup.alignment.staticCamber",
                "basicSetup.alignment.toeOutLinear",
                "basicSetup.alignment.casterLF",
                "basicSetup.alignment.casterRF",
                "basicSetup.alignment.steerRatio",
                "basicSetup.electronics.tC1",
                "basicSetup.electronics.tC2",
                "basicSetup.electronics.abs",
                "basicSetup.electronics.eCUMap",
                "basicSetup.electronics.fuelMix",
                "basicSetup.electronics.telemetryLaps",
            };


            foreach (var property in propertyList)
            {
                if (property.Contains("."))
                {
                    var         levels  = property.Split('.');
                    JsonElement element = setup.RootElement;
                    var         i       = 0;
                    foreach (var propertyLevel in levels)
                    {
                        element = element.GetProperty(propertyLevel);
                        i++;
                        if (i == levels.Length)
                        {
                            setupDictionary.Add(property, element.ToString());
                        }
                    }
                }
            }
        }