public void TrackEnteredEvent_TrackEnteredAirspaceLessThan5SecondsAgo_IsStillBeingRendered()
        {
            string expectedString = "Track entered airspace - Occurencetime: 20181224200050123 Involved track: ABC123";

            //Track in airspace
            List <string> data = new List <string>
            {
                "ABC123;30000;30000;3000;20181224200050123"
            };

            //Create new event
            RawTransponderDataEventArgs newEvent = new RawTransponderDataEventArgs(data);

            //Give new event to transponderReceiver
            transponderReceiver.ReceiverOnTransponderDataReady(new object(), newEvent);

            //Sleep for a little less than 5 seconds
            Thread.Sleep(4800);

            //Reset consoleOutput, so calls to print done during the first 5 seconds won't count.
            fakeConsoleOutput.ClearReceivedCalls();

            //Wait for some time, to see if any events are rendered
            Thread.Sleep(200);

            fakeConsoleOutput.Received().Print(Arg.Is <string>(expectedString));
        }
예제 #2
0
        public void ATMclass_TrackData_UpdataTrackInCurrentTracks()
        {
            //Opretter et track som er inden for vores Airspace
            TrackData trackData1 =
                new TrackData("DEF456", 10002, 10002, 1002, "20181107133900000", 0, 0, fakeConsoleOutput);

            //Opretter et nyt track med samme tag som trackData1, stadig inden for airspace
            TrackData trackData2 =
                new TrackData("DEF456", 10002, 10002, 1002, "20181107134000000", 0, 0, fakeConsoleOutput);

            atmClass.HandleNewTrackData(trackData1);

            //ClearReceivedCalls() Da vi ikke er interesseret i trackData1 bliver renderet (Testest i testen forinden)
            fakeConsoleOutput.ClearReceivedCalls();

            atmClass.HandleNewTrackData(trackData2);
            string expectedString =
                $"{trackData2.Tag} - ( {trackData2.CurrentXcord}, {trackData2.CurrentYcord}, {trackData2.CurrentZcord}) - Speed: {trackData2.CurrentHorzVel} m/s - Course: {trackData2.CurrentCourse} degrees";

            //Sleep for a bit to make sure that the render function has been called
            Thread.Sleep(200);

            fakeConsoleOutput.Received().Print(Arg.Is <string>(expectedString));
        }
예제 #3
0
        public void TrackEnteredEvent_TrackEnteredAirspaceLessThan5SecondsAgo_IsStillBeingRendered()
        {
            string expectedString = "Track entered airspace - Occurencetime: 20181224200050123 Involved track: ABC123";

            ATM.HandleNewTrackData(trackData1);

            //Sleep for a little less than 5 seconds
            Thread.Sleep(4800);

            //Reset consoleOutput, so calls to print done during the first 5 seconds won't count.
            fakeConsoleOutput.ClearReceivedCalls();

            //Wait for some time, to see if any events are rendered
            Thread.Sleep(200);

            fakeConsoleOutput.Received().Print(Arg.Is <string>(expectedString));
        }