From add42f3ced008277abe0e72f6f9fec770630b680 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Wed, 30 Jul 2025 21:37:14 +0300 Subject: [PATCH 01/25] Second test --- tests.py | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/tests.py b/tests.py index 383385e..1cf2552 100644 --- a/tests.py +++ b/tests.py @@ -1,24 +1,16 @@ from main import BooksCollector - -# класс TestBooksCollector объединяет набор тестов, которыми мы покрываем наше приложение BooksCollector -# обязательно указывать префикс Test class TestBooksCollector: - # пример теста: - # обязательно указывать префикс test_ - # дальше идет название метода, который тестируем add_new_book_ - # затем, что тестируем add_two_books - добавление двух книг def test_add_new_book_add_two_books(self): - # создаем экземпляр (объект) класса BooksCollector collector = BooksCollector() - - # добавляем две книги collector.add_new_book('Гордость и предубеждение и зомби') collector.add_new_book('Что делать, если ваш кот хочет вас убить') - - # проверяем, что добавилось именно две - # словарь books_rating, который нам возвращает метод get_books_rating, имеет длину 2 assert len(collector.get_books_rating()) == 2 - # напиши свои тесты ниже - # чтобы тесты были независимыми в каждом из них создавай отдельный экземпляр класса BooksCollector() \ No newline at end of file +class TestBooksCollector: + + def test_add_new_book_add_two__equal_books(self): + collector = BooksCollector() + collector.add_new_book('Гордость и предубеждение и зомби') + collector.add_new_book('Гордость и предубеждение и зомби') + assert len(collector.get_books_rating()) == 1 \ No newline at end of file From 0b841afb34fc47ec2f54001a4ae039049172b857 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Wed, 30 Jul 2025 21:53:53 +0300 Subject: [PATCH 02/25] Change Second test --- tests.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests.py b/tests.py index 1cf2552..894e94d 100644 --- a/tests.py +++ b/tests.py @@ -9,8 +9,8 @@ def test_add_new_book_add_two_books(self): class TestBooksCollector: - def test_add_new_book_add_two__equal_books(self): + def test_add_new_book_add_two__equal_books_fail(self): collector = BooksCollector() collector.add_new_book('Гордость и предубеждение и зомби') collector.add_new_book('Гордость и предубеждение и зомби') - assert len(collector.get_books_rating()) == 1 \ No newline at end of file + assert len(collector.get_books_genre()) == 1 \ No newline at end of file From c7cf98b67c22d6d9df247dbe67547fda81e4ab75 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Wed, 30 Jul 2025 22:03:40 +0300 Subject: [PATCH 03/25] Third test --- tests.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tests.py b/tests.py index 894e94d..4f2dd53 100644 --- a/tests.py +++ b/tests.py @@ -9,8 +9,15 @@ def test_add_new_book_add_two_books(self): class TestBooksCollector: - def test_add_new_book_add_two__equal_books_fail(self): + def test_add_new_book_add_two__equal_books_failed(self): collector = BooksCollector() collector.add_new_book('Гордость и предубеждение и зомби') collector.add_new_book('Гордость и предубеждение и зомби') - assert len(collector.get_books_genre()) == 1 \ No newline at end of file + assert len(collector.get_books_genre()) == 1 + +class TestBooksCollector: + + def test_add_new_book_add_books_len_more_than_40_failed(self): + collector = BooksCollector() + collector.add_new_book('Сказка о царе Салтане, о сыне его славном и могучем богатыре князе Гвидоне Салтановиче и о прекрасной Царевне Лебеди') + assert len(collector.get_books_genre()) == 0 \ No newline at end of file From a4a26fa0bd4fcd8c2480411e4f06020bd10a39ca Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Wed, 30 Jul 2025 22:17:58 +0300 Subject: [PATCH 04/25] Change books' titles --- tests.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/tests.py b/tests.py index 4f2dd53..353a303 100644 --- a/tests.py +++ b/tests.py @@ -11,8 +11,8 @@ class TestBooksCollector: def test_add_new_book_add_two__equal_books_failed(self): collector = BooksCollector() - collector.add_new_book('Гордость и предубеждение и зомби') - collector.add_new_book('Гордость и предубеждение и зомби') + collector.add_new_book('Джейн Эйр') + collector.add_new_book('Темная башня') assert len(collector.get_books_genre()) == 1 class TestBooksCollector: @@ -20,4 +20,13 @@ class TestBooksCollector: def test_add_new_book_add_books_len_more_than_40_failed(self): collector = BooksCollector() collector.add_new_book('Сказка о царе Салтане, о сыне его славном и могучем богатыре князе Гвидоне Салтановиче и о прекрасной Царевне Лебеди') + assert len(collector.get_books_genre()) == 0 + + +class TestBooksCollector: + + def test_add_book_in_favorites_sucsess(self): + collector = BooksCollector() + collector.add_new_book('Преступление и наказание') + assert len(collector.get_books_genre()) == 0 \ No newline at end of file From 31a08f6bf7f72d1ba7c91f0359d2254ca3ee4779 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Wed, 30 Jul 2025 22:26:00 +0300 Subject: [PATCH 05/25] Fourth test --- tests.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests.py b/tests.py index 353a303..d166a53 100644 --- a/tests.py +++ b/tests.py @@ -28,5 +28,5 @@ class TestBooksCollector: def test_add_book_in_favorites_sucsess(self): collector = BooksCollector() collector.add_new_book('Преступление и наказание') - - assert len(collector.get_books_genre()) == 0 \ No newline at end of file + collector.add_book_in_favorites('Преступление и наказание') + assert len(collector.get_list_of_favorites_books()) == 1 \ No newline at end of file From 70580a95d58d98f63071d8d899b112eac25121e2 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Wed, 30 Jul 2025 22:28:58 +0300 Subject: [PATCH 06/25] Change the title of fourth test --- tests.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests.py b/tests.py index d166a53..0204bdb 100644 --- a/tests.py +++ b/tests.py @@ -25,7 +25,7 @@ def test_add_new_book_add_books_len_more_than_40_failed(self): class TestBooksCollector: - def test_add_book_in_favorites_sucsess(self): + def test_add_book_in_favorites_sucсess(self): collector = BooksCollector() collector.add_new_book('Преступление и наказание') collector.add_book_in_favorites('Преступление и наказание') From f17f0aa8d7aa3539bdb82914d86f8c1cb97c6c78 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Wed, 30 Jul 2025 22:34:57 +0300 Subject: [PATCH 07/25] Fith test --- tests.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests.py b/tests.py index 0204bdb..b1aced4 100644 --- a/tests.py +++ b/tests.py @@ -29,4 +29,13 @@ def test_add_book_in_favorites_sucсess(self): collector = BooksCollector() collector.add_new_book('Преступление и наказание') collector.add_book_in_favorites('Преступление и наказание') + assert len(collector.get_list_of_favorites_books()) == 1 + +class TestBooksCollector: + + def test_add_book_in_favorites_two_equal_books_failed(self): + collector = BooksCollector() + collector.add_new_book('Виола Тараканова') + collector.add_book_in_favorites('Виола Тараканова') + collector.add_book_in_favorites('Виола Тараканова') assert len(collector.get_list_of_favorites_books()) == 1 \ No newline at end of file From b946b74a3ad3e23c37fa4c0f1e3fd39c96bf9ce4 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Wed, 30 Jul 2025 22:42:06 +0300 Subject: [PATCH 08/25] Six test --- tests.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tests.py b/tests.py index b1aced4..858ff21 100644 --- a/tests.py +++ b/tests.py @@ -38,4 +38,11 @@ def test_add_book_in_favorites_two_equal_books_failed(self): collector.add_new_book('Виола Тараканова') collector.add_book_in_favorites('Виола Тараканова') collector.add_book_in_favorites('Виола Тараканова') - assert len(collector.get_list_of_favorites_books()) == 1 \ No newline at end of file + assert len(collector.get_list_of_favorites_books()) == 1 + +def test_delete_book_from_favorites_success(): + collector = BooksCollector() + collector.add_new_book('Сказка о золотой рыбке') + collector.add_book_in_favorites('Сказка о золотой рыбке') + collector.delete_book_from_favorites('Сказка о золотой рыбке') + assert len(collector.get_list_of_favorites_books()) == 0 \ No newline at end of file From 12d7731167668036b1ca8a31d74587173979dbaa Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Thu, 31 Jul 2025 22:12:20 +0300 Subject: [PATCH 09/25] Seven test and add class to Six test --- tests.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/tests.py b/tests.py index 858ff21..a47d752 100644 --- a/tests.py +++ b/tests.py @@ -40,9 +40,22 @@ def test_add_book_in_favorites_two_equal_books_failed(self): collector.add_book_in_favorites('Виола Тараканова') assert len(collector.get_list_of_favorites_books()) == 1 -def test_delete_book_from_favorites_success(): +class TestBooksCollector: + + def test_delete_book_from_favorites_success(): collector = BooksCollector() collector.add_new_book('Сказка о золотой рыбке') collector.add_book_in_favorites('Сказка о золотой рыбке') collector.delete_book_from_favorites('Сказка о золотой рыбке') - assert len(collector.get_list_of_favorites_books()) == 0 \ No newline at end of file + assert len(collector.get_list_of_favorites_books()) == 0 + + +import pytest + +class TestBooksCollector: + @pytest.mark.parametrize('genre', ['Фантастика', 'Ужасы', 'Детективы', 'Мультфильмы', 'Комедии']) + def test_set_book_genre_assign_genre_success(self, genre): + collector = BooksCollector() + collector.add_new_book('Бегущий по лезвию') + collector.set_book_genre('Бегущий по лезвию', genre) + assert collector.get_book_genre('Бегущий по лезвию') == genre \ No newline at end of file From 24c8db14b742778991b8eb9bc3ccfb14439c8985 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Thu, 31 Jul 2025 22:21:42 +0300 Subject: [PATCH 10/25] Eight test --- tests.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/tests.py b/tests.py index a47d752..8b81f69 100644 --- a/tests.py +++ b/tests.py @@ -58,4 +58,14 @@ def test_set_book_genre_assign_genre_success(self, genre): collector = BooksCollector() collector.add_new_book('Бегущий по лезвию') collector.set_book_genre('Бегущий по лезвию', genre) - assert collector.get_book_genre('Бегущий по лезвию') == genre \ No newline at end of file + assert collector.get_book_genre('Бегущий по лезвию') == genre + +import pytest + +class TestBooksCollector: + @pytest.mark.parametrize('genre_not_inlist', ['Триллер', 'Мелодрама']) + def test_set_book_genre_assign_genre_not_inlist_failed(self, genre_not_inlist): + collector = BooksCollector() + collector.add_new_book('Поющие в терновнике') + collector.set_book_genre('Поющие в терновнике', genre_not_inlist) + assert collector.get_book_genre('Поющие в терновнике') != genre_not_inlist \ No newline at end of file From ed2751ee922ec15c934045ead3fab93babe63a34 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Thu, 31 Jul 2025 22:57:53 +0300 Subject: [PATCH 11/25] Nine test --- tests.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/tests.py b/tests.py index 8b81f69..02f9b89 100644 --- a/tests.py +++ b/tests.py @@ -68,4 +68,20 @@ def test_set_book_genre_assign_genre_not_inlist_failed(self, genre_not_inlist): collector = BooksCollector() collector.add_new_book('Поющие в терновнике') collector.set_book_genre('Поющие в терновнике', genre_not_inlist) - assert collector.get_book_genre('Поющие в терновнике') != genre_not_inlist \ No newline at end of file + assert collector.get_book_genre('Поющие в терновнике') != genre_not_inlist + +import pytest + +class TestBooksCollector: + @pytest.mark.parametrize('name,genre', [ + ['Заживо в темноте', 'Ужасы'], + ['Золотой теленок', 'Комедии'], + ['Восточный экспресс', 'Детективы'] +] +) + def test_get_book_genre_by_name_success(self, name, genre): + collector = BooksCollector() + collector.add_new_book(name) + collector.set_book_genre(name, genre) + assert collector.get_book_genre(name) == genre + From 4513959145e01b52e4a82feda533691b6f5b8753 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Sat, 2 Aug 2025 16:45:41 +0300 Subject: [PATCH 12/25] Tenth test --- tests.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tests.py b/tests.py index 02f9b89..9be6754 100644 --- a/tests.py +++ b/tests.py @@ -85,3 +85,18 @@ def test_get_book_genre_by_name_success(self, name, genre): collector.set_book_genre(name, genre) assert collector.get_book_genre(name) == genre +import pytest + +class TestBooksCollector: + @pytest.mark.parametrize('name,genre', [ + ['Заживо в темноте', 'Ужасы'], + ['Восточный экспресс', 'Детективы'] + ] + ) + def test_get_books_with_specific_genre(self, name, genre): + collector = BooksCollector() + collector.add_new_book(name) + collector.set_book_genre(name, genre) + books_with_specific_genre = collector.get_books_with_specific_genre(genre) + assert name in books_with_specific_genre + \ No newline at end of file From 418235cfb9f5ef2eef9b32411d647c6a3b84db6d Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Sat, 2 Aug 2025 17:52:20 +0300 Subject: [PATCH 13/25] Eleventh test --- tests.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/tests.py b/tests.py index 9be6754..acf5d41 100644 --- a/tests.py +++ b/tests.py @@ -99,4 +99,20 @@ def test_get_books_with_specific_genre(self, name, genre): collector.set_book_genre(name, genre) books_with_specific_genre = collector.get_books_with_specific_genre(genre) assert name in books_with_specific_genre - \ No newline at end of file + +import pytest + +class TestBooksCollector: + @pytest.mark.parametrize('name,genre,specific_genre', [ + ['Заживо в темноте', 'Ужасы', True], + ['Восточный экспресс', 'Детективы', True], + ['Золотой ключик','Мультфильм', False] + ] + ) + def test_get_books_for_children(self, name, genre, specific_genre): + collector = BooksCollector() + collector.add_new_book(name) + collector.set_book_genre(name, genre) + books_with_specific_genre = collector.get_books_with_specific_genre(specific_genre) + books_for_children = collector.get_books_for_children() + assert len(books_for_children) != books_with_specific_genre From 458328920f11e4fa08859309691a450e73678355 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Sat, 2 Aug 2025 18:31:52 +0300 Subject: [PATCH 14/25] Twefth test --- tests.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests.py b/tests.py index acf5d41..0c98318 100644 --- a/tests.py +++ b/tests.py @@ -116,3 +116,13 @@ def test_get_books_for_children(self, name, genre, specific_genre): books_with_specific_genre = collector.get_books_with_specific_genre(specific_genre) books_for_children = collector.get_books_for_children() assert len(books_for_children) != books_with_specific_genre + + + +class TestBooksCollector: + + def test_get_list_of_favorites_books_success(self): + collector = BooksCollector() + collector.add_new_book('Золотой ключик') + collector.add_book_in_favorites('Золотой ключик') + assert len(collector.get_list_of_favorites_books()) == 1 \ No newline at end of file From 9c18f57f83b4c02129a30efb4b45caf65818f83c Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Sat, 2 Aug 2025 18:47:30 +0300 Subject: [PATCH 15/25] Change secont test --- tests.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests.py b/tests.py index 0c98318..3400add 100644 --- a/tests.py +++ b/tests.py @@ -12,7 +12,7 @@ class TestBooksCollector: def test_add_new_book_add_two__equal_books_failed(self): collector = BooksCollector() collector.add_new_book('Джейн Эйр') - collector.add_new_book('Темная башня') + collector.add_new_book('Джейн Эйр') assert len(collector.get_books_genre()) == 1 class TestBooksCollector: From b2f364ca6fec9be92eb6574130e25d61e0c74097 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Sat, 2 Aug 2025 19:05:04 +0300 Subject: [PATCH 16/25] Delete unnesessery elements --- tests.py | 36 +++--------------------------------- 1 file changed, 3 insertions(+), 33 deletions(-) diff --git a/tests.py b/tests.py index 3400add..31aaa1d 100644 --- a/tests.py +++ b/tests.py @@ -1,13 +1,12 @@ from main import BooksCollector +import pytest class TestBooksCollector: def test_add_new_book_add_two_books(self): collector = BooksCollector() collector.add_new_book('Гордость и предубеждение и зомби') collector.add_new_book('Что делать, если ваш кот хочет вас убить') - assert len(collector.get_books_rating()) == 2 - -class TestBooksCollector: + assert len(collector.get_books_genre()) == 2 def test_add_new_book_add_two__equal_books_failed(self): collector = BooksCollector() @@ -15,24 +14,17 @@ def test_add_new_book_add_two__equal_books_failed(self): collector.add_new_book('Джейн Эйр') assert len(collector.get_books_genre()) == 1 -class TestBooksCollector: - def test_add_new_book_add_books_len_more_than_40_failed(self): collector = BooksCollector() collector.add_new_book('Сказка о царе Салтане, о сыне его славном и могучем богатыре князе Гвидоне Салтановиче и о прекрасной Царевне Лебеди') assert len(collector.get_books_genre()) == 0 - -class TestBooksCollector: - def test_add_book_in_favorites_sucсess(self): collector = BooksCollector() collector.add_new_book('Преступление и наказание') collector.add_book_in_favorites('Преступление и наказание') assert len(collector.get_list_of_favorites_books()) == 1 -class TestBooksCollector: - def test_add_book_in_favorites_two_equal_books_failed(self): collector = BooksCollector() collector.add_new_book('Виола Тараканова') @@ -40,19 +32,13 @@ def test_add_book_in_favorites_two_equal_books_failed(self): collector.add_book_in_favorites('Виола Тараканова') assert len(collector.get_list_of_favorites_books()) == 1 -class TestBooksCollector: - - def test_delete_book_from_favorites_success(): + def test_delete_book_from_favorites_success(self): collector = BooksCollector() collector.add_new_book('Сказка о золотой рыбке') collector.add_book_in_favorites('Сказка о золотой рыбке') collector.delete_book_from_favorites('Сказка о золотой рыбке') assert len(collector.get_list_of_favorites_books()) == 0 - -import pytest - -class TestBooksCollector: @pytest.mark.parametrize('genre', ['Фантастика', 'Ужасы', 'Детективы', 'Мультфильмы', 'Комедии']) def test_set_book_genre_assign_genre_success(self, genre): collector = BooksCollector() @@ -60,9 +46,6 @@ def test_set_book_genre_assign_genre_success(self, genre): collector.set_book_genre('Бегущий по лезвию', genre) assert collector.get_book_genre('Бегущий по лезвию') == genre -import pytest - -class TestBooksCollector: @pytest.mark.parametrize('genre_not_inlist', ['Триллер', 'Мелодрама']) def test_set_book_genre_assign_genre_not_inlist_failed(self, genre_not_inlist): collector = BooksCollector() @@ -70,9 +53,6 @@ def test_set_book_genre_assign_genre_not_inlist_failed(self, genre_not_inlist): collector.set_book_genre('Поющие в терновнике', genre_not_inlist) assert collector.get_book_genre('Поющие в терновнике') != genre_not_inlist -import pytest - -class TestBooksCollector: @pytest.mark.parametrize('name,genre', [ ['Заживо в темноте', 'Ужасы'], ['Золотой теленок', 'Комедии'], @@ -85,9 +65,6 @@ def test_get_book_genre_by_name_success(self, name, genre): collector.set_book_genre(name, genre) assert collector.get_book_genre(name) == genre -import pytest - -class TestBooksCollector: @pytest.mark.parametrize('name,genre', [ ['Заживо в темноте', 'Ужасы'], ['Восточный экспресс', 'Детективы'] @@ -100,9 +77,6 @@ def test_get_books_with_specific_genre(self, name, genre): books_with_specific_genre = collector.get_books_with_specific_genre(genre) assert name in books_with_specific_genre -import pytest - -class TestBooksCollector: @pytest.mark.parametrize('name,genre,specific_genre', [ ['Заживо в темноте', 'Ужасы', True], ['Восточный экспресс', 'Детективы', True], @@ -117,10 +91,6 @@ def test_get_books_for_children(self, name, genre, specific_genre): books_for_children = collector.get_books_for_children() assert len(books_for_children) != books_with_specific_genre - - -class TestBooksCollector: - def test_get_list_of_favorites_books_success(self): collector = BooksCollector() collector.add_new_book('Золотой ключик') From 9388abc7734d20bcc49b4441ded4ae3c68c03244 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Sat, 2 Aug 2025 20:02:29 +0300 Subject: [PATCH 17/25] Change titles of tests --- tests.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests.py b/tests.py index 31aaa1d..43bb695 100644 --- a/tests.py +++ b/tests.py @@ -14,7 +14,7 @@ def test_add_new_book_add_two__equal_books_failed(self): collector.add_new_book('Джейн Эйр') assert len(collector.get_books_genre()) == 1 - def test_add_new_book_add_books_len_more_than_40_failed(self): + def test_add_new_book_len_more_than_40_failed(self): collector = BooksCollector() collector.add_new_book('Сказка о царе Салтане, о сыне его славном и могучем богатыре князе Гвидоне Салтановиче и о прекрасной Царевне Лебеди') assert len(collector.get_books_genre()) == 0 @@ -40,14 +40,14 @@ def test_delete_book_from_favorites_success(self): assert len(collector.get_list_of_favorites_books()) == 0 @pytest.mark.parametrize('genre', ['Фантастика', 'Ужасы', 'Детективы', 'Мультфильмы', 'Комедии']) - def test_set_book_genre_assign_genre_success(self, genre): + def test_set_book_genre_in_list_success(self, genre): collector = BooksCollector() collector.add_new_book('Бегущий по лезвию') collector.set_book_genre('Бегущий по лезвию', genre) assert collector.get_book_genre('Бегущий по лезвию') == genre @pytest.mark.parametrize('genre_not_inlist', ['Триллер', 'Мелодрама']) - def test_set_book_genre_assign_genre_not_inlist_failed(self, genre_not_inlist): + def test_set_book_genre_not_inlist_failed(self, genre_not_inlist): collector = BooksCollector() collector.add_new_book('Поющие в терновнике') collector.set_book_genre('Поющие в терновнике', genre_not_inlist) @@ -70,7 +70,7 @@ def test_get_book_genre_by_name_success(self, name, genre): ['Восточный экспресс', 'Детективы'] ] ) - def test_get_books_with_specific_genre(self, name, genre): + def test_get_books_with_specific_genre_success(self, name, genre): collector = BooksCollector() collector.add_new_book(name) collector.set_book_genre(name, genre) @@ -83,7 +83,7 @@ def test_get_books_with_specific_genre(self, name, genre): ['Золотой ключик','Мультфильм', False] ] ) - def test_get_books_for_children(self, name, genre, specific_genre): + def test_get_books_for_children_success(self, name, genre, specific_genre): collector = BooksCollector() collector.add_new_book(name) collector.set_book_genre(name, genre) From 9caee6a230521dde38d5f4245795d33878551239 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Mon, 4 Aug 2025 21:53:52 +0300 Subject: [PATCH 18/25] Add fixture in all tests --- .coverage | Bin 0 -> 53248 bytes .../conftest.cpython-313-pytest-8.4.1.pyc | Bin 0 -> 498 bytes __pycache__/main.cpython-313.pyc | Bin 0 -> 3594 bytes .../tests.cpython-313-pytest-8.4.1.pyc | Bin 0 -> 18583 bytes conftest.py | 5 +++ read.md | 12 ++++++ tests.py | 36 ++++++------------ 7 files changed, 29 insertions(+), 24 deletions(-) create mode 100644 .coverage create mode 100644 __pycache__/conftest.cpython-313-pytest-8.4.1.pyc create mode 100644 __pycache__/main.cpython-313.pyc create mode 100644 __pycache__/tests.cpython-313-pytest-8.4.1.pyc create mode 100644 conftest.py create mode 100644 read.md diff --git a/.coverage b/.coverage new file mode 100644 index 0000000000000000000000000000000000000000..c15ee3cfec34ceafc0edbdc07ee38f5ec8a82b5d GIT binary patch literal 53248 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 O!X3oF7s40s=>GvaoZLPD literal 0 HcmV?d00001 diff --git a/conftest.py b/conftest.py new file mode 100644 index 0000000..3830882 --- /dev/null +++ b/conftest.py @@ -0,0 +1,5 @@ +from main import BooksCollector +import pytest +@pytest.fixture +def collector(): + return BooksCollector() diff --git a/read.md b/read.md new file mode 100644 index 0000000..9ad37ea --- /dev/null +++ b/read.md @@ -0,0 +1,12 @@ +1 тест(базовый) add_new_book_add_two_books проверяет добавление 2 новых книг в словарь без указания жанра +2 тест add_new_book_add_two_equal_books_failed проверяет, что при добавлении 2 одинаковых книг в словарь добавляется только 1 книга +3 тест test_add_new_book__len_more_than_40_failed проверяет, что в словарь не добавляются книги, название которых более 40 символов +4 тест test_add_book_in_favorites_sucсess проверяет успешное добавление книги в избранное +5 тест test_add_book_in_favorites_two_equal_books_failed проверяет, что повторно одна и та же книга в избранное не добавляется +6 тест test_delete_book_from_favorites_success проверяет удаление книги из избранного +7 тест test_set_book_genre_in_list_success проверяет корректность присвоения методом жанра книги и возврат установленного жанра +8 тест test_set_book_genre_assign_genre_not_inlist_failed проверяет, что метод не присваевает книге невалидный жанр +9 тест test_get_book_genre_by_name_success проверяет вывод жанра книги по ее названию +10 тест test_get_books_with_specific_genre_success проверяет список книг с определённым жанром +11 тест test_get_books_for_children_success проверяет книги, которые подходят детям(у которых не установлен специальный рейтинг +12 тест test_get_list_of_favorites_books_success проверяет, что после добавления книги в избранное, книга добавляется в избранное diff --git a/tests.py b/tests.py index 43bb695..b0a72f6 100644 --- a/tests.py +++ b/tests.py @@ -2,53 +2,45 @@ import pytest class TestBooksCollector: - def test_add_new_book_add_two_books(self): - collector = BooksCollector() + def test_add_new_book_add_two_books(self, collector): collector.add_new_book('Гордость и предубеждение и зомби') collector.add_new_book('Что делать, если ваш кот хочет вас убить') assert len(collector.get_books_genre()) == 2 - def test_add_new_book_add_two__equal_books_failed(self): - collector = BooksCollector() + def test_add_new_book_add_two__equal_books_failed(self, collector): collector.add_new_book('Джейн Эйр') collector.add_new_book('Джейн Эйр') assert len(collector.get_books_genre()) == 1 - def test_add_new_book_len_more_than_40_failed(self): - collector = BooksCollector() + def test_add_new_book_len_more_than_40_failed(self, collector): collector.add_new_book('Сказка о царе Салтане, о сыне его славном и могучем богатыре князе Гвидоне Салтановиче и о прекрасной Царевне Лебеди') assert len(collector.get_books_genre()) == 0 - def test_add_book_in_favorites_sucсess(self): - collector = BooksCollector() + def test_add_book_in_favorites_sucсess(self, collector): collector.add_new_book('Преступление и наказание') collector.add_book_in_favorites('Преступление и наказание') assert len(collector.get_list_of_favorites_books()) == 1 - def test_add_book_in_favorites_two_equal_books_failed(self): - collector = BooksCollector() + def test_add_book_in_favorites_two_equal_books_failed(self, collector): collector.add_new_book('Виола Тараканова') collector.add_book_in_favorites('Виола Тараканова') collector.add_book_in_favorites('Виола Тараканова') assert len(collector.get_list_of_favorites_books()) == 1 - def test_delete_book_from_favorites_success(self): - collector = BooksCollector() + def test_delete_book_from_favorites_success(self, collector): collector.add_new_book('Сказка о золотой рыбке') collector.add_book_in_favorites('Сказка о золотой рыбке') collector.delete_book_from_favorites('Сказка о золотой рыбке') assert len(collector.get_list_of_favorites_books()) == 0 @pytest.mark.parametrize('genre', ['Фантастика', 'Ужасы', 'Детективы', 'Мультфильмы', 'Комедии']) - def test_set_book_genre_in_list_success(self, genre): - collector = BooksCollector() + def test_set_book_genre_in_list_success(self, genre, collector): collector.add_new_book('Бегущий по лезвию') collector.set_book_genre('Бегущий по лезвию', genre) assert collector.get_book_genre('Бегущий по лезвию') == genre @pytest.mark.parametrize('genre_not_inlist', ['Триллер', 'Мелодрама']) - def test_set_book_genre_not_inlist_failed(self, genre_not_inlist): - collector = BooksCollector() + def test_set_book_genre_not_inlist_failed(self, genre_not_inlist, collector): collector.add_new_book('Поющие в терновнике') collector.set_book_genre('Поющие в терновнике', genre_not_inlist) assert collector.get_book_genre('Поющие в терновнике') != genre_not_inlist @@ -59,8 +51,7 @@ def test_set_book_genre_not_inlist_failed(self, genre_not_inlist): ['Восточный экспресс', 'Детективы'] ] ) - def test_get_book_genre_by_name_success(self, name, genre): - collector = BooksCollector() + def test_get_book_genre_by_name_success(self, name, genre, collector): collector.add_new_book(name) collector.set_book_genre(name, genre) assert collector.get_book_genre(name) == genre @@ -70,8 +61,7 @@ def test_get_book_genre_by_name_success(self, name, genre): ['Восточный экспресс', 'Детективы'] ] ) - def test_get_books_with_specific_genre_success(self, name, genre): - collector = BooksCollector() + def test_get_books_with_specific_genre_success(self, name, genre, collector): collector.add_new_book(name) collector.set_book_genre(name, genre) books_with_specific_genre = collector.get_books_with_specific_genre(genre) @@ -83,16 +73,14 @@ def test_get_books_with_specific_genre_success(self, name, genre): ['Золотой ключик','Мультфильм', False] ] ) - def test_get_books_for_children_success(self, name, genre, specific_genre): - collector = BooksCollector() + def test_get_books_for_children_success(self, name, genre, specific_genre, collector): collector.add_new_book(name) collector.set_book_genre(name, genre) books_with_specific_genre = collector.get_books_with_specific_genre(specific_genre) books_for_children = collector.get_books_for_children() assert len(books_for_children) != books_with_specific_genre - def test_get_list_of_favorites_books_success(self): - collector = BooksCollector() + def test_get_list_of_favorites_books_success(self, collector): collector.add_new_book('Золотой ключик') collector.add_book_in_favorites('Золотой ключик') assert len(collector.get_list_of_favorites_books()) == 1 \ No newline at end of file From 8ee6fd9f3c677cc23052c1f40e31c4e3987f219c Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Mon, 4 Aug 2025 23:11:18 +0300 Subject: [PATCH 19/25] Change ninth test --- .../tests.cpython-313-pytest-8.4.1.pyc | Bin 18583 -> 18160 bytes tests.py | 6 ++++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/__pycache__/tests.cpython-313-pytest-8.4.1.pyc b/__pycache__/tests.cpython-313-pytest-8.4.1.pyc index 379d3efa42fd20af75b7010400fd616a52f707ae..57c125b2bafe213b53cc378b36eb008e64d2812b 100644 GIT binary patch delta 568 zcmbO}k?}(>Bj0CUUM>b8XcnHBAtt<$Z(3!%S7`MdhxG>RuGpU6FEG)VPD| z2EXJ*ex>UiP;`kysiO+cgD|e5h+RbCK~!AhP?`}6*9BC8#Dfc8=1?lqW7uqER>H)X zI(fZ?99K~?$h|2*V)9Fi1f^6E4-^Ox&*XquAkP$~frxY a4++Mu$r&DUf}xCzj*Ooez!cDj3=9BqiKco0 delta 787 zcmZ9I&2JJ>6vgMk44I+8(3XO=O>IgGi~^w|P^?2}#A+}R17b|nC=FmkrQn-t0*z_o zN*9{cyYMeCVM%4>(v@la2&8IL7P>GlHAI#!^gXDw>15`2@44r^JIQN3MK3mxp{>_z z8S>mi8;d^&HVv;leLRtB^0nP+c;~qYkB*wGkqIV=e269)rjSgkPG2B3>*x-c^C*28 zVp^+!lA2Q}p}H1_g6}3g8x>%8+C?iHLkTq??l>52iRYtcSZAH^(l!CNbz1oAjKfD( zfWpZjytdyMWMx#mdWVsOOIRR(kWl#wY+5X^=y0xiB}LLc9GB(sDMzsskQA&ZktVyG z%4cwdra3HF?oG03K#(``QS{tDZhk@TJl`#bT&%SpUC zbTEEE^~PU#KXyaaQ?A*3e~^aWOmi4gfnmL*+P~p4%y~@^3tTrIy1E=FULSl51~Fs?Ec?&`ROB&Yy_Jt~I88ig%NWhqvZ3!RO4Oof3&@xyW4ui9 zfT9FjkrA{CKO(!LnhUh`oJQ5sk*=kM59jKW>omkstWvlsP7pNtGx diff --git a/tests.py b/tests.py index b0a72f6..91bb03b 100644 --- a/tests.py +++ b/tests.py @@ -54,7 +54,9 @@ def test_set_book_genre_not_inlist_failed(self, genre_not_inlist, collector): def test_get_book_genre_by_name_success(self, name, genre, collector): collector.add_new_book(name) collector.set_book_genre(name, genre) - assert collector.get_book_genre(name) == genre + book_genre = collector.get_book_genre(name) + assert book_genre == genre + @pytest.mark.parametrize('name,genre', [ ['Заживо в темноте', 'Ужасы'], @@ -83,4 +85,4 @@ def test_get_books_for_children_success(self, name, genre, specific_genre, colle def test_get_list_of_favorites_books_success(self, collector): collector.add_new_book('Золотой ключик') collector.add_book_in_favorites('Золотой ключик') - assert len(collector.get_list_of_favorites_books()) == 1 \ No newline at end of file + assert len(collector.get_list_of_favorites_books()) == 1 From b014ea870522568c01e7741b94c7898d96900437 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Mon, 4 Aug 2025 23:28:50 +0300 Subject: [PATCH 20/25] Change eleventh test --- .../tests.cpython-313-pytest-8.4.1.pyc | Bin 18160 -> 18118 bytes tests.py | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/__pycache__/tests.cpython-313-pytest-8.4.1.pyc b/__pycache__/tests.cpython-313-pytest-8.4.1.pyc index 57c125b2bafe213b53cc378b36eb008e64d2812b..6764d347e005386dc77853f5a5d9e88a4bad2459 100644 GIT binary patch delta 704 zcmey+%XqApk@qt%FBbz491)+GA-$3JyBYgR##>C8c`GM#o3CTc+q}#C2qUA_(gy_Yj45uDFG?wkGKR97Fa|S4h?y{%vOwg5nJ2H8p3KY~ z%mSnXCnsBrO%{_;m^{;(mn)c6k4cw}fgz7`@&yq^akfwnpl0@nQiSGE&R`C(wgeu| z$vQT?V68y5j6Y*AM=&Q;J6AAQFn1`I0VCKj?n&a>jNFs;WyK~Ruwkv|@hi#(x}+!< zM5F?VTS7_s`Ps$sY57I*$r+hBDMhJyMadx9Xdt1pBqFJn|plGWAVw-6e z7v+H@nTotY3Vnb?6<=a;acWTsSb+slfiFk_Pmu&jK>&!z2NJg!#U}IHiA|PM)?m`) znY_?e)c|BrQ3;3$0udn~A`M8~;&v#g1i30VvBbP63@B2}10)nC|FA7$d@(uO&bj`E zfXGDwtqU9;7xXZ-#ShRVTlL`}e0m!EnAfkHmNf&9x+Raa0 zycl^r89(!~vax;OVP*B4Z0(k$(gae%3LS@%2>uB@6ngOL%%-fZ!|>*N?|bi?nQvXR-$m+ys>&Q) zFZ4H$lAqK+GZBIYq2(39Rd{*SRmSjilXhX^)pUE(P_8gKScRD%htUu(4wBR=B zV+d;Jp(~EzJn^Q?DQDvX@rb;IjWTAeNIW-2ZG!~Nm-XrjOYp8n4|kM7oI!#@dt}M; z?z?M#szg&d6^ZJmnBgXaRSJV77?mWPn8=2R0$XLX$R@fjgA40ug(Ix{r zEPh0-*IuCQ9AiWICynXmQAih2Bd@L~i?-hYgZN2>5To^e$r Date: Tue, 5 Aug 2025 21:41:35 +0300 Subject: [PATCH 21/25] Add thirteenth test --- .../tests.cpython-313-pytest-8.4.1.pyc | Bin 18118 -> 19632 bytes tests.py | 14 ++++++++++++++ 2 files changed, 14 insertions(+) diff --git a/__pycache__/tests.cpython-313-pytest-8.4.1.pyc b/__pycache__/tests.cpython-313-pytest-8.4.1.pyc index 6764d347e005386dc77853f5a5d9e88a4bad2459..6601569f96c3d5a9e8a95f5b692ef9a2d5859e36 100644 GIT binary patch delta 1163 zcmZXROH5Ni6ozN+y{)%X+VU!vN1zSS+{;Ul3Sy`{ER|>k^osErsHIdArS)D&EIv@< zLKiM%RxXUPbYnDKV4{h-A#r7iO>DX|F($5fiL6YVGp$hLEWVs`{(t72oLPK`Up~h6 zb(@VKcIt=bE-7V?>~lEzYW^cGs6cv&R->0j+^Q!L6P6qCMq;$NSj3@((fUF(kFz_O zavE%}FpsfN57Wc#p&F>_et-=S1)Kmx0GARU+s|MeOw@Kf5eqLvX%fKSDyBWY5;W3Gtl*>&#H)&>;KkRC#)&xz` z%-W77F?wiNI?#_$bXZ|6;Ea8ugQV6e51YJLvz+#Ng?&<1(FiSSJ3d!cMsG_En9vW_ zTXxObBsH25nlx(#nvE{(Jwm&8l4G%x5v1A&^bvMb?*ohi4g-RK0D~%K_0g@W1*&*v zV3!h$dsTy6=K&p2lv74_JLIOKlACUy&ka($YVdWblJ0;%QH8%CyyzE@rJd#htMS2@c(#zli)Pstb34%ZilvgA-!(5z%3 zNr&>;QMZCvm~QMyH*}`=23B`Sdk8Nv>>;a2DkPiWSO+Z2KhRGLzgowuYf#;kkwosa zZGy1z*R}%L{Wy31%DFJPW69NL|GB;;u#vdHCt&a93E77K34Ba`XB%wl?5upG?M`|V z+xBxbpgJ>jr~jIBf~ERZKpb!baF;&ySK@p0jlT-_Cer=`*t%vHO+9#nSWSew0_Us` gz-I#7qqhPsGRH#pgUG0&&jL=zMU2TB0`h);0L--{8vpb8I3hkVLt1zu-z3IU8yB8rWGfO*m)BI-T*mZXm$7tnnt>2A zW76hI<8{nzsX*1YBqzT&mt-$W2C|D%Ci|Kv%Y%fATtEabh{yvGK_DUxM5J#%Zyw3W zn6O#XaxOD>Hb^KJM5Io>Xd}UxJo%N4B4gfU9$Q1k{K Date: Tue, 5 Aug 2025 22:06:54 +0300 Subject: [PATCH 22/25] The last commit --- read.md | 1 + 1 file changed, 1 insertion(+) diff --git a/read.md b/read.md index 9ad37ea..88a3628 100644 --- a/read.md +++ b/read.md @@ -10,3 +10,4 @@ 10 тест test_get_books_with_specific_genre_success проверяет список книг с определённым жанром 11 тест test_get_books_for_children_success проверяет книги, которые подходят детям(у которых не установлен специальный рейтинг 12 тест test_get_list_of_favorites_books_success проверяет, что после добавления книги в избранное, книга добавляется в избранное +13 тест test_get_book_genre_success проверяет, что метод выводит ожидаемый результат из добавленных книг и их жанров From 5ca7269f9a7d98e7fe45f4fce0f4410be86b6745 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Wed, 6 Aug 2025 20:54:41 +0300 Subject: [PATCH 23/25] The final commit --- read.md | 23 +++++++++++------------ tests.py | 5 ----- 2 files changed, 11 insertions(+), 17 deletions(-) diff --git a/read.md b/read.md index 88a3628..cff91fc 100644 --- a/read.md +++ b/read.md @@ -1,13 +1,12 @@ 1 тест(базовый) add_new_book_add_two_books проверяет добавление 2 новых книг в словарь без указания жанра -2 тест add_new_book_add_two_equal_books_failed проверяет, что при добавлении 2 одинаковых книг в словарь добавляется только 1 книга -3 тест test_add_new_book__len_more_than_40_failed проверяет, что в словарь не добавляются книги, название которых более 40 символов -4 тест test_add_book_in_favorites_sucсess проверяет успешное добавление книги в избранное -5 тест test_add_book_in_favorites_two_equal_books_failed проверяет, что повторно одна и та же книга в избранное не добавляется -6 тест test_delete_book_from_favorites_success проверяет удаление книги из избранного -7 тест test_set_book_genre_in_list_success проверяет корректность присвоения методом жанра книги и возврат установленного жанра -8 тест test_set_book_genre_assign_genre_not_inlist_failed проверяет, что метод не присваевает книге невалидный жанр -9 тест test_get_book_genre_by_name_success проверяет вывод жанра книги по ее названию -10 тест test_get_books_with_specific_genre_success проверяет список книг с определённым жанром -11 тест test_get_books_for_children_success проверяет книги, которые подходят детям(у которых не установлен специальный рейтинг -12 тест test_get_list_of_favorites_books_success проверяет, что после добавления книги в избранное, книга добавляется в избранное -13 тест test_get_book_genre_success проверяет, что метод выводит ожидаемый результат из добавленных книг и их жанров +2 тест test_add_new_book__len_more_than_40_failed проверяет, что в словарь не добавляются книги, название которых более 40 символов +3 тест test_add_book_in_favorites_sucсess проверяет успешное добавление книги в избранное +4 тест test_add_book_in_favorites_two_equal_books_failed проверяет, что повторно одна и та же книга в избранное не добавляется +5 тест test_delete_book_from_favorites_success проверяет удаление книги из избранного +6 тест test_set_book_genre_in_list_success проверяет корректность присвоения методом жанра книги и возврат установленного жанра +7 тест test_set_book_genre_assign_genre_not_inlist_failed проверяет, что метод не присваевает книге невалидный жанр +8 тест test_get_book_genre_by_name_success проверяет вывод жанра книги по ее названию +9 тест test_get_books_with_specific_genre_success проверяет список книг с определённым жанром +10 тест test_get_books_for_children_success проверяет книги, которые подходят детям(у которых не установлен специальный рейтинг +11 тест test_get_list_of_favorites_books_success проверяет, что после добавления книги в избранное, книга добавляется в избранное +12 тест test_get_book_genre_success проверяет, что метод выводит ожидаемый результат из добавленных книг и их жанров diff --git a/tests.py b/tests.py index 4b07b8c..67231ee 100644 --- a/tests.py +++ b/tests.py @@ -7,11 +7,6 @@ def test_add_new_book_add_two_books(self, collector): collector.add_new_book('Что делать, если ваш кот хочет вас убить') assert len(collector.get_books_genre()) == 2 - def test_add_new_book_add_two__equal_books_failed(self, collector): - collector.add_new_book('Джейн Эйр') - collector.add_new_book('Джейн Эйр') - assert len(collector.get_books_genre()) == 1 - def test_add_new_book_len_more_than_40_failed(self, collector): collector.add_new_book('Сказка о царе Салтане, о сыне его славном и могучем богатыре князе Гвидоне Салтановиче и о прекрасной Царевне Лебеди') assert len(collector.get_books_genre()) == 0 From 3931a2921b6ab90ce3415a551516b4cbae378a14 Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Sat, 9 Aug 2025 20:07:55 +0300 Subject: [PATCH 24/25] change the eight test again --- .../tests.cpython-313-pytest-8.4.1.pyc | Bin 19632 -> 18749 bytes tests.py | 6 ++---- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/__pycache__/tests.cpython-313-pytest-8.4.1.pyc b/__pycache__/tests.cpython-313-pytest-8.4.1.pyc index 6601569f96c3d5a9e8a95f5b692ef9a2d5859e36..28cfd02c797e7609ae2b7c70e2409d8d75446495 100644 GIT binary patch delta 1882 zcmZvcT})eL7{||hdfL*K9zIGb#X^Bf;RvG`D1|}60+CN)^w5QjNhzZsZcuhknPHi- zCClP8W@FFPd1LU>L=)n<)p_qOMxBVM7rQcXS0G$yG!ozEl$Js~fnT5Jeg6OV`<%_s z$afD2e_%En8T!a;pT4zUw9Y>uKdgV@VJ{kBy|Rc6+91JNoO%x<=8O?9i%NzO4W*1X z6*5xpNvTmZiMbv&BQP1=~U9FJ9; zWyw2X>9Wxkl#CHdyUJ3^+996e^T!Y>!^qA<3=q9~zx3RvnhgL6f6zM021{(T*priblnQ)>1^b;aAv?-*4 zKUnLly;V$zcu7hV3x(LT{R|VEt35LHky$#K$;=o*9jtRj#Ucsmnu*9x1e;m!QBl;u zZdV2DwHFW$D!FpFUu=X`&P=m0&IyN{K{rZ7&15Ql>@ct*cghjtY^u5zmE4i?FkmFw zQ^K`?5r*s2UEd5C;FB|Drh@cJsWTFA!spr&3+E@x=jZ80kEn+#kn7`cQ)h#LJ|}!s zYo2KmWWo4uh2LLMUAw&M6J!aGA;~R87Nb&thJsegqd!s~0!NSv5f+NS`G_n>rMPNs z6Xc|3d9_V2CQUQ3*kw69A6=57(g;+#>Z;NQJ&j)MRvjjF+SQo4LD%nupvwXqf(~~5 zIq+@M$XXpO$y*dRnLVCy*X`&X3BBXdctT(G3vb)u-3i{krT1>}?v3~}zMh7g+63?2 z(I5Ri!&-eNO$FO}@B0gxw#0Ep3$&+9Wk-JjyZK4)-H2xzsXU#j^3$DD^`m`zv3v$NPLedt;mFnb14Q2&U9q_XbS)f>v~9ZR8b9N8!Du zM)=M5Hfe!#txqf$v9X(CT+m2UnDi(OZI3jj1&l8vrXkT$qFcmp0(LtbP1upZssl;` zG(ItvRyvhI6yzRF1$|4<=^s*8A_d@{-(I86Wd%#>%dEb~F`6b#uPv{J=VH=gB<{nP z+J8-lS3&+A@|#~)Vx6Y{`}#P{4*0%%j*KYoo^4HCW=+zYI6^NXwKN*hWvX?xGzIRy zdAE9Par@L8D@8DxL1}t7vB8da6khb1OOHQ4ZY-#CpT#H&PkqJU>mMefa=Tw9qzL{R zXwPrNS}UR*(FOg3&hR*f7Z7uZtB6&^4a6En(i#rS@ko5(QaBQiOA9kA@u(aQOSe$a zfWVtCY16=On(QYGbBEdI;K|@-9;Xg7@PpxDz8LY_0sZDyNs{>qsDWG4wR?lVYr7XJZ$eXM@~ delta 1752 zcmaKrUrbw79LIZZ3%f0}Jb7GNL%;*rEe$H=% zZBjzCV|G5#Ntf?MEy;>nphpcKxPgo1=^i4Cr5cYg8Z(D4%i5+;EN4Y45%^so-0LQSQ)OnsN?j;u zhlk}}(g78o>%^n}==sA$LU6O{J;tZ2za`aQ)qpAV5-Lw4UO+eyXBY%CtwLK{x1u$S z5D{U-2;v+PVaJBvz>4)CtMLP)+rexo&>3mPeApFqW zPI@4>;j@-7e3xg2?nWyto4lIc);hkV@EuttgO={wRpwMS=Maz!YvP+w0BQv@m)p8t1 z0VbNx>rO046LC5dNx~a}O2}^-&BfX)AHl

