forked from retoor/devplacepy
Quiiz system
This commit is contained in:
@@ -123,3 +123,29 @@ def test_create_notification_honors_in_app_pref(bob):
|
||||
assert notifications.find_one(user_uid=uid, message=delivered) is not None
|
||||
finally:
|
||||
reset_notification_prefs(uid)
|
||||
|
||||
|
||||
def test_quiz_attempt_type_listed_in_prefs(bob):
|
||||
_, user = bob
|
||||
uid = _user_notification_prefs(user["username"])["uid"]
|
||||
reset_notification_prefs(uid)
|
||||
prefs = get_notification_prefs(uid)
|
||||
assert any(pref["key"] == "quiz_attempt" for pref in prefs)
|
||||
|
||||
|
||||
def test_create_notification_honors_quiz_attempt_pref(bob):
|
||||
_, user = bob
|
||||
uid = _user_notification_prefs(user["username"])["uid"]
|
||||
notifications = get_table("notifications")
|
||||
reset_notification_prefs(uid)
|
||||
try:
|
||||
set_notification_pref(uid, "quiz_attempt", "in_app", False)
|
||||
suppressed = f"quiz suppressed {generate_uid()}"
|
||||
create_notification(uid, "quiz_attempt", suppressed, uid, "/quizzes")
|
||||
assert notifications.find_one(user_uid=uid, message=suppressed) is None
|
||||
set_notification_pref(uid, "quiz_attempt", "in_app", True)
|
||||
delivered = f"quiz delivered {generate_uid()}"
|
||||
create_notification(uid, "quiz_attempt", delivered, uid, "/quizzes")
|
||||
assert notifications.find_one(user_uid=uid, message=delivered) is not None
|
||||
finally:
|
||||
reset_notification_prefs(uid)
|
||||
|
||||
Reference in New Issue
Block a user