Example #1
0
        public void Setup()
        {
            _trackObjects1 = new List <TrackObject>();
            _trackObjects  = new List <TrackObject>();
            _trackObjects2 = new List <TrackObject>();
            list1          = new List <string> {
                "MAR123", "50000", "50000", "1000", "20151006213456789"
            };
            trackObject           = new TrackObject(list1);
            _receivedTrackObjects = new List <TrackObject>();
            _trackObjects.Add(trackObject);
            _transponderReceiver      = Substitute.For <ITransponderReceiver>();
            _transponderParsing       = Substitute.For <ITransponderParsing>();
            _trackingValidation       = Substitute.For <ITrackingValidation>();
            _dateFormatter            = Substitute.For <IDateFormatter>();
            _trackUpdater             = Substitute.For <ITrackUpdater>();
            _velocityCourseCalculator = Substitute.For <IVelocityCourseCalculator>();
            _separationChecker        = Substitute.For <ISeparationChecker>();
            _print       = Substitute.For <IPrint>();
            _objectifier = Substitute.For <ITrackListEvent>();
            _uut         = new ATMSystem(_objectifier, _trackUpdater, _velocityCourseCalculator, _separationChecker, _print);
            _trackObjectDataEventArgs = new TrackListEventArgs(_trackObjects);

            _objectifier.TrackListReady += (sender, TrackListEventArgs) =>
            {
                _receivedTrackObjects = TrackListEventArgs.TrackObjects;
            };
        }
Example #2
0
        public void TestSetup()
        {
            _trackListEvent = Substitute.For <ITrackListEvent>();
            _airspace       = FakeAirspaceGenerator.GetAirspace(0, 0, 0);

            _uutValidateTransponderData = new ValidateTransponderData(ref _trackListEvent, _airspace);
        }
Example #3
0
        public ATMSystem(
            ITrackListEvent trackListEvent,
            ITrackUpdater trackUpdater,
            IVelocityCourseCalculator velocityCourseCalculator,
            ISeparationChecker separationChecker,
            IPrint print)
        {
            trackListEvent.TrackListReady += OnTrackListReady;

            _trackUpdater             = trackUpdater;
            _velocityCourseCalculator = velocityCourseCalculator;
            _separationChecker        = separationChecker;
            _print = print;
        }
        public void TestSetUp()
        {
            _validationCompleteEventArgs = null;

            _trackListEvent = Substitute.For <ITrackListEvent>();

            // setup Airspace to work on
            _airspace = FakeAirspaceGenerator.GetAirspace(0, 0, 0);

            // set Validator to subscribe to Interpreter(done in constructor)
            _validateTransponderData = new ValidateTransponderData(ref _trackListEvent, _airspace);

            // setup listener
            _validateTransponderData.ValidationCompleteEventHandler += (sender, args) => { _validationCompleteEventArgs = args; };
        }
Example #5
0
        static void setup()
        {
            tr            = TransponderReceiverFactory.CreateTransponderDataReceiver();
            TDInterpreter = new TransponderDataInterpreter();
            TDInterpreter.subscribe(tr);

            Position p = new Position();

            p.XCoordinate = 30000;
            p.YCoordinate = 30000;
            p.ZCoordinate = 5;

            airspace = new Airspace();
            airspace.AirspacePosition = p;
            airspace.HorizontalSize   = 100000;
            airspace.VerticalEnd      = 100000;

            ITrackListEvent itlEvent = TDInterpreter;

            validator = new ValidateTransponderData(ref itlEvent, airspace);

            AirOutputter = new AirTrafficOutputter();
            AirOutputter.TrafficController = new ConsoleAirTrafficController();
            List <IConditionStrategy <ITrack> > conditionStrategies = new List <IConditionStrategy <ITrack> >();

            conditionStrategies.Add(new TrackAltitudeCondition()
            {
                AltitudeRestriction = 100000
            });
            conditionStrategies.Add(new TrackHorizontalDistanceCondition()
            {
                HorizontalDistance = 100000
            });

            airCondDetector = new AirspaceTrackConditionDetector(conditionStrategies);

            TrackHorizontalDistanceCalculator HorizontalDistanceCalc = new TrackHorizontalDistanceCalculator();
            TrackSpeedCalculator  speedCalc  = new TrackSpeedCalculator(HorizontalDistanceCalc);
            TrackCourseCalculator courseCalc = new TrackCourseCalculator();
            AirspaceUpdater       airUpdater = new AirspaceUpdater(speedCalc, courseCalc);


            Monitor = new AirTrafficMonitor(validator, airCondDetector, AirOutputter, airUpdater);
            FileLogger fl = new FileLogger();

            fl.PathToFile       = "../../log.txt";
            AirOutputter.Logger = fl;
        }
Example #6
0
        public void Setup()
        {
            list1 = new List <string> {
                "MAR123", "50000", "50000", "1000", "20151006213456000"
            };
            list2 = new List <string> {
                "MAR123", "49900", "49900", "1000", "20151006213457000"
            };
            trackObject1 = new TrackObject(list1);
            trackObject2 = new TrackObject(list2);
            tList1       = new List <TrackObject> {
                trackObject1
            };
            tList2 = new List <TrackObject> {
                trackObject2
            };
            returnList            = new List <TrackObject>();
            _receivedTrackObjects = new List <TrackObject>();
            trackObject           = new TrackObject(list1);
            _trackObjects         = new List <TrackObject>();
            _trackObjects.Add(trackObject);
            distance                  = new Distance();
            _transponderReceiver      = Substitute.For <ITransponderReceiver>();
            _transponderParsing       = new TransponderParsing();
            _trackingValidation       = new TrackingValidation();
            _dateFormatter            = new DateFormatter();
            _velocityCourseCalculator = new VelocityCourseCalculater(distance);
            _trackUpdater             = new TrackUpdater(_velocityCourseCalculator);
            _separationChecker        = new SeparationChecker(distance);
            _print       = Substitute.For <IPrint>();
            _objectifier = Substitute.For <ITrackListEvent>();
            _uut         = new ATMSystem(_objectifier, _trackUpdater, _velocityCourseCalculator, _separationChecker, _print);
            _trackObjectDataEventArgs = new TrackListEventArgs(_trackObjects);

            _objectifier.TrackListReady += (sender, TrackListEventArgs) =>
            {
                _receivedTrackObjects = TrackListEventArgs.TrackObjects;
            };
        }
Example #7
0
 public ValidateTransponderData(ref ITrackListEvent trackListEventHandler, ITrackable airspace)
 {
     Airspace = airspace;
     trackListEventHandler.TrackListEventHandler += OnNewValidation;
 }