forked from adamlaska/datatracker
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtests.py
More file actions
83 lines (67 loc) · 3.3 KB
/
Copy pathtests.py
File metadata and controls
83 lines (67 loc) · 3.3 KB
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
import os
from unittest import skipIf
from django.conf import settings
from django.core.urlresolvers import reverse as urlreverse
from django.db.models import Q
from django.test import Client
from ietf.group.models import Role, Group
from ietf.utils.test_data import make_test_data
from ietf.utils.test_utils import login_testing_unauthorized, TestCase
if getattr(settings,'SKIP_DOT_TO_PDF', False):
skip_dot_to_pdf = True
skip_message = "settings.SKIP_DOT_TO_PDF = %s" % skip_dot_to_pdf
elif ( os.path.exists(settings.DOT_BINARY) and
os.path.exists(settings.UNFLATTEN_BINARY) and
os.path.exists(settings.PS2PDF_BINARY)):
skip_dot_to_pdf = False
skip_message = ""
else:
skip_dot_to_pdf = True
skip_message = ("One or more of the binaries for dot, unflatten and ps2pdf weren't found "
"in the locations indicated in settings.py.")
class StreamTests(TestCase):
def test_streams(self):
make_test_data()
r = self.client.get(urlreverse("ietf.group.views_stream.streams"))
self.assertEqual(r.status_code, 200)
self.assertTrue("Independent Submission Editor" in r.content)
def test_stream_documents(self):
draft = make_test_data()
draft.stream_id = "iab"
draft.save()
r = self.client.get(urlreverse("ietf.group.views_stream.stream_documents", kwargs=dict(acronym="iab")))
self.assertEqual(r.status_code, 200)
self.assertTrue(draft.name in r.content)
def test_stream_edit(self):
make_test_data()
stream_acronym = "ietf"
url = urlreverse("ietf.group.views_stream.stream_edit", kwargs=dict(acronym=stream_acronym))
login_testing_unauthorized(self, "secretary", url)
# get
r = self.client.get(url)
self.assertEqual(r.status_code, 200)
r = self.client.post(url, dict(delegates="ad2@ietf.org"))
self.assertEqual(r.status_code, 302)
self.assertTrue(Role.objects.filter(name="delegate", group__acronym=stream_acronym, email__address="ad2@ietf.org"))
@skipIf(skip_dot_to_pdf, skip_message)
class GroupTests(TestCase):
def test_group_document_dependency_dotfile(self):
make_test_data()
for group in Group.objects.filter(Q(type="wg") | Q(type="rg")):
client = Client(Accept='application/pdf')
r = client.get(urlreverse("ietf.group.info.dependencies_dot",
kwargs=dict(acronym=group.acronym)))
self.assertTrue(r.status_code == 200, "Failed to receive "
"a dot dependency graph for group: %s"%group.acronym)
self.assertGreater(len(r.content), 0, "Dot dependency graph for group "
"%s has no content"%group.acronym)
def test_group_document_dependency_pdffile(self):
make_test_data()
for group in Group.objects.filter(Q(type="wg") | Q(type="rg")):
client = Client(Accept='application/pdf')
r = client.get(urlreverse("ietf.group.info.dependencies_pdf",
kwargs=dict(acronym=group.acronym)))
self.assertTrue(r.status_code == 200, "Failed to receive "
"a pdf dependency graph for group: %s"%group.acronym)
self.assertGreater(len(r.content), 0, "Pdf dependency graph for group "
"%s has no content"%group.acronym)