public void AddOne() { Catalog catalog = new Catalog(); string[] entryParams = { "Intro C#", "S.Nakov", "12763892", "http://www.introprogramming.info" }; CatalogEntry entry = new CatalogEntry(Content.Book, entryParams); catalog.Add(entry); IEnumerable<IContent> searchResult = catalog.GetListContent("Intro C#", 1); int actualCount = searchResult.Count(); Assert.AreEqual(1, actualCount); }
public void Add_ExecutesOKOnDuplicates() { Catalog catalog = new Catalog(); string commandStr = "Add movie: One; James Wong (2001); 969763002; http://www.imdb.com/title/tt0267804/"; ICommand command = new Command(commandStr); ICommandExecutor executor = new CommandExecutor(); for (int i = 0; i < 3; i++) { executor.ExecuteCommand(catalog, command, new System.Text.StringBuilder()); } }
public static void Main() { StringBuilder output = new StringBuilder(); Catalog catalog = new Catalog(); ICommandExecutor commandExecutor = new CommandExecutor(); foreach (ICommand item in GetCommands()) { commandExecutor.ExecuteCommand(catalog, item, output); } Console.Write(output); }
public static void Main() { StringBuilder output = new StringBuilder(); Catalog catalog = new Catalog(); ICommandExecutor executor = new CommandExecutor(); List<ICommand> commandsForExecution = Parse(); foreach (ICommand item in commandsForExecution) { executor.ExecuteCommand(catalog, item, output); } //Console.BackgroundColor = ConsoleColor.DarkGreen; Console.Write(output); }
public void GetListContent_MatchedEqualToRequested() { Catalog catalog = new Catalog(); string commandStr = "Add movie: One; James Wong (2001); 969763002; http://www.imdb.com/title/tt0267804/"; ICommand command = new Command(commandStr); ICommandExecutor executor = new CommandExecutor(); for (int i = 0; i < 3; i++) { executor.ExecuteCommand(catalog, command, new System.Text.StringBuilder()); } IEnumerable<IContent> result = catalog.GetListContent("One", 3); Assert.AreEqual(3, result.Count()); }
public void GetListContent_MatchedLessThanTheRequested() { string[] commandStrings = { "Add movie: One; James Wong (2001); 969763002; http://www.imdb.com/title/tt0267804/", "Add song: One; Metallica (2000); 734837437; http://sample.net", "Add application: Google Chrome; Chrome; 374837837; http://google.com"}; Catalog catalog = new Catalog(); ICommandExecutor executor = new CommandExecutor(); foreach (string commandString in commandStrings) { ICommand command = new Command(commandString); executor.ExecuteCommand(catalog, command, new System.Text.StringBuilder()); } IEnumerable<IContent> result = catalog.GetListContent("One", 6); Assert.AreEqual(2, result.Count()); }
public void AddMultipleEntries() { Catalog catalog = new Catalog(); string[] entryParams = { "Intro C#", "S.Nakov", "12763892", "http://www.introprogramming.info" }; CatalogEntry entry = new CatalogEntry(Content.Book, entryParams); catalog.Add(entry); AddSomeEntries(catalog, ref entryParams, ref entry); bool searchIsAccurate = true; IEnumerable<IContent> searchResult = catalog.GetListContent("One", 3); if (searchResult.Count() != 2) { searchIsAccurate = false; } searchResult = catalog.GetListContent("Angel Of Death", 3); if (searchResult.Count() != 1) { searchIsAccurate = false; } searchResult = catalog.GetListContent("EazFuscator.NET", 1); if (searchResult.Count() != 1) { searchIsAccurate = false; } searchResult = catalog.GetListContent("Intro C#", 40); if (searchResult.Count() != 1) { searchIsAccurate = false; } Assert.AreEqual(true, searchIsAccurate); }
public void GetListContent_ThrowsExceptionOnEmptyTitle() { Catalog catalog = new Catalog(); catalog.GetListContent("", 2); }
public void SearchForMoreEntries() { Catalog catalog = new Catalog(); string[] entryParams = { "Intro C#", "S.Nakov", "12763892", "http://www.introprogramming.info" }; CatalogEntry entry = new CatalogEntry(Content.Book, entryParams); catalog.Add(entry); AddSomeEntries(catalog, ref entryParams, ref entry); catalog.Add(entry); catalog.Add(entry); catalog.Add(entry); catalog.Add(entry); catalog.Add(entry); catalog.Add(entry); catalog.Add(entry); catalog.Add(entry); catalog.Add(entry); bool searchIsAccurate = false; IEnumerable<IContent> searchResult = catalog.GetListContent("One", 300); if (searchResult.Count() == 11) { searchIsAccurate = true; } Assert.AreEqual(true, searchIsAccurate); }
public void Add_ThrowsExceptionOnNullParameter() { Catalog catalog = new Catalog(); catalog.Add(null); }
public void UpdateContent_ThrowsExceptionOnNullParameter() { Catalog catalog = new Catalog(); catalog.UpdateContent(null, "new url"); }
public void UpdateContent_Returns0OnNonExistingKeyEntry() { Catalog catalog = new Catalog(); int updated = catalog.UpdateContent("non-existing", "another"); Assert.AreEqual(0, updated); }
public void UpdateContent_Returns0OnEqualUrlParams() { Catalog catalog = new Catalog(); string commandStr = "Add movie: One; James Wong (2001); 969763002; http://www.imdb.com/title/tt0267804/"; ICommand command = new Command(commandStr); ICommandExecutor executor = new CommandExecutor(); executor.ExecuteCommand(catalog, command, new System.Text.StringBuilder()); int updated = catalog.UpdateContent("http://www.imdb.com/title/tt0267804/", "http://www.imdb.com/title/tt0267804/"); Assert.AreEqual(0, updated); }
public void UpdateWithNoMatches() { Catalog catalog = new Catalog(); string[] entryParams = { "Intro C#", "S.Nakov", "12763892", "http://www.introprogramming.info" }; CatalogEntry entry = new CatalogEntry(Content.Book, entryParams); catalog.Add(entry); AddSomeEntries(catalog, ref entryParams, ref entry); int updated = catalog.UpdateContent("http://www.lalala.info", "http://www.introprogramming.info/en/"); Assert.AreEqual(0, updated); }
public void UpdateContent_OnSingleMatchingElement() { string[] commandStrings = { "Add movie: One; James Wong (2001); 969763002; http://www.imdb.com/title/tt0267804/", "Add song: One; Metallica (2000); 734837437; http://sample.net", "Add application: Google Chrome; Chrome; 374837837; http://google.com"}; Catalog catalog = new Catalog(); ICommandExecutor executor = new CommandExecutor(); foreach (string commandString in commandStrings) { ICommand command = new Command(commandString); executor.ExecuteCommand(catalog, command, new System.Text.StringBuilder()); } int updated = catalog.UpdateContent("http://google.com", "http://google.bg"); Assert.AreEqual(1, updated); }
public void GetListContent_ThrowsExceptionOnNegativeElementsValue() { Catalog catalog = new Catalog(); catalog.GetListContent("Some title", -23); }
public void GetListContent_ReturnsEmptyListOnNonExisting() { Catalog catalog = new Catalog(); IEnumerable<IContent> result = catalog.GetListContent("some title", 5); Assert.AreEqual(0, result.Count()); }
public void DoubleUpdateAnEntry() { Catalog catalog = new Catalog(); string[] entryParams = { "Intro C#", "S.Nakov", "12763892", "http://www.introprogramming.info" }; CatalogEntry entry = new CatalogEntry(Content.Book, entryParams); catalog.Add(entry); int updated = catalog.UpdateContent("http://www.introprogramming.info", "http://www.introprogramming.info/en/"); Assert.AreEqual(1, updated); updated = catalog.UpdateContent("http://www.introprogramming.info", "http://www.introprogramming.info/en/"); Assert.AreEqual(0, updated); }
private static void AddSomeEntries(Catalog catalog, ref string[] entryParams, ref CatalogEntry entry) { entryParams = new string[] { "One", "James Wong (2001)", "969763002", "http://www.imdb.com/title/tt0267804/" }; entry = new CatalogEntry(Content.Movie, entryParams); catalog.Add(entry); entryParams = new string[] { "Angel Of Death", "Slayer", "365763002", "http://lalala.com" }; entry = new CatalogEntry(Content.Song, entryParams); catalog.Add(entry); entryParams = new string[] { "EazFuscator.NET", "Kharkiv", "362268542", "http://lolerskates.com" }; entry = new CatalogEntry(Content.Application, entryParams); catalog.Add(entry); entryParams = new string[] { "One", "James Wong (2001)", "969763002", "http://www.imdb.com/title/tt0267804/" }; entry = new CatalogEntry(Content.Movie, entryParams); catalog.Add(entry); entryParams = new string[] { "One", "James Wong (2001)", "969763002", "http://www.imdb.com/title/tt0267804/" }; entry = new CatalogEntry(Content.Movie, entryParams); }