public void OnSepCondition_TwoConditionsReceived_OutputsTwoConditions() { // Arrange // Create everything required for RendEventArgs var args = new RendEventArgs(); var listOfEvents = new List <SepCondEventArgs>(); var condEventArgs = new SepCondEventArgs(); condEventArgs.TimeOfOccurrence = DateTime.Now; condEventArgs.Track1 = new Track("123456", 10, 100, 1000, DateTime.Now, 1000, 300); condEventArgs.Track2 = new Track("098765", 20, 30, 500, DateTime.Now, 4000, 200); listOfEvents.Add(condEventArgs); var condEventArgs2 = new SepCondEventArgs(); condEventArgs2.TimeOfOccurrence = DateTime.MaxValue; condEventArgs2.Track1 = new Track("586038", 2364, 23456, 94865, DateTime.MaxValue, 1094, 224); condEventArgs2.Track2 = new Track("985736", 9586, 4956, 2345, DateTime.MinValue, 0, 0); listOfEvents.Add(condEventArgs2); args.TimeOfEvent = DateTime.Now; args.ListOfCurrentConditions = listOfEvents; // Act - Raise the event stubSepCond.RendererWarning += Raise.EventWith(this, args); // Assert - mockWriter has received calls from uut mockWriter.Received(6).Write(Arg.Any <string>()); }
public void SepCondEvent_ReceivesOneEvent_Only1EventSent() { Track track1 = new Track("123456", 50000, 50000, 10000, DateTime.Now, 150, 90); Track track2 = new Track("654321", 49000, 50000, 10000, DateTime.Now, 150, 90); _tracklist = new List <Track>(); _tracklist.Add(track1); _tracklist.Add(track2); _argsToSend = new ATMSEventArgs { Tracks = _tracklist }; correctRendEventArgs = new RendEventArgs(); var sepcondlistforrenderer = new List <SepCondEventArgs>(); var newsepcond = new SepCondEventArgs(); newsepcond.Track1 = track1; newsepcond.Track2 = track2; newsepcond.TimeOfOccurrence = DateTime.Now; sepcondlistforrenderer.Add(newsepcond); correctRendEventArgs.ListOfCurrentConditions = sepcondlistforrenderer; correctRendEventArgs.TimeOfEvent = DateTime.Now; _atms.DataReady += Raise.EventWith(_argsToSend); _inputoutput.Received(1).Write(Arg.Any <SepCondEventArgs>(), Arg.Any <string>()); }
public void SepCondToRendEvent_Receives1Event_Sends1Event() { Track track1 = new Track("123456", 50000, 50000, 10000, DateTime.Now, 150, 90); Track track2 = new Track("654321", 49000, 50000, 10000, DateTime.Now, 150, 90); _tracklist = new List <Track>(); _tracklist.Add(track1); _tracklist.Add(track2); _argsToSend = new ATMSEventArgs { Tracks = _tracklist }; correctRendEventArgs = new RendEventArgs(); var sepcondlistforrenderer = new List <SepCondEventArgs>(); var newsepcond = new SepCondEventArgs(); newsepcond.Track1 = track1; newsepcond.Track2 = track2; newsepcond.TimeOfOccurrence = DateTime.Now; sepcondlistforrenderer.Add(newsepcond); correctRendEventArgs.ListOfCurrentConditions = sepcondlistforrenderer; correctRendEventArgs.TimeOfEvent = DateTime.Now; _atms.DataReady += Raise.EventWith(_argsToSend); Assert.That(_rendEventArgs.ListOfCurrentConditions[0].Track2, Is.EqualTo(correctRendEventArgs.ListOfCurrentConditions[0].Track2)); }
public void Setup() { date = DateTime.Now; _receivedEventArgs = null; _fakeInputOutput = Substitute.For <IInputOutput>(); _fakeSeparationCondition = Substitute.For <ISeparationCondition>(); _argsToSend = new SepCondEventArgs(); _argsToSend.Track1 = new Track("123456", 1000, 2000, 5000, date, 250, 32); _argsToSend.Track2 = new Track("654321", 2000, 1000, 5500, date, 150, 161); _argsToSend.TimeOfOccurrence = new DateTime(2019, 3, 25, 23, 59, 00); _uut = new NormalLogger("UnitTestFile.txt", _fakeSeparationCondition, _fakeInputOutput); _fakeSeparationCondition.WarningEvent += (o, args) => { _receivedEventArgs = args; }; }
public void OnSepCondition_OneConditionReceived_OutputsOneCondition() { // Arrange // Create everything required for RendEventArgs var args = new RendEventArgs(); var listOfEvents = new List <SepCondEventArgs>(); var condEventArgs = new SepCondEventArgs(); condEventArgs.TimeOfOccurrence = DateTime.Now; condEventArgs.Track1 = new Track("123456", 10, 100, 1000, DateTime.Now, 1000, 300); condEventArgs.Track2 = new Track("098765", 20, 30, 500, DateTime.Now, 4000, 200); listOfEvents.Add(condEventArgs); args.TimeOfEvent = condEventArgs.TimeOfOccurrence; args.ListOfCurrentConditions = listOfEvents; // Act - Raise the event stubSepCond.RendererWarning += Raise.EventWith(this, args); // Assert - mockWriter has received calls from uut mockWriter.Received(3).Write(Arg.Any <string>()); }
public void Setup() { _argsReceived = null; // Creation of all the required classes _writer = Substitute.For <IWriter>(); _inputoutput = Substitute.For <IInputOutput>(); _atms = Substitute.For <IAirTrafficManagementSystem>(); sepcond = new SeparationCondition(_atms); _log = new NormalLogger("testfil", sepcond, _inputoutput); // Arguments that sepcond sends to Renderer when it makes an event _rendEventArgs = new RendEventArgs(); var sepcondlist = new List <SepCondEventArgs>(); sepcondlist.Add(_sepCondEventArgs); _rendEventArgs.ListOfCurrentConditions = sepcondlist; _rendEventArgs.TimeOfEvent = DateTime.Now; _atms.DataReady += (o, args) => { _argsReceived = args; }; sepcond.WarningEvent += (o, args2) => { _sepCondEventArgs = args2; }; sepcond.RendererWarning += (o, args3) => { _rendEventArgs = args3; }; }