forked from readthedocs/readthedocs.org
-
Notifications
You must be signed in to change notification settings - Fork 0
/
test_version_config.py
86 lines (75 loc) · 2.26 KB
/
test_version_config.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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
from __future__ import division, print_function, unicode_literals
from django.test import TestCase
from django_dynamic_fixture import get
from readthedocs.builds.models import Build, Version
from readthedocs.projects.models import Project
class VersionConfigTests(TestCase):
def setUp(self):
self.project = get(Project)
self.version = get(Version, project=self.project)
def test_get_correct_config(self):
build_old = get(
Build,
project=self.project,
version=self.version,
config={'version': 1}
)
build_new = get(
Build,
project=self.project,
version=self.version,
config={'version': 2}
)
build_new_error = get(
Build,
project=self.project,
version=self.version,
config={'version': 3},
success=False,
)
build_new_unfinish = get(
Build,
project=self.project,
version=self.version,
config={'version': 4},
state='building',
)
config = self.version.config
self.assertEqual(config, {'version': 2})
def test_get_correct_config_when_same_config(self):
build_old = get(
Build,
project=self.project,
version=self.version,
config={}
)
build_old.config = {'version': 1}
build_old.save()
build_new = get(
Build,
project=self.project,
version=self.version,
config={}
)
build_new.config = {'version': 1}
build_new.save()
build_new_error = get(
Build,
project=self.project,
version=self.version,
config={},
success=False,
)
build_new_error.config = {'version': 3}
build_new_error.save()
build_new_unfinish = get(
Build,
project=self.project,
version=self.version,
config={},
state='building',
)
build_new_unfinish.config = {'version': 1}
build_new_unfinish.save()
config = self.version.config
self.assertEqual(config, {'version': 1})