Ejemplo n.º 1
0
        public void Adding1Flight_Testing_calculate_SpeedUpdate()
        {
            var _testTrack1 = new FlightTrack("MSK024", "25684", "68556", "6666", "20190322085020678");

            _uut.Calculate(_testTrack1);
            Assert.That(_testTrack1.Velocity, Is.EqualTo(0));
        }
Ejemplo n.º 2
0
        public void ProximityEvent_Adds_To_WhatShouldBeShow(string tag1, string tag2)
        {
            // arrange
            IFlightTrack track1 = new FlightTrack(tag1)
            {
                LatestTime       = new DateTime(2018, 1, 1),
                NavigationCourse = double.NaN,
                Position         = new Position(0, 0, 0),
                Velocity         = 0
            };

            IFlightTrack track2 = new FlightTrack(tag2)
            {
                LatestTime       = new DateTime(2018, 1, 1),
                NavigationCourse = double.NaN,
                Position         = new Position(0, 0, 0),
                Velocity         = 0
            };

            //act
            _fakeSeparationHandler.FlightsInProximity += Raise.EventWith(_fakeSeparationHandler, new FlightInProximityEventArgs(new Tuple <IFlightTrack, IFlightTrack>(track1, track2)));

            //assert
            Assert.That(_ssut_view.ThingsToRender.First().Item1, Does.Contain(tag1));
            Assert.That(_ssut_view.ThingsToRender.First().Item1, Does.Contain(tag2));
        }
        public void OnlyMakeVelocityCalculations_FromTheTwoLatestRecords2(string tag, int lat, int lon, int alt,
                                                                          double expectedCourse, double expectedVelocity,
                                                                          int hour, int minute)
        {
            // ARRANGE
            _uut = new FlightTrack(tag);
            var record1 = new FlightRecord()
            {
                Position  = new Position(lat, lon, alt),
                Timestamp = new DateTime(2018, 1, 1, hour, minute, 0)
            };

            _uut.Update(record1);

            var uutStr = _uut.ToString();

            //ASSERT
            Assert.That(uutStr, Does.Contain(tag));
            Assert.That(uutStr, Does.Contain(lat.ToString()));
            Assert.That(uutStr, Does.Contain(lon.ToString()));
            Assert.That(uutStr, Does.Contain(alt.ToString()));
            Assert.That(uutStr, Does.Contain(expectedCourse.ToString()));
            Assert.That(uutStr, Does.Contain(expectedVelocity.ToString()));
            Assert.That(uutStr, Does.Contain(hour.ToString()));
            Assert.That(uutStr, Does.Contain(minute.ToString()));
        }
        public void OnlyMakeVelocityCalculations_FromTheTwoLatestRecords(int lat1, int lon1, int alt1,
                                                                         int lat2, int lon2, int alt2, int timeSec2,
                                                                         int lat3, int lon3, int alt3, int timeSec3,
                                                                         double expectedVelocity)
        {
            // ARRAGNE
            _uut = new FlightTrack("AAA123");
            var record1 = new FlightRecord()
            {
                Position = new Position(lat1, lon1, alt1), Timestamp = new DateTime(2018, 1, 1, 0, 0, 0)
            };
            var record2 = new FlightRecord()
            {
                Position = new Position(lat2, lon2, alt2), Timestamp = new DateTime(2018, 1, 1, 0, 0, 0).Add(new TimeSpan(0, 0, timeSec2))
            };

            _uut.Update(record1);
            _uut.Update(record2);

            // ACT
            var record3 = new FlightRecord()
            {
                Position = new Position(lat3, lon3, alt3), Timestamp = new DateTime(2018, 1, 1, 0, 0, 0).Add(new TimeSpan(0, 0, timeSec2 + timeSec3))
            };;

            _uut.Update(record3);

            //ASSERT
            Assert.That(_uut.Velocity, Is.EqualTo(expectedVelocity));
        }
        public void CreateTwoIndependentTracks_ForDifferentFlights()

        {
            // Arrange
            var tracks  = new List <IFlightTrack>();
            var factory = new FlightRecordFactory();

            var record1 = factory.CreateRecord("AGJ063;39563;95000;16800;20181001160609975");
            var record2 = factory.CreateRecord("BBJ011;30563;90000;10800;20191001160609975");

            var expectedTrack1 = new FlightTrack("AGJ063");

            expectedTrack1.Update(record1);

            var expectedTrack2 = new FlightTrack("BBJ011");

            expectedTrack2.Update(record2);

            //Act
            tracks.SortRecordByTag(record1);
            tracks.SortRecordByTag(record2);

            //Assert
            Assert.AreEqual(2, tracks.Count());
            Assert.IsTrue(tracks.Any(track => track.Tag == expectedTrack1.Tag));
        }
