public void TestGear() { for (int i = 0; i < _expectedValues.Length; i++) { InputData.UsedInputData.Gear = (byte)i; _gearBox.Calculate(); _gearBox.StoreResult(); Assert.AreEqual(GearBoxOutput.LastCalculation.Torque, _expectedValues[i], 1e-6); } _gearBox.CalculateBackwards(); _gearBox.StoreResult(); Assert.AreEqual(10000, GearBoxOutput.LastCalculation.Rpm, 1e-5); }
/// <summary> /// this function is used to call all the calculate functions which runs once /// </summary> private void DoWork() { Aerodynamic.Calculate(); Aerodynamic.StoreResult(); Brake.Calculate(); Brake.StoreResult(); Engine.Calculate(); Engine.StoreResult(); GearBox.Calculate(); GearBox.StoreResult(); SecondaryDrive.Calculate(); SecondaryDrive.StoreResult(); Steering.Calculate(); Steering.StoreResult(); DoIterativeWork(); //call the CalculateBackwards functions Aerodynamic.CalculateBackwards(); Aerodynamic.StoreResult(); Brake.CalculateBackwards(); Brake.StoreResult(); Engine.CalculateBackwards(); Engine.StoreResult(); GearBox.CalculateBackwards(); GearBox.StoreResult(); SecondaryDrive.CalculateBackwards(); SecondaryDrive.StoreResult(); Steering.CalculateBackwards(); Steering.StoreResult(); Track.Instance.CalculateBackwards(); Track.Instance.StoreResult(); Wheels.CalculateBackwards(); Wheels.StoreResult(); OverallCar.CalculateBackwards(); OverallCar.StoreResult(); Suspension.CalculateBackwards(); Suspension.StoreResult(); }