Fix broken wgcharter tests

- Legacy-Id: 4203
This commit is contained in:
Ole Laursen 2012-03-24 12:11:30 +00:00
parent d0dcd60aa8
commit 70b1271f35
4 changed files with 33 additions and 84 deletions

View file

@ -21,56 +21,16 @@ from ietf.iesg.models import TelechatDate
from utils import *
class SearchTestCase(django.test.TestCase):
class EditCharterTestCase(django.test.TestCase):
fixtures = ['names']
def test_search(self):
make_test_data()
def setUp(self):
self.charter_dir = os.path.abspath("tmp-charter-dir")
os.mkdir(self.charter_dir)
settings.CHARTER_PATH = self.charter_dir
group = Group.objects.get(acronym="mars")
group.charter.set_state(State.objects.get(slug="infrev", type="charter"))
r = self.client.get("/wgcharter/")
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search"))
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search_in_process"))
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search_by_area", kwargs=dict(name=group.parent.acronym)))
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search") + "?nameacronym=%s" % group.name.replace(" ", "+"))
self.assertEquals(r.status_code, 302)
r = self.client.get(urlreverse("wg_search") + "?nameacronym=something")
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search") + "?nameacronym=something&by=acronym&acronym=some")
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search") + "?nameacronym=something&by=state&state=active&charter_state=")
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search") + "?nameacronym=something&by=state&state=&charter_state=%s" % State.objects.get(type="charter", slug="approved").pk)
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search") + "?nameacronym=something&by=ad&ad=%s" % Person.objects.get(name="Aread Irector").pk)
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search") + "?nameacronym=something&by=area&area=%s" % group.parent.pk)
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search") + "?nameacronym=something&by=anyfield&anyfield=something")
self.assertEquals(r.status_code, 200)
r = self.client.get(urlreverse("wg_search") + "?nameacronym=something&by=eacronym&eacronym=someold")
self.assertEquals(r.status_code, 200)
class WgStateTestCase(django.test.TestCase):
fixtures = ['names']
def tearDown(self):
shutil.rmtree(self.charter_dir)
def test_change_state(self):
make_test_data()
@ -121,18 +81,6 @@ class WgStateTestCase(django.test.TestCase):
else:
self.assertTrue("State changed" in outbox[-1]['Subject'])
class WgInfoTestCase(django.test.TestCase):
fixtures = ['names']
def setUp(self):
self.charter_dir = os.path.abspath("tmp-charter-dir")
os.mkdir(self.charter_dir)
settings.CHARTER_PATH = self.charter_dir
def tearDown(self):
shutil.rmtree(self.charter_dir)
def test_edit_telechat_date(self):
make_test_data()
@ -140,7 +88,7 @@ class WgInfoTestCase(django.test.TestCase):
group = Group.objects.get(acronym="mars")
charter = group.charter
url = urlreverse('wg_edit_info', kwargs=dict(name=group.acronym))
url = urlreverse('charter_telechat_date', kwargs=dict(name=group.acronym))
login_testing_unauthorized(self, "secretary", url)
# add to telechat
@ -197,7 +145,7 @@ class WgInfoTestCase(django.test.TestCase):
self.assertEquals(charter.rev, next_revision(prev_rev))
self.assertTrue("new_revision" in charter.latest_event().type)
class WgEditPositionTestCase(django.test.TestCase):
class CharterPositionTestCase(django.test.TestCase):
fixtures = ['names', 'ballot']
def test_edit_position(self):
@ -290,7 +238,7 @@ class WgEditPositionTestCase(django.test.TestCase):
q = PyQuery(r.content)
self.assertTrue(len(q('form input[name=position]')) > 0)
# vote for rhousley
# vote for AD
pos_before = charter.docevent_set.filter(type="changed_ballot_position").count()
self.assertTrue(not charter.docevent_set.filter(type="changed_ballot_position", by__name="Sec Retary"))
@ -349,7 +297,7 @@ class WgEditPositionTestCase(django.test.TestCase):
self.assertTrue("BLOCKING COMMENT" in outbox[-1]['Subject'])
self.assertTrue("COMMENT" in outbox[-1]['Subject'])
class WgApproveBallotTestCase(django.test.TestCase):
class CharterApproveBallotTestCase(django.test.TestCase):
fixtures = ['names']
def setUp(self):

View file

@ -44,15 +44,15 @@ def default_action_text(wg, charter, user, action):
except IOError:
info['charter_txt'] = "Error: couldn't read charter text"
e.text = render_to_string("wgcharter/action_text.txt",
dict(wg=wg,
charter_url=settings.IDTRACKER_BASE_URL + charter.get_absolute_url(),
action_type=action,
info=info,
))
e.text = render_to_string("wgcharter/action_text.txt",
dict(wg=wg,
charter_url=settings.IDTRACKER_BASE_URL + charter.get_absolute_url(),
action_type=action,
info=info,
))
e.save()
return e
e.save()
return e
def default_review_text(wg, charter, user):
e = WriteupDocEvent(doc=charter, by=user)
@ -77,15 +77,15 @@ def default_review_text(wg, charter, user):
except IOError:
info['charter_txt'] = "Error: couldn't read charter text"
e.text = render_to_string("wgcharter/review_text.txt",
dict(wg=wg,
charter_url=settings.IDTRACKER_BASE_URL + charter.get_absolute_url(),
info=info,
review_type="new" if wg.state_id == "proposed" else "recharter",
)
)
e.save()
return e
e.text = render_to_string("wgcharter/review_text.txt",
dict(wg=wg,
charter_url=settings.IDTRACKER_BASE_URL + charter.get_absolute_url(),
info=info,
review_type="new" if wg.state_id == "proposed" else "recharter",
)
)
e.save()
return e
BALLOT_CHOICES = (("yes", "Yes"),
("no", "No"),
@ -491,7 +491,7 @@ def ballot_writeupnotes(request, name):
),
context_instance=RequestContext(request))
@role_required('Secretariat')
@role_required("Secretariat")
def approve_ballot(request, name):
"""Approve ballot, changing state, copying charter"""
try:
@ -510,7 +510,7 @@ def approve_ballot(request, name):
e = charter.latest_event(WriteupDocEvent, type="changed_action_announcement")
if not e:
if next_approved_revision(wg.charter.rev) == "01":
announcement= default_action_text(wg, charter, login, "Formed").text
announcement = default_action_text(wg, charter, login, "Formed").text
else:
announcement = default_action_text(wg, charter, login, "Rechartered").text
else:

View file

@ -11,7 +11,7 @@ from django.utils import simplejson
from utils import *
from mails import email_secretariat
from ietf.ietfauth.decorators import group_required
from ietf.ietfauth.decorators import role_required
from ietf.iesg.models import TelechatDate
from ietf.doc.models import *
@ -37,7 +37,7 @@ class ChangeStateForm(forms.Form):
for f in self.hide:
self.fields[f].widget = forms.HiddenInput
@group_required('Area_Director','Secretariat')
@role_required("Area Director", "Secretariat")
def change_state(request, name, option=None):
"""Change state of WG and charter, notifying parties as necessary
and logging the change as a comment."""
@ -203,6 +203,7 @@ class TelechatForm(forms.Form):
self.fields['telechat_date'].choices = [("", "(not on agenda)")] + [(d, d.strftime("%Y-%m-%d")) for d in dates]
@role_required("Area Director", "Secretariat")
def telechat_date(request, name):
wg = get_object_or_404(Group, acronym=name)
doc = set_or_create_charter(wg)