public void WhenComfortModeEnteredAndAggressivenessLevelSelectedIsSecondEventOccuredSendsAdequateDemand() { var serviceMock = new Mock <IGearshiftService>(); var characteristics = new EngineCharacteristics(); var processManager = new ResponsivenessModeProgramUpdatingProcess(serviceMock.Object, characteristics); processManager.ApplyEvent(new ComfortModeEntered()); processManager.ApplyEvent(new AggressivenessLevelSelected(AggressivenessLevel.Second)); serviceMock.Verify(x => x.KeepFollowingRpm(characteristics.GetRangeFor(ResponsivenessMode.Comfort, AggressivenessLevel.First)), Times.Once); serviceMock.Verify(x => x.KeepFollowingRpm(characteristics.GetRangeFor(ResponsivenessMode.Comfort, AggressivenessLevel.Second)), Times.Once); }
public void ReturnsProperRangeForModeAndAggressivenessLevel(ResponsivenessMode selectedMode, AggressivenessLevel selectedAggressiveness, double lowerShiftPoint, double upperShiftPoint) { var characteristics = new EngineCharacteristics(); var characteristicsRange = characteristics.GetRangeFor(selectedMode, selectedAggressiveness); Assert.AreEqual(lowerShiftPoint, characteristicsRange.LowerShiftPoint.Value); Assert.AreEqual(upperShiftPoint, characteristicsRange.UpperShiftPoint.Value); }