From 936f04534492a28161c18ad954aeb8199b613c9f Mon Sep 17 00:00:00 2001 From: Mouse Reeve Date: Thu, 9 Dec 2021 19:36:12 -0800 Subject: [PATCH] Adds resolve book view test --- bookwyrm/tests/views/books/test_book.py | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/bookwyrm/tests/views/books/test_book.py b/bookwyrm/tests/views/books/test_book.py index cb73e381..90f686d5 100644 --- a/bookwyrm/tests/views/books/test_book.py +++ b/bookwyrm/tests/views/books/test_book.py @@ -231,6 +231,32 @@ class BookViews(TestCase): views.update_book_from_remote(request, self.book.id, "openlibrary.org") self.assertEqual(mock.call_count, 1) + def test_resolve_book(self): + """load a book from search results""" + models.Connector.objects.create( + identifier="openlibrary.org", + name="OpenLibrary", + connector_file="openlibrary", + base_url="https://openlibrary.org", + books_url="https://openlibrary.org", + covers_url="https://covers.openlibrary.org", + search_url="https://openlibrary.org/search?q=", + isbn_search_url="https://openlibrary.org/isbn", + ) + request = self.factory.post( + "", {"remote_id": "https://openlibrary.org/book/123"} + ) + request.user = self.local_user + + with patch( + "bookwyrm.connectors.openlibrary.Connector.get_or_create_book" + ) as mock: + mock.return_value = self.book + result = views.resolve_book(request) + self.assertEqual(mock.call_count, 1) + self.assertEqual(mock.call_args[0][0], "https://openlibrary.org/book/123") + self.assertEqual(result.status_code, 302) + def _setup_cover_url(): """creates cover url mock"""