예제 #1
0
def test_get_book_failed_database_error(mock_books):
    mock_books.side_effect = KeyError('database error')
    books = get_book(typ="isbn", isbn="isbn:1234")
    rsp = books[0]
    rsp_code = books[1]
    assert rsp == common_response.DATABASE_ERROR[0]
    assert rsp_code == common_response.DATABASE_ERROR[1]
예제 #2
0
def test_get_book_by_isbn_failed_book_not_found(mock_books):
    mock_books.return_value = []
    books = get_book(typ="isbn", isbn="1234")
    rsp = books[0]
    rsp_code = books[1]
    print(books)
    assert rsp == {"status": "failed", "error_message": "not found"}
    assert rsp_code == 404
예제 #3
0
def test_get_book_by_book_title_failed_book_not_found(mock_books):
    mock_books.return_value = []
    books = get_book(typ="title", title="Principles")
    rsp = books[0]
    rsp_code = books[1]
    print(books)
    assert rsp == {"status": "failed", "error_message": "not found"}
    assert rsp_code == 404
def get_book():
    return books_service.get_book(typ=request.args.get("typ"),
                                  isbn=request.args.get("isbn"),
                                  title=request.args.get("title"))
예제 #5
0
def test_get_book_by_isbn_success(mock_books):
    books = [{'isbn': 'isbn:1234', 'title': 'Principles'}]
    mock_books.return_value = books
    assert get_book(typ="isbn", isbn="isbn:1234") == {'books': books}
예제 #6
0
def test_get_book_failed_invalid_type():
    books = get_book(typ="invalidtype")
    rsp = books[0]
    rsp_code = books[1]
    assert rsp == {"status": "failed", "error_message": "invalid typ"}
    assert rsp_code == 400