public void SortByPrerequisite_InvalidDependency_ThrowsException() { // Arrange ClassLogic logic = new ClassLogic(); List<string> inputStringArray = new List<string> { @"TestClass2:TestClass3", @"TestClass1" }; // Act and Assert DependencyException<ClassItem> exception = Assert.Throws<DependencyException<ClassItem>>(() => logic.SortByPrerequisite(inputStringArray)); Assert.Equal(1, exception.AffectedItems.Count); Assert.Equal("TestClass3", exception.AffectedItems[0].Name); }
public void SortByPrerequisite_SingleClassNoDependencySpecified_CanSortByPrerequisite() { // Arrange ClassLogic logic = new ClassLogic(); List<string> inputStringArray = new List<string> { @"TestClass1" }; // Act List<string> sortedArray = logic.SortByPrerequisite(inputStringArray).ToList(); // Assert Assert.Equal(1, sortedArray.Count); Assert.Equal("TestClass1", sortedArray[0]); }
public void SortByPrerequisite_EmptyLine_CanSortByPrerequisite() { // Arrange ClassLogic logic = new ClassLogic(); List<string> inputStringArray = new List<string> { @"TestClass2:TestClass1", " ", @"TestClass1" }; // Act List<string> sortedArray = logic.SortByPrerequisite(inputStringArray).ToList(); // Assert Assert.Equal(2, sortedArray.Count); Assert.Equal("TestClass1", sortedArray[0]); Assert.Equal("TestClass2", sortedArray[1]); }
static void Main(string[] args) { if (args.Count() != 1) { Console.WriteLine("Usage: Justin.1800Contacts.App.Exe [source]"); Console.WriteLine(); Console.WriteLine("\tsource\tSpecifies the location of the source file."); Console.WriteLine(); Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } string sourceFilePath = args[0]; if (!File.Exists(sourceFilePath)) { Console.WriteLine("'{0}' could not be found.", sourceFilePath); Console.WriteLine(); Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } try { IList<string> fileInputList = new List<string>(); using (StreamReader file = new StreamReader(sourceFilePath)) { string line; while((line = file.ReadLine()) != null) { fileInputList.Add(line); } } IClassLogic classLogic = new ClassLogic(); Console.WriteLine(string.Join(", ", classLogic.SortByPrerequisite(fileInputList))); } catch (Exception e) { Console.WriteLine("Error: {0}", e.Message); } Console.WriteLine(); Console.WriteLine("Press any key to continue..."); Console.ReadKey(); }