-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtest_language.py
52 lines (42 loc) · 1.55 KB
/
test_language.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# -*- coding: utf-8 -*-
import mock
import pytest
from tests.base import TestBase, tvdb
from tvdbrest.client import NotFound, Language
class TestLanguageAPI(TestBase):
@mock.patch('tvdbrest.client.requests.request')
def test_languages(self, request_method_mock, tvdb):
request_method_mock.return_value = self.api_response_mock({
"data": [
{
"id": 27,
"abbreviation": "zh",
"name": "中文",
"englishName": "Chinese"
},
{
"id": 7,
"abbreviation": "en",
"name": "English",
"englishName": "English"
}
]})
languages = tvdb.languages()
assert languages
assert all(isinstance(x, Language) for x in languages)
@mock.patch('tvdbrest.client.requests.request')
def test_get_language(self, request_method_mock, tvdb):
request_method_mock.return_value = self.api_response_mock({
"id": 27,
"abbreviation": "zh",
"name": "中文",
"englishName": "Chinese"
})
language = tvdb.language(27)
assert language
assert language.id == 27
@mock.patch('tvdbrest.client.requests.request')
def test_get_language_does_not_exist(self, request_method_mock, tvdb):
request_method_mock.return_value = self.api_response_404_mock()
with pytest.raises(NotFound):
tvdb.language(42)