static void Main(string[] args) { try { CDataProvider provider = new CDataProvider(); var firstList = provider.GetNamesFromAToM(); Console.WriteLine($"FirstList first element:{firstList.FirstOrDefault()} last element:{firstList.LastOrDefault()} length: {firstList.Count()}"); var secondList = provider.GetNamesFromNToZ(); Console.WriteLine($"SecondList first element:{secondList.FirstOrDefault()} last element:{secondList.LastOrDefault()} length: {secondList.Count()}"); var fullList = CInteractor_2.GetConcatinate(firstList, secondList); var groupedList = CInteractor_2.GetGroupedByLastNumberOfCode(fullList); foreach (IGrouping <Char, INamed> keyGroupSequence in groupedList) { Console.WriteLine($"\nCountries with codes that ends with: {keyGroupSequence.Key}\n"); foreach (INamed value in keyGroupSequence) { Console.WriteLine($"Country: {value}"); } } } catch (Exception e) { Console.WriteLine(e.Message); } Console.ReadLine(); }
public void ShouldConcatinate() { //Arrange String _path = "./../../Countries.txt"; List <INamed> returnedArray = CService.ReadFromTextFile(_path); //Act IEnumerable <INamed> result = CInteractor_2.GetConcatinate(returnedArray.Take(100), returnedArray.Skip(100)); //Assert Assert.IsTrue(result.Count() == 240); }
public void ShouldGroupingByLastNumOfCode() { //Arrange String _path = "./../../Countries.txt"; List <INamed> returnedArray = CService.ReadFromTextFile(_path); //Act IEnumerable <IGrouping <Char, INamed> > result = CInteractor_2.GetGroupedByLastNumberOfCode(returnedArray); //Assert Assert.IsTrue(result.First().Key == '0'); Assert.IsTrue(result.First().Count() == 47); }