Ejemplo n.º 6
0
        public void Adding1Flight_Testing_calculate_CourseUpdate()
        {
            var _testTrack2 = new FlightTrack("MSK024", "25684", "68556", "6666", "20190322085020678");

            _uut.Calculate(_testTrack2);
            Assert.That(_testTrack2.CompassCourse, Is.EqualTo(0));
        }
Ejemplo n.º 7
0
        public TrackForm(FlightTrackRecord selectedItem) : this()
        {
            _flightTrack = selectedItem.FlightTrack;
            UpdateInformation();

            _animatedThreadWorker.DoWork             += AnimatedThreadWorkerDoLoad;
            _animatedThreadWorker.RunWorkerCompleted += BackgroundWorkerRunWorkerLoadCompleted;
        }
Ejemplo n.º 8
0
        public void Validation_DifferentNotValidTracks_ReturnFalse(string xpos, string ypos, string alt)
        {
            var flightTrack = new FlightTrack(Tag, xpos, ypos, alt, Time);

            var result = _uut.Validate(_airspace, flightTrack);

            Assert.That(result, Is.False);
        }
Ejemplo n.º 9
0
        public ActionResult DeleteConfirmed(int id)
        {
            FlightTrack flightTrack = db.flightTracks.Find(id);

            db.flightTracks.Remove(flightTrack);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 10
0
        public void Adding2Flights_TestingWith_XEqualZero_Track1_Speed()
        {
            var _testTrack9  = new FlightTrack("GIG025", "0", "53000", "6666", "20190411131320654");
            var _testTrack10 = new FlightTrack("GIG025", "10000", "53000", "6666", "20190411131620654");

            _uut.Add(_testTrack9);
            _uut.Add(_testTrack10);
            Assert.That(_testTrack10.Velocity, Is.EqualTo(Math.Round(55.556, 2)));
        }
Ejemplo n.º 11
0
        public void Adding2Flights_Testing_calculate_CourseUpdate_DifferentForZero()
        {
            var _testTrack5 = new FlightTrack("MSK024", "25684", "68556", "6666", "20190322085020678");
            var _testTrack6 = new FlightTrack("MSK024", "56899", "72520", "6666", "20190322085220678");

            _uut.Add(_testTrack5);
            _uut.Add(_testTrack6);
            Assert.That(_testTrack6.CompassCourse, Is.EqualTo(Math.Round(277.23726610051, 3)));
        }
Ejemplo n.º 12
0
        public void Adding2Flights_TestingWith_YEqualZero_Track2_Compass()
        {
            var _testTrack27 = new FlightTrack("GIG025", "26000", "53000", "6666", "20190411131320654");
            var _testTrack28 = new FlightTrack("GIG025", "27000", "0", "6666", "20190411131620654");

            _uut.Add(_testTrack27);
            _uut.Add(_testTrack28);
            Assert.That(_testTrack28.CompassCourse, Is.EqualTo(Math.Round(181.08092418666, 3)));
        }
Ejemplo n.º 13
0
        public void Adding2Flights_TestingWith_YEqualZero_Track1_Compass()
        {
            var _testTrack25 = new FlightTrack("GIG025", "26000", "0", "6666", "20190411131320654");
            var _testTrack26 = new FlightTrack("GIG025", "27000", "53000", "6666", "20190411131620654");

            _uut.Add(_testTrack25);
            _uut.Add(_testTrack26);
            Assert.That(_testTrack26.CompassCourse, Is.EqualTo(Math.Round(358.91907581334, 3)));
        }
Ejemplo n.º 14
0
        public void Adding2Flights_TestingWith_XEqualZero_Track2_Compass()
        {
            var _testTrack23 = new FlightTrack("GIG025", "10000", "53000", "6666", "20190411131320654");
            var _testTrack24 = new FlightTrack("GIG025", "0", "53000", "6666", "20190411131620654");

            _uut.Add(_testTrack23);
            _uut.Add(_testTrack24);
            Assert.That(_testTrack24.CompassCourse, Is.EqualTo(Math.Round(89.99893897, 2)));
        }
Ejemplo n.º 15
0
        public void Adding2Flights_TestingWith_XEqualZero_Track1_Compass()
        {
            var _testTrack21 = new FlightTrack("GIG025", "0", "53000", "6666", "20190411131320654");
            var _testTrack22 = new FlightTrack("GIG025", "10000", "53000", "6666", "20190411131620654");

            _uut.Add(_testTrack21);
            _uut.Add(_testTrack22);
            Assert.That(_testTrack22.CompassCourse, Is.EqualTo(Math.Round(270.002, 2)));
        }
Ejemplo n.º 16
0
        public void Adding2Flights_TestingWith_YEqualZero_Track2_Speed()
        {
            var _testTrack15 = new FlightTrack("GIG025", "26000", "53000", "6666", "20190411131320654");
            var _testTrack16 = new FlightTrack("GIG025", "27000", "0", "6666", "20190411131620654");

            _uut.Add(_testTrack15);
            _uut.Add(_testTrack16);
            Assert.That(_testTrack16.Velocity, Is.EqualTo(Math.Round(294.497, 2)));
        }
Ejemplo n.º 17
0
        public void Adding2Flights_TestingWith_ZEqualZero_Track2_Speed()
        {
            var _testTrack19 = new FlightTrack("MMB759", "78842", "32654", "7562", "20190411133536356");
            var _testTrack20 = new FlightTrack("MMB759", "78842", "32654", "0", "20190411133936356");

            _uut.Add(_testTrack19);
            _uut.Add(_testTrack20);
            Assert.That(_testTrack20.Velocity, Is.EqualTo(0));
            //TestTrack 10 is not valid thus is not inserted into list. Which means there is no possibility of calulating speed
        }
Ejemplo n.º 18
0
        public void Adding2Flights_Testing_calculate_SpeedUpdate_DifferentForZero()
        {
            var _testTrack3 = new FlightTrack("MSK024", "25684", "68556", "6666", "20190322080020678");
            var _testTrack4 = new FlightTrack("MSK024", "50000", "75000", "6666", "20190322085220678");

            _uut.Add(_testTrack3);
            _uut.Add(_testTrack4);

            Assert.That(_testTrack4.Velocity, Is.EqualTo(Math.Round(8.0626208332560637821, 2)));
        }
Ejemplo n.º 19
0
        public void Adding2Flights_TestingWith_ZEqualZero_Track2_Compass()
        {
            var _testTrack31 = new FlightTrack("MMB759", "78842", "32654", "7562", "20190411133536356");
            var _testTrack32 = new FlightTrack("MMB759", "78842", "32654", "0", "20190411133936356");

            _uut.Add(_testTrack31);
            _uut.Add(_testTrack32);
            Assert.That(_testTrack32.CompassCourse, Is.EqualTo(0));
            //TestTrack 10 is not valid thus is not inserted into list. Which means there is no possibility of calulating course
        }
Ejemplo n.º 20
0
        public TrackForm(FlightTrack selectedTrack) : this()
        {
            _flightTrack = selectedTrack;

            UpdateInformation();

            _filter = new CommonFilterCollection(typeof(IFlightFilterParams));

            _animatedThreadWorker.DoWork             += AnimatedThreadWorkerDoLoad;
            _animatedThreadWorker.RunWorkerCompleted += BackgroundWorkerRunWorkerLoadCompleted;
        }
Ejemplo n.º 21
0
 public ActionResult Edit([Bind(Include = "flightTrackID,price,ticketID,flightID")] FlightTrack flightTrack)
 {
     if (ModelState.IsValid)
     {
         db.Entry(flightTrack).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.flightID = new SelectList(db.flights, "flightID", "departingAirport", flightTrack.flightID);
     return(View(flightTrack));
 }
Ejemplo n.º 22
0
        public TrackForm(List <IFlightNumberParams> selectedTrips) : this()
        {
            _selectedItems = selectedTrips;
            _flightTrack   = new FlightTrack();

            _saveRecords = true;

            UpdateInformation();

            _animatedThreadWorker.DoWork             += AnimatedThreadWorkerDoLoad;
            _animatedThreadWorker.RunWorkerCompleted += BackgroundWorkerRunWorkerLoadCompleted;
        }
Ejemplo n.º 23
0
        public void Adding2Flights_TestingCalculate_Velocity_ChangingTimeToZero()
        {
            var _testTrack7 = new FlightTrack("AMB015", "45337", "72000", "6666", "20190322085020678");
            var _testTrack8 = new FlightTrack("AMB015", "60940", "80000", "6666", "20190322085020678");

            _uut.Add(_testTrack7);
            //_uut.Add(_testTrack8);

            var ex = Assert.Throws <DivideByZeroException>(() => _uut.Add(_testTrack8));

            Assert.That(ex.Message, Is.EqualTo("Time can't be zero. You can't divide by zero"));
        }
Ejemplo n.º 24
0
        // GET: FlightTracks/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            FlightTrack flightTrack = db.flightTracks.Find(id);

            if (flightTrack == null)
            {
                return(HttpNotFound());
            }
            return(View(flightTrack));
        }
Ejemplo n.º 25
0
        // GET: FlightTracks/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            FlightTrack flightTrack = db.flightTracks.Find(id);

            if (flightTrack == null)
            {
                return(HttpNotFound());
            }
            ViewBag.flightID = new SelectList(db.flights, "flightID", "departingAirport", flightTrack.flightID);
            return(View(flightTrack));
        }
        public void AddFlight_FlightWithSameTagIsAlreadyWithinList_FlightIsReplaced()
        {
            var _testTrack1 = new FlightTrack("ABC123", "25684", "68556", "6666", "20190320191050000");

            //Have to manually create track to avoid exception being thrown
            _uut.ListOfFlights.Add(_testTrack1);

            var flightTrack = TrackFactory.CreateTestTrack();

            _flightValidator.Validate(_uut, flightTrack).Returns(true);

            _uut.Add(flightTrack);

            Assert.That(_eventToTest.Tracks.Count(t => t.Tag == flightTrack.Tag), Is.EqualTo(1));
        }
