Skip to content

Commit 9f9c795

Browse files
committed
Add edit members test.
See ietf-tools#904 - Legacy-Id: 5164
1 parent 140ebaa commit 9f9c795

1 file changed

Lines changed: 35 additions & 11 deletions

File tree

ietf/nomcom/tests.py

Lines changed: 35 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
MEMBER_USER, SECRETARIAT_USER, EMAIL_DOMAIN
1616
from ietf.nomcom.models import NomineePosition, Position, Nominee, \
1717
NomineePositionState, Feedback, FeedbackType
18-
from ietf.nomcom.forms import EditChairForm
18+
from ietf.nomcom.forms import EditChairForm, EditMembersForm
1919

2020

2121
class NomcomViewsTest(TestCase):
@@ -58,6 +58,12 @@ def access_chair_url(self, url):
5858
login_testing_unauthorized(self, CHAIR_USER, url)
5959
self.check_url_status(url, 200)
6060

61+
def access_secretariat_url(self, url):
62+
login_testing_unauthorized(self, COMMUNITY_USER, url)
63+
login_testing_unauthorized(self, CHAIR_USER, url)
64+
login_testing_unauthorized(self, SECRETARIAT_USER, url)
65+
self.check_url_status(url, 200)
66+
6167
def test_private_index_view(self):
6268
"""Verify private home view"""
6369
self.access_member_url(self.private_index_url)
@@ -69,10 +75,34 @@ def test_private_merge_view(self):
6975
self.access_chair_url(self.private_merge_url)
7076
self.client.logout()
7177

78+
def change_members(self, members):
79+
members_emails = u','.join(['%s%s' % (member, EMAIL_DOMAIN) for member in members])
80+
test_data = {'members': members_emails,
81+
'stage': 1}
82+
# preview
83+
self.client.post(self.edit_members_url, test_data)
84+
85+
hash = security_hash(None, EditMembersForm(test_data))
86+
test_data.update({'hash': hash, 'stage': 2})
87+
88+
# submit
89+
self.client.post(self.edit_members_url, test_data)
90+
7291
def test_edit_members_view(self):
7392
"""Verify edit member view"""
74-
# TODO: complete chage edit memebers
7593
self.access_chair_url(self.edit_members_url)
94+
self.change_members([CHAIR_USER, COMMUNITY_USER])
95+
96+
# check member actions
97+
self.client.login(remote_user=COMMUNITY_USER)
98+
self.check_url_status(self.private_index_url, 200)
99+
100+
# revert edit nomcom members
101+
login_testing_unauthorized(self, CHAIR_USER, self.edit_members_url)
102+
self.change_members([CHAIR_USER])
103+
self.client.login(remote_user=COMMUNITY_USER)
104+
self.check_url_status(self.private_index_url, 403)
105+
76106
self.client.logout()
77107

78108
def change_chair(self, user):
@@ -89,19 +119,13 @@ def change_chair(self, user):
89119

90120
def test_edit_chair_view(self):
91121
"""Verify edit chair view"""
92-
login_testing_unauthorized(self, COMMUNITY_USER, self.edit_chair_url)
93-
login_testing_unauthorized(self, CHAIR_USER, self.edit_chair_url)
94-
login_testing_unauthorized(self, SECRETARIAT_USER, self.edit_chair_url)
95-
self.check_url_status(self.edit_chair_url, 200)
96-
122+
self.access_secretariat_url(self.edit_chair_url)
97123
self.change_chair(COMMUNITY_USER)
98124

99125
# check chair actions
100126
self.client.login(remote_user=COMMUNITY_USER)
101-
url = reverse('nomcom_edit_members', kwargs={'year': self.year})
102-
self.check_url_status(url, 200)
103-
url = reverse('nomcom_edit_publickey', kwargs={'year': self.year})
104-
self.check_url_status(url, 200)
127+
self.check_url_status(self.edit_members_url, 200)
128+
self.check_url_status(self.public_key_url, 200)
105129

106130
# revert edit nomcom chair
107131
login_testing_unauthorized(self, SECRETARIAT_USER, self.edit_chair_url)

0 commit comments

Comments
 (0)