Beispiel #1
0
 public void Setup()
 {
     _uut          = new SeparationEvent();
     _calcDistance = Substitute.For <ICalcDistance>();
     _track1       = Substitute.For <ITracks>();
     _track2       = Substitute.For <ITracks>();
 }
Beispiel #2
0
 public void Setup()
 {
     _track   = Substitute.For <TrackData>();
     _list    = new List <ITracks>();
     _printer = Substitute.For <IPrints>();
     _uut     = new Monitor();
 }
Beispiel #3
0
        public bool CollisionDetection(ICalcDistance Distance, ITracks track1, ITracks track2)
        {
            this.Distance = Distance;
            double horizontalDistance = this.Distance.CalculateDistance2D(track1.X, track2.X, track1.Y, track2.Y);
            double verticalDistance   = this.Distance.CalculateDistance1D(track1.Altitude, track2.Altitude);

            return(horizontalDistance < horizontalConflict && verticalDistance < verticalConflict);
        }
Beispiel #4
0
 public bool MonitorFlight(ITracks track)
 {
     //De rette coords
     return(track.X <= 90000 &&
            track.X >= 10000 &&
            track.Y <= 90000 &&
            track.Y >= 10000 &&
            track.Altitude >= 500 &&
            track.Altitude <= 20000);
 }
Beispiel #5
0
 public void Setup()
 {
     _uut        = new Logger();
     _track1     = Substitute.For <ITracks>();
     _track2     = Substitute.For <ITracks>();
     _track1.Tag = "Tag1";
     _track1.FormattedTimestamp = "20151006213456789";
     _track2.Tag = "Tag2";
     _track2.FormattedTimestamp = "20151006213456789";
 }
Beispiel #6
0
        public void Setup()
        {
            //Rigtige Klasser
            _uut    = new Monitor();
            _Track1 = new TrackData()
            {
                Tag = "TAG1", X = 10000, Y = 21000, Altitude = 3000, Course = 0, Velocity = 100, FormattedTimestamp = "14-05-2018 17:18 53 4000"
            };

            _Update = Substitute.For <IUpdate>();
        }
Beispiel #7
0
 public void Setup()
 {
     _calcdist     = Substitute.For <ICalcDistance>();
     _calccourse   = Substitute.For <ICalcCourse>();
     _calcvelocity = Substitute.For <ICalcVelocity>();
     _update       = Substitute.For <IUpdate>();
     _output       = Substitute.For <IOutput>();
     _tracks       = new List <ITracks>();
     _track        = Substitute.For <TrackData>();
     _monitor      = Substitute.For <IMonitors>();
     _uut          = new Print(_update, _calcdist, _calccourse, _calcvelocity, _logger, _separation, _monitor, _output, _tracks);
 }
Beispiel #8
0
        public void LogSeparationEvent(ITracks track1, ITracks track2)
        {
            Console.WriteLine("Timestamp: " + track1.FormattedTimestamp + "\t" +
                              track1.Tag + " and " + track2.Tag + " are breaking separation rules");

            string output = "Timestamp: " + track1.FormattedTimestamp + "\t" +
                            track1.Tag + " and " + track2.Tag + " are breaking separation rules";

            using (StreamWriter outputFile = new StreamWriter(@"SeparatationEventLog.txt", true))
            {
                outputFile.WriteLine(output);
            }
        }
Beispiel #9
0
 public void Setup()
 {
     //Initialisere
     _tag           = "TRK001";
     _xcoord        = 12345;
     _ycoord        = 67890;
     _altitude      = 12000;
     _course        = 0;
     _velocity      = 0;
     _formattedtime = "20151014123456789";
     //Test
     _uut = new TrackData();
 }
Beispiel #10
0
        public double Calculate(ITracks track1, ITracks track2)
        {
            double Rad2Deg = 180.0 / Math.PI;
            double dx      = track2.X - track1.X;
            double dy      = track2.Y - track1.Y;
            double angle   = 90 - Math.Atan2(dy, dx) * Rad2Deg;

            if (angle <= 0)
            {
                angle = angle + 360;
            }

            _Angle = angle;
            return(_Angle);
        }
Beispiel #11
0
        public void Setup()
        {
            _uut    = new CalcDistance();
            _Track1 = new TrackData()
            {
                Tag = "TAG1", X = 10000, Y = 21000, Altitude = 3000, Course = 0, Velocity = 100, FormattedTimestamp = "14-05-2018 17:18 53 4000"
            };
            _Track2 = new TrackData()
            {
                Tag = "TAG1", X = 50000, Y = 20000, Altitude = 3000, Course = 0, Velocity = 100, FormattedTimestamp = "14-05-2018 17:18 53 1111"
            };
            _Track3 = new TrackData()
            {
                Tag = "TAG1", X = 100, Y = 21000, Altitude = 3000, Course = 0, Velocity = 100, FormattedTimestamp = "14-05-2018 17:18 53 4000"
            };

            _Event = Substitute.For <ISeparation>();
        }
