def setUp(self): super(TestMeetingCreateFormView, self).setUp() Conference.remove() self.user = AuthUserFactory() self.request = RequestFactory().post('/fake_path') self.view = MeetingCreateFormView() mod_data = dict(data) mod_data.update({'admins': self.user.emails[0]}) self.form = MeetingForm(data=mod_data) self.form.is_valid()
def populate_conferences(dev=False): if dev: Conference.remove() date_format = '%b %d %Y' for meeting, attrs in MEETING_DATA.iteritems(): meeting = meeting.strip() admin_emails = attrs.pop('admins', []) admin_objs = [] if not dev: for email in admin_emails: try: user = User.find_one(Q('username', 'iexact', email)) admin_objs.append(user) except ModularOdmException: raise RuntimeError('Username {0!r} is not registered.'.format(email)) # Convert string into datetime object try: attrs['end_date'] = datetime.strptime(attrs.get('end_date'), date_format) attrs['start_date'] = datetime.strptime(attrs.get('start_date'), date_format) except TypeError: print '** Meeting {} does not have a start or end date. **'.format(meeting) custom_fields = attrs.pop('field_names', {}) conf = Conference( endpoint=meeting, admins=admin_objs, **attrs ) conf.field_names.update(custom_fields) try: conf.save() except ModularOdmException: conf = Conference.find_one(Q('endpoint', 'eq', meeting)) for key, value in attrs.items(): if isinstance(value, dict): current = getattr(conf, key) current.update(value) setattr(conf, key, current) else: setattr(conf, key, value) conf.admins = admin_objs changed_fields = conf.save() if changed_fields: print('Updated {}: {}'.format(meeting, changed_fields)) else: print('Added new Conference: {}'.format(meeting))
def setUp(self): super(TestMeetingListView, self).setUp() Conference.remove() ConferenceFactory() ConferenceFactory() ConferenceFactory()