static void Main(string[] args) { string FileNamePathToWrite; ILogger logger = LogFactory.CreatLogger(); IMessage errorMessage = MessageFactory.CreatMessage(Message.MessageType.Error); IDisplay display; NamesFile file; List <Name> names; try { // //Get file name/path from app.config // FileNamePathToWrite = ConfigurationManager.AppSettings["FileNamePathToWrite"]; // //create screen display object from the factory // display = DisplayFactory.CreatDisplay(); // //get file name and path for reading names from command parameter; file name and path for writing names to is set by program // file = FileInfoValidator.GetFile(args, FileNamePathToWrite); // //only proceed further if file is available // if (file != null) { // // get list of name object by reading // names = ReadNamesHelper.ReadNamesFromStorage(file); // //do sorting on names // names = NameSorter.Sort(names); // //writing sorted names to a storage // WriteNamesHelper.WriteNamesToStorage(file, names); // //display sorted name list on screen // display.DisplayName(names); } } catch (Exception ex) { logger.Log(ex.Message); errorMessage.DisplayMessage(ex.Message); } }
public void TestNameSorter() { string input = "unsorted-names-list.txt"; string output = "Test-ouput.txt"; ISorter GlobalXNameSorter = new NameSorter(input, output); GlobalXNameSorter.Sort(); }
public void Sort_NamesShouldSort() { // //names for testing // Name name1 = new Name("John", "Smith"); Name name2 = new Name("Jake Jackson", "Lee"); Name name3 = new Name("Rob", "Smyth"); Name name4 = new Name("Angela", "Nash"); // //unsorted name list // List <Name> unsorted = new List <Name>(); unsorted.Add(name1); unsorted.Add(name2); unsorted.Add(name3); unsorted.Add(name4); // //expected name list // List <Name> expected = new List <Name>(); expected.Add(name2); expected.Add(name4); expected.Add(name1); expected.Add(name3); // //actual sorted name list // List <Name> actual = NameSorter.Sort(unsorted); // //Assert // Assert.Equal(expected[0].FirstName, actual[0].FirstName); Assert.Equal(expected[0].LastName, actual[0].LastName); Assert.Equal(expected[1].FirstName, actual[1].FirstName); Assert.Equal(expected[1].LastName, actual[1].LastName); Assert.Equal(expected[2].FirstName, actual[2].FirstName); Assert.Equal(expected[2].LastName, actual[2].LastName); Assert.Equal(expected[3].FirstName, actual[3].FirstName); Assert.Equal(expected[3].LastName, actual[3].LastName); //Assert.Equal(expected, actual); }
static void Main(string[] args) { IDataProvider dataProvider = new HardcodedDataProvider(); IDataSorter dataSorter = new NameSorter(); var data = dataProvider.GetPeople(); var sortedData = dataSorter.Sort(data); foreach (var item in sortedData) { Console.WriteLine($"{item.name} {item.LastName} {item.Position});
public void TestSorterWithSameLastNames() { // Arrange List <Name> input = new List <Name>(); input.Add(new Name("Yuzuru Nishimiya")); input.Add(new Name("Shouko Nishimiya")); List <Name> expected = new List <Name>(); expected.Add(new Name("Shouko Nishimiya")); expected.Add(new Name("Yuzuru Nishimiya")); // Act List <Name> actual = NameSorter.Sort(input); // Assert Assert.Equal(expected, actual); }
public void TestSorterWithUniqueNames() { // Arrange List <Name> input = new List <Name>(); input.Add(new Name("Janet Parsons")); input.Add(new Name("Beau Tristan Bentley")); input.Add(new Name("Hunter Uriah Mathew Clarke")); List <Name> expected = new List <Name>(); expected.Add(new Name("Beau Tristan Bentley")); expected.Add(new Name("Hunter Uriah Mathew Clarke")); expected.Add(new Name("Janet Parsons")); // Act List <Name> actual = NameSorter.Sort(input); // Assert Assert.Equal(expected, actual); }
public void NameSorter_ShouldWork() { // //names for testing // Name name1 = new Name("John", "Smith"); Name name2 = new Name("Jake Jackson", "Lee"); Name name3 = new Name("Rob", "Smyth"); Name name4 = new Name("Angela", "Nash"); // //unsorted name list // List <Name> unsorted = new List <Name>(); unsorted.Add(name1); unsorted.Add(name2); unsorted.Add(name3); unsorted.Add(name4); // //expected sorted name list // List <Name> expected = new List <Name>(); expected.Add(name2); expected.Add(name4); expected.Add(name1); expected.Add(name3); // //actual sorted name list // List <Name> actual = NameSorter.Sort(unsorted); // //Assert // Assert.Equal(expected, actual); }
// Main: Used to demonstrate usage of IFileProcessor & INameSorter functions private static void Main(string[] args) { // 1st argument is taken in as directory param string directory = args[0]; // Initializes FileProcessor & NameSorter IFileProcessor processor = new FileProcessor(directory); INameSorter sorter = new NameSorter(); // Finds filename from given directory, reads file & map to NameModel IEnumerable <NameModel> nameList = processor.ReadFile(FileName.SOURCE); // Performs sorting on name list IEnumerable <NameModel> sortedList = sorter.Sort(nameList); // Writes to console processor.WriteToConsole(sortedList); // Writes to file processor.WriteToFile(sortedList, FileName.DESTINATION); }