Skip to content
This repository has been archived by the owner on May 31, 2023. It is now read-only.

Commit

Permalink
serviceのテストコード追加
Browse files Browse the repository at this point in the history
  • Loading branch information
takmita committed May 20, 2022
1 parent b8fa747 commit c84b3c0
Showing 1 changed file with 111 additions and 0 deletions.
111 changes: 111 additions & 0 deletions bee_slack_app/service/test_review.py
Original file line number Diff line number Diff line change
Expand Up @@ -355,3 +355,114 @@ def mock_user_repository_get_all(_, __):
reviews = get_reviews(logger=getLogger(), limit=10, keys=[])

assert reviews is None


def test_get_reviewsでレビューを全件一括で取得できること(monkeypatch):
def mock_review_repository_get_some(_, **__):
return {
"items": [
{
"user_id": "user_id_0",
"book_title": "仕事ではじめる機械学習",
"isbn": "12345",
"score_for_me": "1",
"score_for_others": "5",
"review_comment": "とても良いです",
"book_image_url": "dummy_book_image_url_0",
"book_author": "dummy_book_author_0",
"book_url": "dummy_book_url_0",
},
{
"user_id": "user_id_1",
"book_title": "仕事ではじめる機械学習",
"isbn": "12345",
"score_for_me": "3",
"score_for_others": "4",
"review_comment": "まあまあです",
"book_image_url": "dummy_book_image_url_1",
"book_author": "dummy_book_author_1",
"book_url": "dummy_book_url_1",
},
{
"user_id": "user_id_2",
"book_title": "Python チュートリアル",
"isbn": "67890",
"score_for_me": "2",
"score_for_others": "4",
"review_comment": "そこそこです",
"book_image_url": "dummy_book_image_url_2",
"book_author": "dummy_book_author_2",
"book_url": "dummy_book_url_2",
},
],
"last_key": None,
}

monkeypatch.setattr(ReviewRepository, "get_some", mock_review_repository_get_some)

def mock_user_repository_get_all(_, **__):
return [
{
"user_id": "user_id_0",
"department": "department_0",
"job_type": "job_type_0",
"age_range": "age_range_0",
"updated_at": "2022-04-11T09:23:04+09:00",
"user_name": "user_name_0",
},
{
"user_id": "user_id_1",
"department": "department_1",
"job_type": "job_type_1",
"age_range": "age_range_1",
"updated_at": "2022-04-12T09:23:04+09:00",
"user_name": "user_name_1",
},
{
"user_id": "user_id_2",
"department": "department_2",
"job_type": "job_type_2",
"age_range": "age_range_2",
"updated_at": "2022-04-12T09:23:04+09:00",
"user_name": "user_name_2",
},
]

monkeypatch.setattr(UserRepository, "get_all", mock_user_repository_get_all)

reviews = get_reviews(logger=getLogger(), limit=[], keys=[])["items"]

assert len(reviews) == 3

assert reviews[0]["user_id"] == "user_id_0"
assert reviews[0]["user_name"] == "user_name_0"
assert reviews[0]["isbn"] == "12345"
assert reviews[0]["book_title"] == "仕事ではじめる機械学習"
assert reviews[0]["score_for_me"] == "1"
assert reviews[0]["score_for_others"] == "5"
assert reviews[0]["review_comment"] == "とても良いです"
assert reviews[0]["book_image_url"] == "dummy_book_image_url_0"
assert reviews[0]["book_author"] == "dummy_book_author_0"
assert reviews[0]["book_url"] == "dummy_book_url_0"

assert reviews[1]["user_id"] == "user_id_1"
assert reviews[1]["user_name"] == "user_name_1"
assert reviews[1]["isbn"] == "12345"
assert reviews[1]["book_title"] == "仕事ではじめる機械学習"
assert reviews[1]["score_for_me"] == "3"
assert reviews[1]["score_for_others"] == "4"
assert reviews[1]["review_comment"] == "まあまあです"
assert reviews[1]["book_image_url"] == "dummy_book_image_url_1"
assert reviews[1]["book_author"] == "dummy_book_author_1"
assert reviews[1]["book_url"] == "dummy_book_url_1"

assert reviews[2]["user_id"] == "user_id_2"
assert reviews[2]["user_name"] == "user_name_2"
assert reviews[2]["isbn"] == "67890"
assert reviews[2]["book_title"] == "Python チュートリアル"
assert reviews[2]["score_for_me"] == "2"
assert reviews[2]["score_for_others"] == "4"
assert reviews[2]["review_comment"] == "そこそこです"
assert reviews[2]["book_image_url"] == "dummy_book_image_url_2"
assert reviews[2]["book_author"] == "dummy_book_author_2"
assert reviews[2]["book_url"] == "dummy_book_url_2"

0 comments on commit c84b3c0

Please sign in to comment.