public void SetUp()
        {
            _fakeTrackCalculator = Substitute.For <ITrackCalculator>();
            _uut = new TrackCalculator(_fakeTrackCalculator);

            _testTracksOld = new List <Track>();
            _testTracksNew = new List <Track>();
            _testTracks    = new List <Track>();

            _testTracksOld.Add(new Track {
                Tag = "JYG338", X = 5258, Y = 57189, Z = 5000, Timestamp = DateTime.ParseExact("20191024155401709", "yyyyMMddHHmmssfff", null), CompassCourse = 0, Velocity = 0
            });
            _testTracksOld.Add(new Track {
                Tag = "GVC241", X = 38594, Y = 77966, Z = 10900, Timestamp = DateTime.ParseExact("20191024155401709", "yyyyMMddHHmmssfff", null), CompassCourse = 0, Velocity = 0
            });
            _testTracksOld.Add(new Track {
                Tag = "WIA512", X = 17357, Y = 24364, Z = 2100, Timestamp = DateTime.ParseExact("20191024155401709", "yyyyMMddHHmmssfff", null), CompassCourse = 0, Velocity = 0
            });

            _testTracksNew.Add(new Track {
                Tag = "JYG338", X = 5387, Y = 57076, Z = 5000, Timestamp = DateTime.ParseExact("20191024155402397", "yyyyMMddHHmmssfff", null), CompassCourse = 0, Velocity = 0
            });
            _testTracksNew.Add(new Track {
                Tag = "GVC241", X = 38794, Y = 78066, Z = 10800, Timestamp = DateTime.ParseExact("20191024155402397", "yyyyMMddHHmmssfff", null), CompassCourse = 0, Velocity = 0
            });
            _testTracksNew.Add(new Track {
                Tag = "WIA512", X = 18357, Y = 25364, Z = 2000, Timestamp = DateTime.ParseExact("20191024155402397", "yyyyMMddHHmmssfff", null), CompassCourse = 0, Velocity = 0
            });
        }
        public IPrintCalculation PrintCalculationResult(ITrackCalculator calculator)
        {
            if (_calculators.Contains(calculator))
            {
                calculator.PrintResult();
            }

            return(this);
        }
Exemplo n.º 3
0
 public AirTrafficManagementSystem(MonitoredAirspace monair, ITransponderReceiverClient transclient,
                                   ITrackCalculator calc)
 {
     this._monitoredAirspace  = monair;
     this._transPondRecClient = transclient;
     this._trackCalculator    = calc;
     _transPondRecClient.DataReceivedEvent += OnReceiverClientEvent;
     _airCraftsInAirspaceList = new List <Track>();
 }
 public IPrintCalculation CalculateTrack(ITrackCalculator calculator)
 {
     _calculators.Add(calculator);
     foreach (var trackPoint in _track.TrackPoints)
     {
         calculator.Calculate(trackPoint);
     }
     return(this);
 }
        public void Setup()
        {
            // Create fakes
            fakeReceiver   = Substitute.For <ITransponderReceiver>();
            fakeCalculator = Substitute.For <ITrackCalculator>();

            // Create unit under test
            uut = new TransponderReceiverClient(fakeReceiver, fakeCalculator);
            int numberOfEventsReceived = 0;
        }
        // Using constructor injection for dependency/ies
        public TransponderReceiverClient(ITransponderReceiver receiver, ITrackCalculator calculator)
        {
            // This will store the real or the fake transponder data receiver
            this.receiver = receiver;

            this.calculator = calculator;

            // Attach to the event of the real or the fake TDR
            this.receiver.TransponderDataReady += ReceiverOnTransponderDataReady;
        }
        public void Setup()
        {
            // Mocks, stubs and UUT
            stubTransRecClient  = Substitute.For <ITransponderReceiverClient>();
            stubTrackCalculator = Substitute.For <ITrackCalculator>();
            airspace            = new MonitoredAirspace(90000, 80000, 90000, 80000, 20000, 10000);
            uut = new AirTrafficManagementSystem(airspace, stubTransRecClient, stubTrackCalculator);

            // Data sent from stubTransRecClient
            trackToSend = new Track("123456", 90000, 80000, 15000, DateTime.Now, 0, 0);
            List <Track> listToSend = new List <Track>();

            listToSend.Add(trackToSend);
            ATMSEventArgs CorrectArgs = new ATMSEventArgs();

            CorrectArgs.Tracks = listToSend;
        }
        public bool runner = true; //Kan sætte til false fra resten af programmet, for at standse koden.
        public AirTrafficController()
        {
            // TransponderReceiverClient
            var transponderDataReceiver   = TransponderReceiverFactory.CreateTransponderDataReceiver();
            var transponderReceiverClient = new TransponderReceiverClient(transponderDataReceiver);

            // Condition
            _fileWriter = new SeparationConditionLogger("AirplaneSeperations.txt");
            _condition  = new Condition(_fileWriter);

            // Airspace
            _trackCalculator = new TrackCalculator();
            _airspace        = new Airspace(_trackCalculator);
            transponderReceiverClient.DataReadyEvent += _airspace.HandleDataReadyEvent;
            _airspace.AirspaceChangedEvent           += air_ThresholdReached;

            // Screen
            _screen = new Screen();
        }
Exemplo n.º 9
0
 public AirspaceUpdater(ITrackCalculator <double> speedCalculator, ITrackCalculator <double> courseCalculator)
 {
     _speedCalculator      = speedCalculator;
     _trajectoryCalculator = courseCalculator;
 }
Exemplo n.º 10
0
 public TrackCalculator(ITrackCalculator calculator)
 {
     this._calculator = calculator;
     _oldTrack        = new List <Track>();
 }
 public void TestSetup()
 {
     _fakeTrackHorizontalDistanceCalculator = Substitute.For <ITrackCalculator <double> >();
     _uutTrackSpeedCalculator = new TrackSpeedCalculator(_fakeTrackHorizontalDistanceCalculator);
 }
Exemplo n.º 12
0
 public TrackSpeedCalculator(ITrackCalculator <double> trackHorizontalDistanceCalculator)
 {
     _trackHorizontalDistanceCalculator = trackHorizontalDistanceCalculator;
 }
Exemplo n.º 13
0
 public Airspace(ITrackCalculator trackCalculator)
 {
     tracks           = new List <Track>();
     _trackCalculator = trackCalculator;
 }
 public CalculatorService AddCalculator(ITrackCalculator calculator)
 {
     this._calculators.Add(calculator);
     return(this);
 }
Exemplo n.º 15
0
 public void TestSetup()
 {
     _courseCalculator   = Substitute.For <ITrackCalculator <double> >();
     _speedCalculator    = Substitute.For <ITrackCalculator <double> >();
     _uutAirspaceUpdater = new AirspaceUpdater(_speedCalculator, _courseCalculator);
 }
Exemplo n.º 16
0
        public double Span(ITrackCalculator track1, ITrackCalculator track2)
        {
            double difference1 = Math.Sqrt(Math.Pow((track1.X_coor - track2.X_coor), 2) + Math.Pow((track1.Y_coor - track2.Y_coor), 2));

            return(Math.Abs(difference1));
        }