def test_confirmation(self): portal = self.layer['portal'] app = self.layer['app'] z2.login(app['acl_users'], SITE_OWNER_NAME) self.register_users() event = self._create_event() data = { 'internal_attendees': ['max-musterman', 'john-doe','Administrators', 'Reviewers'], 'external_attendees': [{'name':'John Smith', 'email':'*****@*****.**',}], } utils.save_attendees(event, data) storage = IAttendeesStorage(event) login(portal, 'max-musterman') utils.save_confirmation(event, 'Yes') usernames = [i['id'] for i in storage.internal_attendees] self.assertTrue('max-musterman' in usernames) self.assertEqual( storage.internal_attendees[usernames.index('max-musterman')]['attending'], 'Yes') self.assertEqual(utils.get_confirmation(event), 'Yes') utils.save_confirmation(event, 'No') self.assertEqual(utils.get_confirmation(event), 'No') utils.save_confirmation(event, 'Maybe') self.assertEqual(utils.get_confirmation(event), 'Maybe') login(portal, 'john-doe') utils.save_confirmation(event, 'Maybe') self.assertEqual(utils.get_confirmation(event), 'Maybe') utils.save_confirmation(event, 'No') self.assertEqual(utils.get_confirmation(event), 'No')
def updateWidgets(self): """ If a user already confirmed, we want to reflect that in the default value. """ super(ConfirmAttendanceForm, self).updateWidgets() context = aq_inner(self.context) storage = IAttendeesStorage(context) self.widgets['attending'].value = utils.get_confirmation(context)
def test_confirmation_group(self): portal = self.layer['portal'] app = self.layer['app'] z2.login(app['acl_users'], SITE_OWNER_NAME) self.register_users() event = self._create_event() data = { 'internal_attendees': ['Reviewers'], 'external_attendees': [], } utils.save_attendees(event, data) login(portal, 'jan-keller') utils.save_confirmation(event, 'Yes') self.assertEqual(utils.get_confirmation(event), 'Yes')