Beispiel #12
0
        public double Velocity(ITracks track1, ITracks track2)
        {
            TimeSpan time = track2.Timestamp - track1.Timestamp;

            timespan = (double)time.TotalSeconds;

            double a = 0, b = 0, speed = 0;

            if (track1.X > track2.X)
            {
                a = track1.X - track2.X;
            }
            else
            {
                a = track2.X - track1.X;
            }

            if (track1.Y > track2.Y)
            {
                b = track1.Y - track2.Y;
            }
            else
            {
                b = track2.Y - track1.Y;
            }

            double c = Math.Sqrt(Math.Pow(a, 2) + Math.Pow(b, 2));

            if (timespan < 0)
            {
                timespan = timespan * -1;
                speed    = c / timespan;
            }
            else if (timespan > 0)
            {
                speed = c / timespan;
            }

            return(speed);
        }
Beispiel #13
0
        public void SetUp()
        {
            _decoder = Substitute.For <ITrackDecoding>();
            //Rigtige Klasser
            _Track1 = new TrackData()
            {
                Tag = "TAG1", X = 10000, Y = 21000, Altitude = 3000, Course = 0, Velocity = 100, FormattedTimestamp = "14-05-2018 17:18 53 4000"
            };
            _Track2 = new TrackData()
            {
                Tag = "TAG1", X = 50000, Y = 20000, Altitude = 3000, Course = 0, Velocity = 100, FormattedTimestamp = "14-05-2018 17:18 53 1111"
            };
            _Track3 = new TrackData()
            {
                Tag = "TAG1", X = 100, Y = 21000, Altitude = 3000, Course = 0, Velocity = 100, FormattedTimestamp = "14-05-2018 17:18 53 4000"
            };
            _CalcDistance = new CalcDistance();
            _calcCourse   = new CalcCourse();
            _calcVelocity = new CalcVelocity();
            _monitor      = new Monitor();


            _uut = new Update(_decoder);
            //Lister

            _Tracklist = new List <ITracks>()
            {
                _Track1, _Track2
            };
            _fakeTransponderData = new TrackDataEventArgs(_Tracklist);

            //Substitueret
            _logger     = Substitute.For <ILog>();
            _output     = Substitute.For <IOutput>();
            _print      = Substitute.For <IPrints>();
            _Separation = Substitute.For <ISeparation>();


            _decoder.TrackDataReadyForCalculation += (o, args) => _Tracklist = args.TrackData;
        }
Beispiel #14
0
        public void Setup()
        {
            _uut    = new CalcCourse();
            _Track1 = new TrackData()
            {
                Tag = "TAG1", X = 10000, Y = 21000, Altitude = 3000, Course = 0, Velocity = 100, FormattedTimestamp = "14-05-2018 17:18 53 4000"
            };
            _Track2 = new TrackData()
            {
                Tag = "TAG1", X = 50000, Y = 20000, Altitude = 3000, Course = 0, Velocity = 100, FormattedTimestamp = "14-05-2018 17:18 53 1111"
            };
            _Track3 = new TrackData()
            {
                Tag = "TAG1", X = 100, Y = 21000, Altitude = 3000, Course = 0, Velocity = 100, FormattedTimestamp = "14-05-2018 17:18 53 4000"
            };

            _Tracklist = new List <ITracks>()
            {
                _Track1, _Track2, _Track3
            };

            _Update = Substitute.For <IUpdate>();
        }
Beispiel #15
0
        public void Setup()
        {
            _track1           = Substitute.For <ITracks>();
            _track2           = Substitute.For <ITracks>();
            _decoder          = Substitute.For <ITrackDecoding>();
            receivedTrackData = new List <ITracks>();
            _uut          = new Update(_decoder);
            _calcDistance = Substitute.For <ICalcDistance>();
            _calcCourse   = Substitute.For <ICalcCourse>();
            _calcVelocity = Substitute.For <ICalcVelocity>();
            _logger       = Substitute.For <ILog>();
            _separation   = Substitute.For <ISeparation>();
            _monitor      = Substitute.For <IMonitors>();

            //Tilsæt ny data
            _track1.Tag      = "Tag1";
            _track1.Altitude = 500;
            _track1.X        = 20000;
            _track1.Y        = 40000;
            //_track1.Course = 0;
            _track1.Timestamp = new DateTime(20180419152929150);
            //_track1.Velocity = 0;

            _track2.Tag      = "Tag1";
            _track2.Altitude = 600;
            _track2.X        = 40000;
            _track2.Y        = 90000;
            //_track2.Course = 0;
            _track2.Timestamp = new DateTime(20180419152929100);
            //_track2.Velocity = 0;

            _fakeTransponderData = new TrackDataEventArgs(new List <ITracks>());
            _fakeTransponderData.TrackData.Add(Substitute.For <ITracks>());
            _fakeTransponderData.TrackData.Add(Substitute.For <ITracks>());
            //Her bliver eventet sat til at være lige med receivedTrackData
            _decoder.TrackDataReadyForCalculation += (o, args) => receivedTrackData = args.TrackData;
        }
Beispiel #16
0
 public void Setup()
 {
     _track1 = Substitute.For <ITracks>();
     _track2 = Substitute.For <ITracks>();
     _uut    = new CalcCourse();
 }
Beispiel #17
0
 public PlaylistService(IWeather weatherService, ITracks tracksService)
 {
     _weatherService = weatherService;
     _tracksService  = tracksService;
 }