Beispiel #1
0
        private static List <Friend> GetFriendsNext(string friendName)
        {
            var friendVisit = friends.Where(p => p.Name == friendName).FirstOrDefault();
            var distance    = new GeoDistance();

            return(distance.ListFriendsNext(friends, friendVisit));
        }
Beispiel #2
0
        public void TestGeoDistanceOrderedMaxThree()
        {
            var distance   = new GeoDistance();
            var listFriend = new List <Friend>();

            #region Situation

            listFriend.Add(new Friend()
            {
                Id            = 1,
                Name          = "Ricardo",
                FriendAddress = new FriendAddress()
                {
                    Id              = 0,
                    Address         = "Campo Grande RJ",
                    NumberLatitude  = -22.9035842,
                    NumberLongitude = -43.5662438
                }
            });

            listFriend.Add(new Friend()
            {
                Id            = 2,
                Name          = "Júlio Cesar",
                FriendAddress = new FriendAddress()
                {
                    Id              = 0,
                    Address         = "Mangaratiba RJ",
                    NumberLatitude  = -22.9161789,
                    NumberLongitude = -44.0389554
                }
            });

            listFriend.Add(new Friend()
            {
                Id            = 3,
                Name          = "Cesar",
                FriendAddress = new FriendAddress()
                {
                    Id              = 0,
                    Address         = "Rio das Ostras RJ",
                    NumberLatitude  = -22.4650817,
                    NumberLongitude = -41.9394892
                }
            });

            listFriend.Add(new Friend()
            {
                Id            = 4,
                Name          = "Ronaldo",
                FriendAddress = new FriendAddress()
                {
                    Id              = 0,
                    Address         = "São José dos Campos SP",
                    NumberLatitude  = -23.223701,
                    NumberLongitude = -45.9009074
                }
            });

            #endregion

            #region Action

            List <Friend> resultListFriend = distance.ListFriendsNext(listFriend.Where(p => p.Id != 1).ToList(), listFriend.Where(p => p.Id == 1).FirstOrDefault());

            #endregion

            #region Validation

            Assert.AreEqual(resultListFriend.Count, 3);
            Assert.AreEqual(2, resultListFriend[0].Id);
            Assert.AreEqual(3, resultListFriend[1].Id);
            Assert.AreEqual(4, resultListFriend[2].Id);

            #endregion
        }