Completed
Push — main ( 97c1ff...2a7d5a )
by Jochen
05:40
created

test_get_sort_key_for_screen_name()   A

Complexity

Conditions 1

Size

Total Lines 12
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 9
dl 0
loc 12
rs 9.95
c 0
b 0
f 0
nop 0
1
"""
2
:Copyright: 2006-2020 Jochen Kupperschmidt
3
:License: Modified BSD, see LICENSE for details.
4
"""
5
6
from byceps.services.user.service import get_sort_key_for_screen_name
7
from byceps.services.user.transfer.models import User
8
9
10
def test_get_sort_key_for_screen_name():
11
    user1 = create_user('AnyName')
12
    user2 = create_user(None)  # no screen name
13
    user3 = create_user('SomeName')
14
    user4 = create_user('UpperCaseName')
15
    user5 = create_user('lowerCaseName')
16
17
    users = {user1, user2, user3, user4, user5}
18
19
    actual = sorted(users, key=get_sort_key_for_screen_name)
20
21
    assert actual == [user1, user5, user3, user4, user2]
22
23
24
def create_user(screen_name: str) -> User:
25
    return User(
26
        id=None,
27
        screen_name=screen_name,
28
        suspended=False,
29
        deleted=False,
30
        avatar_url=None,
31
        is_orga=False,
32
    )
33