public void HandleTrack_TrackIsOutideAirspace_EventIsRaised() { _airspace.HighestAltitude = 3000; _airspace.LowestAltitude = 0; _airspace.NorthEastXCoordinate = 40000; _airspace.NorthEastYCoordinate = 40000; _airspace.SouthWestXCoordinate = 0; _airspace.SouthWestYCoordinate = 0; List <Track> tracks = new List <Track>(); Track track = new Track() { Altitude = 100, XCoordinate = 50000, YCoordinate = 300, Tag = "CP8" }; tracks.Add(track); TracksDataEventArgs arg = new TracksDataEventArgs(tracks); Track trackFromEvent = new Track(); _airspaceController.TrackOutsideAirspace += (sender, args) => trackFromEvent = args.Track; _airspaceController.HandleTracks(this, arg); Assert.That(trackFromEvent, Is.EqualTo(track)); }
public void HandleTracks(object o, TracksDataEventArgs arg) { foreach (var track in arg.Tracks) { if (_airspaceTrackChecker.CheckTrack(track)) { var handler = TrackInAirspace; handler?.Invoke(this, new TrackEventArgs(track)); } else { var handler = TrackOutsideAirspace; handler?.Invoke(this, new TrackEventArgs(track));; } } }
public void HandleTracks_TracksInAirspace_OutsideEventWasNotRaised(int NumberOfTracks) { //Arrange int NumberOfEventRaised = 0; _uut.TrackOutsideAirspace += (sender, args) => NumberOfEventRaised++; _fakeAirspaceTrackChecker.CheckTrack(Arg.Any <Track>()).Returns(true); List <Track> tracks = new List <Track>(); for (int i = 0; i < NumberOfTracks; i++) { tracks.Add(new Track()); } //Act TracksDataEventArgs arg = new TracksDataEventArgs(tracks); _fakeTransponderDataReciever.TrackDataReady += Raise.EventWith <TracksDataEventArgs>(arg); //Assert Assert.That(NumberOfEventRaised, Is.EqualTo(0)); }