Improve test coverage of secr.drafts. Commit ready for merge.

- Legacy-Id: 9307
This commit is contained in:
Ryan Cross 2015-03-21 20:26:53 +00:00
parent a1a85d4401
commit 34a16483fa
4 changed files with 128 additions and 27 deletions

View file

@ -1,26 +0,0 @@
from django.core.urlresolvers import reverse
from ietf.utils.test_utils import TestCase
from ietf.doc.models import Document
from ietf.utils.test_data import make_test_data
SECR_USER='secretary'
class MainTestCase(TestCase):
def test_main(self):
"Main Test"
make_test_data()
url = reverse('drafts')
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 200)
def test_view(self):
"View Test"
make_test_data()
drafts = Document.objects.filter(type='draft')
url = reverse('drafts_view', kwargs={'id':drafts[0].name})
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 200)

View file

@ -0,0 +1,120 @@
import os
import shutil
from StringIO import StringIO
from django.conf import settings
from django.core.urlresolvers import reverse as urlreverse
from ietf.utils.test_utils import TestCase
from ietf.doc.models import Document
from ietf.person.models import Person
from ietf.submit.models import Preapproval
from ietf.utils.test_data import make_test_data
from pyquery import PyQuery
SECR_USER='secretary'
class MainTestCase(TestCase):
def setUp(self):
self.repository_dir = os.path.abspath("tmp-submit-repository-dir")
os.mkdir(self.repository_dir)
settings.INTERNET_DRAFT_PATH = self.repository_dir
self.archive_dir = os.path.abspath("tmp-submit-archive-dir")
os.mkdir(self.archive_dir)
settings.INTERNET_DRAFT_ARCHIVE_DIR = self.archive_dir
def tearDown(self):
shutil.rmtree(self.repository_dir)
shutil.rmtree(self.archive_dir)
def test_abstract(self):
draft = make_test_data()
url = urlreverse('drafts_abstract', kwargs={'id':draft.name})
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 200)
def test_add(self):
draft = make_test_data()
url = urlreverse('drafts_add')
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 200)
# dummy upload file
txt_file = StringIO('This is a simple text file.')
txt_file.name = "draft-dummy-00.txt"
post = dict(title='A test draft',
group=draft.group.pk,
start_date='2015-01-01',
pages='10',
txt=txt_file
)
response = self.client.post(url,post)
self.assertEqual(response.status_code, 302)
def test_announce(self):
draft = make_test_data()
url = urlreverse('drafts_announce', kwargs={'id':draft.name})
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 302)
def test_approvals(self):
make_test_data()
Preapproval.objects.create(name='draft-dummy',
by=Person.objects.get(name="(System)"))
url = urlreverse('drafts_approvals')
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 200)
self.assertTrue('draft-dummy' in response.content)
def test_edit(self):
draft = make_test_data()
url = urlreverse('drafts_edit', kwargs={'id':draft.name})
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 200)
def test_email(self):
# can't test this directly, test via drafts actions
pass
def test_makerfc(self):
draft = make_test_data()
url = urlreverse('drafts_edit', kwargs={'id':draft.name})
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 200)
self.assertTrue(draft.intended_std_level)
def test_search(self):
draft = make_test_data()
url = urlreverse('drafts')
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 200)
post = dict(filename='draft',state=1,submit='submit')
response = self.client.post(url,post)
self.assertEqual(response.status_code, 200)
self.assertTrue(draft.name in response.content)
def test_update(self):
draft = make_test_data()
url = urlreverse('drafts_update', kwargs={'id':draft.name})
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 200)
def test_view(self):
draft = make_test_data()
url = urlreverse('drafts_view', kwargs={'id':draft.name})
self.client.login(username="secretary", password="secretary+password")
response = self.client.get(url)
self.assertEqual(response.status_code, 200)

View file

@ -53,7 +53,7 @@
<h2>Author(s)</h2>
<table>
{% for author in draft.authors.all %}
<tr><td><a href="{% url "sec.rolodex.views.view" id=author.person.pk %}">{{ author.person.name }}</a></td></tr>
<tr><td><a href="{% url "rolodex_view" id=author.person.pk %}">{{ author.person.name }}</a></td></tr>
{% endfor %}
</table>
</div> <!-- inline-related -->

View file

@ -221,6 +221,13 @@ def make_test_data():
desc="Started IESG process",
)
DocEvent.objects.create(
type="new_revision",
by=ad,
doc=draft,
desc="New revision available",
)
BallotDocEvent.objects.create(
type="created_ballot",
ballot_type=BallotType.objects.get(doc_type="draft", slug="approve"),