34 lines
1.2 KiB
Python
34 lines
1.2 KiB
Python
from app.permissions import is_video_allowed_for_level
|
|
|
|
|
|
def test_level_0_sees_everything():
|
|
assert is_video_allowed_for_level("A1.mp4", 0) is True
|
|
assert is_video_allowed_for_level("B2.mp4", 0) is True
|
|
assert is_video_allowed_for_level("C3.mp4", 0) is True
|
|
|
|
|
|
def test_level_1_sees_everything():
|
|
assert is_video_allowed_for_level("A1.mp4", 1) is True
|
|
assert is_video_allowed_for_level("B2.mp4", 1) is True
|
|
assert is_video_allowed_for_level("C3.mp4", 1) is True
|
|
|
|
|
|
def test_level_2_sees_only_a_and_b():
|
|
assert is_video_allowed_for_level("A1.mp4", 2) is True
|
|
assert is_video_allowed_for_level("B2.mp4", 2) is True
|
|
assert is_video_allowed_for_level("C3.mp4", 2) is False
|
|
|
|
|
|
def test_level_3_sees_only_a():
|
|
assert is_video_allowed_for_level("A1.mp4", 3) is True
|
|
assert is_video_allowed_for_level("B2.mp4", 3) is False
|
|
assert is_video_allowed_for_level("C3.mp4", 3) is False
|
|
|
|
|
|
def test_none_level_sees_nothing():
|
|
assert is_video_allowed_for_level("A1.mp4", None) is False
|
|
|
|
|
|
def test_lowercase_filename_is_handled():
|
|
assert is_video_allowed_for_level("a1.mp4", 3) is True
|
|
assert is_video_allowed_for_level("b1.mp4", 3) is False |