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)); }
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 }