1
|
|
|
"""Tests for 'random' filters.""" |
2
|
|
|
|
3
|
|
|
import re |
4
|
|
|
|
5
|
|
|
from flask_extras.filters import random |
6
|
|
|
|
7
|
|
|
|
8
|
|
|
class TestRandomChoice: |
9
|
|
|
"""All tests for random choice function.""" |
10
|
|
|
|
11
|
|
|
def test_choice_returns_str(self): |
12
|
|
|
"""Test the return value for a valid type.""" |
13
|
|
|
assert isinstance(random.rand_choice([0, 1, 2, 3]), int) |
14
|
|
|
|
15
|
|
|
|
16
|
|
|
class TestRandomNameTitle: |
17
|
|
|
"""All tests for random title function.""" |
18
|
|
|
|
19
|
|
|
def test_name_returns_str(self): |
20
|
|
|
"""Test the return value for a valid type.""" |
21
|
|
|
assert isinstance(random.rand_name_title('Chris'), str) |
22
|
|
|
|
23
|
|
|
def test_name_returns_spaced_name(self): |
24
|
|
|
"""Test the return value for a valid value length.""" |
25
|
|
|
assert len(random.rand_name_title('Chris').split()) == 2 |
26
|
|
|
|
27
|
|
|
|
28
|
|
|
class TestRandomColor: |
29
|
|
|
"""All tests for random color function.""" |
30
|
|
|
|
31
|
|
|
def test_returns_str(self): |
32
|
|
|
"""Test the return value for a valid type.""" |
33
|
|
|
assert isinstance(random.rand_color(), str) |
34
|
|
|
|
35
|
|
|
def test_returns_rgba_format(self): |
36
|
|
|
"""Test the return value for a valid string format.""" |
37
|
|
|
re_rgba = r'rgba\([0-9{0,3}]+, [0-9{0,3}]+, [0-9{0,3}]+, [0-9{0,3}]+\)' |
38
|
|
|
assert re.match(re_rgba, random.rand_color(alpha=10)) is not None |
39
|
|
|
|