コード例 #1
0
        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();
        }
コード例 #2
0
        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));
        }
コード例 #3
0
        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));
        }
コード例 #4
0
        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);
        }
コード例 #5
0
        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);
        }