Ejemplo n.º 27
0
        public void EnterAirspace_Adds_To_WhatShouldBeShow(string tag1)
        {
            // arrange
            IFlightTrack track = new FlightTrack(tag1)
            {
                LatestTime       = new DateTime(2018, 1, 1),
                NavigationCourse = double.NaN,
                Position         = new Position(0, 0, 0),
                Velocity         = 0
            };

            //act
            _fakeFlightObserver.EnteredAirspace += Raise.EventWith(_fakeFlightObserver, new FlightTrackEventArgs(track));

            //assert
            Assert.That(_ssut_view.ThingsToRender.First().Item1, Does.Contain(tag1));
        }
        public void GivenTwoPositionRecords_CalculateVelocity(int lon1, int lat1, int alt1, int lon2, int lat2, int alt2, int time, double expectedVelocity)
        {
            _uut = new FlightTrack("AAA123");
            var record1 = new FlightRecord()
            {
                Position = new Position(lat1, lon1, alt1), Timestamp = new DateTime(2018, 1, 1, 0, 0, 0)
            };
            var record2 = new FlightRecord()
            {
                Position = new Position(lat2, lon2, alt2), Timestamp = new DateTime(2018, 1, 1, 0, 0, 0 + time)
            };

            _uut.Update(record1);
            _uut.Update(record2);

            Assert.That(_uut.Velocity, Is.EqualTo(expectedVelocity));
        }
        [TestCase(-1, -1, 1, 1, 45)]         // North East
        public void GivenTwoPositionRecords_CalculateNavigationCourse(int lat1, int lon1, int lat2, int lon2, double expectedCourse)
        {
            _uut = new FlightTrack("AAA123");
            var record1 = new FlightRecord()
            {
                Position = new Position(lat1, lon1, 0)
            };
            var record2 = new FlightRecord()
            {
                Position = new Position(lat2, lon2, 0)
            };

            _uut.Update(record1);
            _uut.Update(record2);

            Assert.That(_uut.NavigationCourse, Is.EqualTo(expectedCourse).Within(0.001));
        }
        public void UpdateTheCurrentTrackOfTheFlight_ForTwoRecordsOfSameFlight()

        {
            // Arrange
            var tracks        = new List <IFlightTrack>();
            var factory       = new FlightRecordFactory();
            var record1       = factory.CreateRecord("AGJ063;39563;95000;16800;20181001160609975");
            var record2       = factory.CreateRecord("AGJ063;0;0;0;20191001160609975");
            var expectedTrack = new FlightTrack("AGJ063");

            expectedTrack.Update(record1);
            expectedTrack.Update(record2);

            //Act
            tracks.SortRecordByTag(record1);
            tracks.SortRecordByTag(record2);

            //Assert
            Assert.AreEqual(1, tracks.Count());
            Assert.AreEqual(expectedTrack.Tag, tracks.First().Tag);
        }