def testMissingParameters(self): status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "", "2016-5-1", "2016-5-2", "http://foo.bar.com", "123 Fake Street, New York, NY") self.assertEqual(status, 'validation_failure') self.assertTrue('name' in failures) status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "", "2016-5-2", "http://foo.bar.com", "123 Fake Street, New York, NY") self.assertEqual(status, 'validation_failure') self.assertTrue('start_date' in failures) status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-1", "", "http://foo.bar.com", "123 Fake Street, New York, NY") self.assertEqual(status, 'validation_failure') self.assertTrue('end_date' in failures) status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-1", "2016-5-2", "", "123 Fake Street, New York, NY") self.assertEqual(status, 'validation_failure') self.assertTrue('website' in failures) status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-1", "2016-5-2", "http://foo.bar.com", "") self.assertEqual(status, 'validation_failure') self.assertTrue('venue_address' in failures)
def testMalformedDates(self): status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "meow", "2016-5-2", "http://foo.bar.com", "123 Fake Street, New York, NY") self.assertEqual(status, 'validation_failure') self.assertTrue('start_date' in failures) status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-1", "moo", "http://foo.bar.com", "123 Fake Street, New York, NY") self.assertEqual(status, 'validation_failure') self.assertTrue('end_date' in failures)
def post(self): self._require_registration() event_name = self.request.get("name", None) status, failures = SuggestionCreator.createOffseasonEventSuggestion( author_account_key=self.user_bundle.account.key, name=event_name, start_date=self.request.get("start_date", None), end_date=self.request.get("end_date", None), website=self.request.get("website", None), venue_name=self.request.get("venue_name", None), address=self.request.get("venue_address", None), city=self.request.get("venue_city", None), state=self.request.get("venue_state", None), country=self.request.get("venue_country", None) ) if status != 'success': # Don't completely wipe form data if validation fails self.template_values.update({ 'status': status, 'failures': failures, 'name': self.request.get('name', None), 'start_date': self.request.get('start_date', None), 'end_date': self.request.get('end_date', None), 'website': self.request.get('website', None), 'venue_address': self.request.get('venue_address', None), }) self.response.out.write( jinja2_engine.render('suggestions/suggest_offseason_event.html', self.template_values)) else: subject, body = self._gen_notification_email(event_name) OutgoingNotificationHelper.send_admin_alert_email(subject, body) self.redirect('/suggest/offseason?status=%s' % status)
def post(self): self._require_login() status, failures = SuggestionCreator.createOffseasonEventSuggestion( author_account_key=self.user_bundle.account.key, name=self.request.get("name", None), start_date=self.request.get("start_date", None), end_date=self.request.get("end_date", None), website=self.request.get("website", None), address=self.request.get("venue_address", None), ) if status != 'success': # Don't completely wipe form data if validation fails self.template_values.update({ 'status': status, 'failures': failures, 'name': self.request.get('name', None), 'start_date': self.request.get('start_date', None), 'end_date': self.request.get('end_date', None), 'website': self.request.get('website', None), 'venue_address': self.request.get('venue_address', None), }) self.response.out.write( jinja2_engine.render('suggest_offseason_event.html', self.template_values)) else: self.redirect('/suggest/offseason?status=%s' % status)
def post(self): self._require_registration() event_name = self.request.get("name", None) status, failures = SuggestionCreator.createOffseasonEventSuggestion( author_account_key=self.user_bundle.account.key, name=event_name, start_date=self.request.get("start_date", None), end_date=self.request.get("end_date", None), website=self.request.get("website", None), venue_name=self.request.get("venue_name", None), address=self.request.get("venue_address", None), city=self.request.get("venue_city", None), state=self.request.get("venue_state", None), country=self.request.get("venue_country", None) ) if status != 'success': # Don't completely wipe form data if validation fails self.template_values.update({ 'status': status, 'failures': failures, 'name': self.request.get('name', None), 'start_date': self.request.get('start_date', None), 'end_date': self.request.get('end_date', None), 'website': self.request.get('website', None), 'venue_address': self.request.get('venue_address', None), }) self.response.out.write( jinja2_engine.render('suggest_offseason_event.html', self.template_values)) else: subject, body = self._gen_notification_email(event_name) SuggestionNotifier.send_admin_alert_email(subject, body) self.redirect('/suggest/offseason?status=%s' % status)
def post(self): self._require_registration() status, failures = SuggestionCreator.createOffseasonEventSuggestion( author_account_key=self.user_bundle.account.key, name=self.request.get("name", None), start_date=self.request.get("start_date", None), end_date=self.request.get("end_date", None), website=self.request.get("website", None), address=self.request.get("venue_address", None), ) if status != 'success': # Don't completely wipe form data if validation fails self.template_values.update({ 'status': status, 'failures': failures, 'name': self.request.get('name', None), 'start_date': self.request.get('start_date', None), 'end_date': self.request.get('end_date', None), 'website': self.request.get('website', None), 'venue_address': self.request.get('venue_address', None), }) self.response.out.write( jinja2_engine.render('suggest_offseason_event.html', self.template_values)) else: self.redirect('/suggest/offseason?status=%s' % status)
def test_create_suggestion_banned(self): status, _ = SuggestionCreator.createOffseasonEventSuggestion( self.account_banned.key, "Test Event", "2016-5-1", "2016-5-2", "http://foo.bar.com", "The Venue", "123 Fake Street", "New York", "NY", "USA") self.assertEqual(status, 'success') # Ensure the Suggestion gets created suggestions = Suggestion.query().fetch() self.assertIsNotNone(suggestions) self.assertEqual(len(suggestions), 1) suggestion = suggestions[0] self.assertIsNotNone(suggestion) self.assertEqual(suggestion.contents['name'], "Test Event") self.assertEqual(suggestion.contents['start_date'], '2016-5-1') self.assertEqual(suggestion.contents['end_date'], '2016-5-2') self.assertEqual(suggestion.contents['website'], 'http://foo.bar.com') self.assertEqual(suggestion.contents['address'], '123 Fake Street') self.assertEqual(suggestion.contents['city'], 'New York') self.assertEqual(suggestion.contents['state'], 'NY') self.assertEqual(suggestion.contents['country'], 'USA') self.assertEqual(suggestion.contents['venue_name'], 'The Venue') self.assertEqual(suggestion.review_state, Suggestion.REVIEW_AUTOREJECTED)
def testOutOfOrderDates(self): status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-4", "2016-5-2", "http://foo.bar.com", "The Venue", "123 Fake Street", "New York", "NY", "USA") self.assertEqual(status, 'validation_failure') self.assertTrue('end_date' in failures)
def createSuggestion(self): from helpers.suggestions.suggestion_creator import SuggestionCreator status = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, 'Test Event', '2016-10-12', '2016-10-13', 'http://foo.bar.com', 'Venue Name', '123 Fake St', 'New York', 'NY', 'USA') self.assertEqual(status[0], 'success') return Suggestion.query().fetch(keys_only=True)[0].id()
def testOutOfOrderDates(self): status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-4", "2016-5-2", "http://foo.bar.com", "123 Fake Street, New York, NY") self.assertEqual(status, 'validation_failure') self.assertTrue('end_date' in failures)
def test_out_of_order_dates(self): status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-4", "2016-5-2", "http://foo.bar.com", "The Venue", "123 Fake Street", "New York", "NY", "USA") self.assertEqual(status, 'validation_failure') self.assertTrue('end_date' in failures)
def createSuggestion(self): from helpers.suggestions.suggestion_creator import SuggestionCreator status = SuggestionCreator.createOffseasonEventSuggestion(self.account.key, 'Test Event', '2016-10-12', '2016-10-13', 'http://foo.bar.com', 'Venue Name', '123 Fake St', 'New York', 'NY', 'USA') self.assertEqual(status[0], 'success') return Suggestion.query().fetch(keys_only=True)[0].id()
def testCreateSuggestion(self): status, _ = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-1", "2016-5-2", "http://foo.bar.com", "123 Fake Street, New York, NY") self.assertEqual(status, 'success') # Ensure the Suggestion gets created suggestions = Suggestion.query().fetch() self.assertIsNotNone(suggestions) self.assertEqual(len(suggestions), 1) suggestion = suggestions[0] self.assertIsNotNone(suggestion) self.assertEqual(suggestion.contents['name'], "Test Event") self.assertEqual(suggestion.contents['start_date'], '2016-5-1') self.assertEqual(suggestion.contents['end_date'], '2016-5-2') self.assertEqual(suggestion.contents['website'], 'http://foo.bar.com') self.assertEqual(suggestion.contents['address'], '123 Fake Street, New York, NY')
def test_missing_params(self): status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "", "2016-5-1", "2016-5-2", "http://foo.bar.com", "The Venue", "123 Fake Street", "New York", "NY", "USA") self.assertEqual(status, 'validation_failure') self.assertTrue('name' in failures) status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "", "2016-5-2", "http://foo.bar.com", "The Venue", "123 Fake Street", "New York", "NY", "USA") self.assertEqual(status, 'validation_failure') self.assertTrue('start_date' in failures) status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-1", "", "http://foo.bar.com", "The Venue", "123 Fake Street", "New York", "NY", "USA") self.assertEqual(status, 'validation_failure') self.assertTrue('end_date' in failures) status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-1", "2016-5-2", "", "The Venue", "123 Fake Street", "New York", "NY", "USA") self.assertEqual(status, 'validation_failure') self.assertTrue('website' in failures) status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-1", "2016-5-2", "http://foo.bar.com", "The Venue", "", "New York", "NY", "USA") self.assertEqual(status, 'validation_failure') self.assertTrue('venue_address' in failures) status, failures = SuggestionCreator.createOffseasonEventSuggestion( self.account.key, "Test Event", "2016-5-1", "2016-5-2", "http://foo.bar.com", "", "123 Fake Street", "", "", "") self.assertEqual(status, 'validation_failure') self.assertTrue('venue_name' in failures) self.assertTrue('venue_city' in failures) self.assertTrue('venue_state' in failures) self.assertTrue('venue_country' in failures)