public StringFormatter(ITransponderReceiver transponderReceiver, ICompassCourseCalculator courseCalculator, IVelocityCalculator velocityCalculator) { transponderReceiver.TransponderDataReady += HandleTransponderDataEvent; _courseCalculator = courseCalculator; _velocityCalculator = velocityCalculator; }
public void SetUp() { // Make a fake Transponder Data Receiver _fakeTransponderReceiver = Substitute.For <ITransponderReceiver>(); _fakeCompassCourseCalculator = Substitute.For <ICompassCourseCalculator>(); _fakeVelocityCalculator = Substitute.For <IVelocityCalculator>(); // Inject the fake StringFormatter _uut = new StringFormatter(_fakeTransponderReceiver, _fakeCompassCourseCalculator, _fakeVelocityCalculator); //Fake Event Handler _uut.DataFormattedEvent += (o, args) => { _receivedEventArgs = args; }; }
public void Integration_Display_ConditionChecker_AirSpaceFilter_StringFormatter() { transponderR = Substitute.For <ITransponderReceiver>(); compassCourseCalculator = Substitute.For <ICompassCourseCalculator>(); velocityCalculator = Substitute.For <IVelocityCalculator>(); stringFormatter = new StringFormatter(transponderR, compassCourseCalculator, velocityCalculator); filter = new AirspaceFilter(stringFormatter); conditionChecker = new ConditionChecker(5000, 300, filter); display = new DisplaySeparator(filter, conditionChecker); List <string> transponderData = new List <string>(); transponderData.Add("T1;39045;29000;14000;20191029154852789"); transponderData.Add("T2;39030;29030;14020;20191029154852789"); transponderData.Add("T3;20045;29000;14000;20191029154852789"); transponderData.Add("T4;39045;29000;12000;20191029154852789"); transponderR.TransponderDataReady += Raise.EventWith(this, new RawTransponderDataEventArgs(transponderData)); Assert.That(display.ListOfTracksToDisplay.ElementAt(0).Tag, Is.EqualTo("T1")); Assert.That(display.ListOfTracksToDisplay.ElementAt(3).PositionX, Is.EqualTo(39045)); }