static void Main(string[] args) { List<Book> library = new List<Book> { new Book("Михаил Булгаков", "Мастер и Маргарита", 462, "Эксмо", 2006), new Book("Фёдор Достоевский", "Преступление и наказание", 630, "АСТ, Неоклассик", 2006), new Book("Михаил Лермонтов", "Герой нашего времени", 189, "АСТ, Неоклассик", 2008), new Book("Лев Толстой", "Анна Каренина", 706, "Издательский Дом Ридерз Дайджест", 2006), }; BookListService service = new BookListService(library); DisplayBook(service.ListBooks); Book bookToAdd = new Book("Александр Пушкин", "Евгений Онегин", 203, "Питер", 2012); service.AddBook(bookToAdd); DisplayBook(service.ListBooks); service.RemoveBook(library[2]); DisplayBook(service.ListBooks); ComparerByNumberOfPages compareNumberOfPages = new ComparerByNumberOfPages(); ComparerByPublisher comparePublisher = new ComparerByPublisher(); ComparerByTitle comaperTitle = new ComparerByTitle(); ComparerByYearIssued comaperYearIssued = new ComparerByYearIssued(); service.SortsBooksByTag(comaperTitle); DisplayBook(service.ListBooks); IEnumerable<Book> resultBook = service.FindByTag(book => book.YearIssued == 2006); foreach (var item in resultBook) Console.WriteLine(item); Console.ReadKey(); }
public void ComparerByTitle_Compare_BarsAreNull() { // Arrange var comparer = new ComparerByTitle(); var newBar = new BarData { Title = "" }; // Investigate mocking // Act && Assert Assert.Throws <ArgumentNullException>(() => comparer.Compare(null, newBar)); Assert.Throws <ArgumentNullException>(() => comparer.Compare(newBar, null)); Assert.Throws <ArgumentNullException>(() => comparer.Compare(null, null)); }
public void ComparerByTitle_Compare_TitlesAreNull(string title1, string title2) { // Arrange var comparer = new ComparerByTitle(); // Investigate mocking var bar1 = new BarData { Title = title1 }; var bar2 = new BarData { Title = title2 }; // Act && Assert Assert.Throws <ArgumentNullException>(() => comparer.Compare(bar1, bar2)); }
public void ComparerByTitle_Compare_Equal(string title) { // Arrange var bar1 = new BarData { Title = title }; var bar2 = new BarData { Title = title }; var expectedValue = 0; // Act var returnValue = new ComparerByTitle().Compare(bar1, bar2); // Assert Assert.AreEqual(expectedValue, returnValue); }
public void ComparerByTitle_Compare_SecondIsBigger(string title1, string title2) { // Arrange var bar1 = new BarData { Title = title1 }; var bar2 = new BarData { Title = title2 }; var expectedValue = 1; // Act var returnValue = new ComparerByTitle().Compare(bar1, bar2); // Assert Assert.AreEqual(expectedValue, returnValue); }