LsUV%h|BuZ1_BS$Ju(ta@X$Ou=}?7 z-QQ2V@5*9kq#K+2<~H_?bj2^c@7hSliz%{3ndv*ck2V_AP;-*Yoxp>-;eNpFqES4# zjKCy?JpBrs1riwcp-wA~o@5+{S~n-rnqq*G>5i zYhQlt?7kWk3+;Q|iG;ce_TJS|bPYq=Ujg5QUL`N9NBR^(obZ1C31>5|1rR3?ClNi6 z?yrcxh~@=E3^9jTK)i{##E^DMl9G%hS+OF?B#n*DCuK#F=sPHAMARd49>K^ArH8%P zcMUrxV@`0#0_O*A*iAWA53D)4+;%>*wrx-{xLLjO$mg-m(tPJkJUTxupQLM0aN1)Z MBgC>}Kxz^H2fB}%1ONa4 diff --git a/tests.py b/tests.py index 67231ee..6366358 100644 --- a/tests.py +++ b/tests.py @@ -47,10 +47,8 @@ def test_set_book_genre_not_inlist_failed(self, genre_not_inlist, collector): ] ) def test_get_book_genre_by_name_success(self, name, genre, collector): - collector.add_new_book(name) - collector.set_book_genre(name, genre) - book_genre = collector.get_book_genre(name) - assert book_genre == genre + collector.books_genre[name] = genre + assert collector.get_book_genre(name) == genre @pytest.mark.parametrize('name,genre', [ From 3c248ca50aa9235b8432657fcc9a796c6aa941be Mon Sep 17 00:00:00 2001 From: Julia-koroleva Date: Sat, 9 Aug 2025 20:28:17 +0300 Subject: [PATCH 25/25] change the elevet test --- .../tests.cpython-313-pytest-8.4.1.pyc | Bin 18749 -> 18521 bytes tests.py | 5 ++--- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/__pycache__/tests.cpython-313-pytest-8.4.1.pyc b/__pycache__/tests.cpython-313-pytest-8.4.1.pyc index 28cfd02c797e7609ae2b7c70e2409d8d75446495..5dc658b53684085c5adf770d5229eecd490f7c8b 100644 GIT binary patch delta 545 zcmdlxiSgzHM&8f7yj%=G;MY7oZI~a>{3qnm`h-R6rATB?--dJ?$^*f{=6uO%A`JVxW8x zCy>x&tcsfa)Y)iqsIa&=SFMI7SFM7rt%9mXL8ZB7aS<<2$;!!=E(&~Hw>Z-h%kqmd zOHzxA%qQmwYcsB#Jjumoa*=&@{cNDJ28J8*HW%bxXy2Kk>BJ3N8|;5 zlgs>OAcl3s1*=F9!z%J3f8=!zD7pkvV+Q9!7*{zWJ1XH~7ZE(51kgl?%w>p91+YmV zjupaGxZZ0Vk(-Y?6f-jw)lBwwabqf~o4ms%i7{xiwCi_9rFu|EGy#cQqVe&?C5a`O z$?=ILB}JJ@r9hv?#}~D1HgOMOWMg8DV*JW6xz8g`r4yuu6-2av2t5#?4J2-H*yQG? al;)(`6-}Bf;3>x+#mLC@i2+1{6#)Q~YoSp9 delta 246 zcmcaPfpPC7M&8f7yj%=GP+UJfh^zQ}m; zd0Dl|YbE3+^V(;tJOK(dFx=n}yv`wakwfl+yv-F3TQFDsB8U0~4c99iZj)_Au1)@J z&AHjgA%dAvb8@+z!sJ=b7C_cTJDbU`oP8LBH=DbBXH=>InO_eiZi&Xn7ndZKWG2Ta zmXs7_CY6??7RSdIHEs@Y3t?nqW_4uz$~AeFdz?xeNDC{7Xao^@AVM2R+~Tmw%}*)K YNwq8LpRD5{#~;ne$n}W