From 70b1271f35634ddcf31fa9e49c590d4c91532c08 Mon Sep 17 00:00:00 2001 From: Ole Laursen Date: Sat, 24 Mar 2012 12:11:30 +0000 Subject: [PATCH] Fix broken wgcharter tests - Legacy-Id: 4203 --- ietf/wgcharter/models.py | 0 ietf/wgcharter/tests.py | 74 +++++----------------------------- ietf/wgcharter/views_ballot.py | 38 ++++++++--------- ietf/wgcharter/views_edit.py | 5 ++- 4 files changed, 33 insertions(+), 84 deletions(-) delete mode 100644 ietf/wgcharter/models.py diff --git a/ietf/wgcharter/models.py b/ietf/wgcharter/models.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/ietf/wgcharter/tests.py b/ietf/wgcharter/tests.py index 758cfd4d7..0b4bcffdf 100644 --- a/ietf/wgcharter/tests.py +++ b/ietf/wgcharter/tests.py @@ -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): diff --git a/ietf/wgcharter/views_ballot.py b/ietf/wgcharter/views_ballot.py index fe1e5c9cf..494294af4 100644 --- a/ietf/wgcharter/views_ballot.py +++ b/ietf/wgcharter/views_ballot.py @@ -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: diff --git a/ietf/wgcharter/views_edit.py b/ietf/wgcharter/views_edit.py index 62083fcee..842d323c5 100644 --- a/ietf/wgcharter/views_edit.py +++ b/ietf/wgcharter/views_edit.py @@ -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)