def test_session_create(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         custom_form = ObjectMother.get_custom_form(event.id)
         save_to_db(custom_form, "Custom form saved")
         url = url_for('event_sessions.create_view', event_id=event.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("Create Session" in rv.data, msg=rv.data)
 def test_session_delete(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event Saved")
         session = ObjectMother.get_session()
         save_to_db(session, "Session Saved")
         url = url_for('event_sessions.delete_session', event_id=1, session_id=session.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("deleted" in rv.data, msg=rv.data)
    def test_api_tracks(self):
        with app.test_request_context():
            self.assertEqual(self.app.get('/api/v1/event/1').status_code, 404)
            event = ObjectMother.get_event()
            track = ObjectMother.get_track()

            save_to_db(event, "Event saved")
            save_to_db(track, "Track saved")
        self.assertEqual(self.app.get('/api/v1/event/1').status_code, 200)
        self.assertEqual(self.app.get('/api/v1/event/1/tracks').status_code, 200)
def basic_setup(super_admin):
    event = ObjectMother.get_event()
    save_to_db(event, "Event saved")
    session = ObjectMother.get_session(event.id)
    save_to_db(session, "Session saved")
    speaker = ObjectMother.get_speaker()
    speaker.event_id = event.id
    speaker.user_id = super_admin.id
    save_to_db(speaker, "Speaker saved")
    return event
 def test_session_view(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event)
         session = ObjectMother.get_session()
         session.event_id = event.id
         save_to_db(session, "Session Saved")
         url = url_for('event_sessions.session_display_view', event_id=event.id, session_id=session.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("Short abstract" in rv.data, msg=rv.data)
 def test_sessions_list(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         session = ObjectMother.get_session(event.id)
         save_to_db(session, "Session Saved")
         url = url_for('event_sessions.index_view', event_id=event.id, session_id=session.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("Sessions" in rv.data, msg=rv.data)
         self.assertTrue("test" in rv.data, msg=rv.data)
 def test_wrong_form_config(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         speaker = ObjectMother.get_speaker()
         speaker.event_id = event.id
         save_to_db(speaker, "Speaker saved")
         url = url_for('event_speakers.edit_view', event_id=event.id, speaker_id=speaker.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertFalse("incorrectly configured" in rv.data, msg=rv.data)
 def test_speaker_delete(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         speaker = ObjectMother.get_speaker()
         speaker.event_id = event.id
         save_to_db(speaker, "Session Saved")
         url = url_for('event_speakers.delete', event_id=event.id, speaker_id=speaker.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("deleted" in rv.data, msg=rv.data)
 def test_add_session_to_db(self):
     with app.test_request_context():
         # create event
         event = ObjectMother.get_event()
         save_to_db(event, 'Event saved')
         # test
         session = ObjectMother.get_session()
         save_to_db(session, "Session saved")
         self.assertEqual(session.id, 1)
         self.assertEqual(session.event_id, 1)
 def test_session_create_post(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         custom_form = ObjectMother.get_custom_form(event.id)
         save_to_db(custom_form, "Custom form saved")
         data = POST_SESSION_DATA
         data.update(POST_SPEAKER_DATA)
         url = url_for('event_sessions.create_view', event_id=event.id)
         rv = self.app.post(url, follow_redirects=True, buffered=True, content_type='multipart/form-data', data=data)
         self.assertTrue(data['title'] in rv.data, msg=rv.data)
 def test_speaker_view(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         speaker = ObjectMother.get_speaker()
         speaker.event_id = event.id
         save_to_db(speaker, "Speaker saved")
         custom_forms = ObjectMother.get_custom_form()
         custom_forms.event_id = event.id
         save_to_db(custom_forms, "Custom forms Saved")
         url = url_for('event_speakers.edit_view', event_id=event.id, speaker_id=speaker.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("name" in rv.data, msg=rv.data)
 def test_session_edit_post(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         custom_form = ObjectMother.get_custom_form(event.id)
         save_to_db(custom_form, "Custom form saved")
         session = ObjectMother.get_session(event.id)
         save_to_db(session, "Session saved")
         data = POST_SESSION_DATA
         data['title'] = 'TestSession2'
         url = url_for('event_sessions.edit_view', event_id=event.id, session_id=session.id)
         rv = self.app.post(url, follow_redirects=True, buffered=True, content_type='multipart/form-data', data=data)
         self.assertTrue("TestSession2" in rv.data, msg=rv.data)
Esempio n. 13
0
 def test_role_delete(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         user = ObjectMother.get_user()
         save_to_db(user, "New user saved")
         populate()
         role = Role.query.filter_by(name='coorganizer').first()
         uer = UsersEventsRoles(user, event, role)
         save_to_db(uer, "UER Saved")
         rv = self.app.get(url_for('event_roles.delete_view', uer_id=uer.id, event_id=event.id),
                           follow_redirects=True)
         uer = UsersEventsRoles.query.get(uer.id)
         self.assertTrue(uer is None, msg=rv.data)
 def test_event_view(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         url = url_for('events.details_view', event_id=event.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("event1" in rv.data, msg=rv.data)
         microlocation = ObjectMother.get_microlocation(event_id=event.id)
         track = ObjectMother.get_track(event_id=event.id)
         cfs = ObjectMother.get_cfs(event_id=event.id)
         save_to_db(track, "Track saved")
         save_to_db(microlocation, "Microlocation saved")
         save_to_db(cfs, "Call for speakers saved")
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("event1" in rv.data, msg=rv.data)
 def test_speakers_list(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         url = url_for('event_speakers.index_view', event_id=event.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("Speakers" in rv.data, msg=rv.data)
 def test_wrong_form_config(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         url = url_for('event_sessions.create_view', event_id=event.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertFalse("incorrectly configured" in rv.data, msg=rv.data)
 def test_event_delete(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         url = url_for('events.trash_view', event_id=event.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("Your event has been deleted" in rv.data, msg=rv.data)
 def test_scheduler_publish(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         rv = self.app.get(url_for('event_scheduler.publish', event_id=event.id), follow_redirects=True)
         event = DataGetter.get_event(event.id)
         self.assertTrue(event.schedule_published_on is not None, msg=rv.data)
 def test_event_copy(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         url = url_for('events.copy_event', event_id=event.id)
         rv = self.app.get(url, follow_redirects=True)
         self.assertTrue("Copy of event1" in rv.data, msg=rv.data)
def get_event_ticket():
    set_settings(paypal_mode='sandbox',
                 paypal_sandbox_username=environ.get('PAYPAL_SANDBOX_USERNAME', 'SQPTVKtS8YvItGQuvHFvwve4'),
                 paypal_sandbox_password=environ.get('PAYPAL_SANDBOX_PASSWORD', 'SQPTVKtS8YvItGQuvHFvwve4'),
                 paypal_sandbox_signature=environ.get('PAYPAL_SANDBOX_SIGNATURE', 'SQPTVKtS8YvItGQuvHFvwve4'),
                 secret='super secret key')
    event = ObjectMother.get_event()
    event.name = 'Super Event'
    event.state = 'Published'
    event.paypal_email = '*****@*****.**'
    save_to_db(event, "Event Saved")
    stripe_auth = StripeAuthorization(
        stripe_secret_key=environ.get('STRIPE_SECRET_KEY', 'sk_test_SQPTVKtS8YvItGQuvHFvwve4'),
        stripe_refresh_token=environ.get('STRIPE_REFRESH_TOKEN', 'sk_test_SQPTVKtS8YvItGQuvHFvwve4'),
        stripe_publishable_key=environ.get('STRIPE_PUBLISHABLE_KEY', 'pk_test_e2jsd4RNUlYesCUb2KJ9nkCm'),
        stripe_user_id=environ.get('STRIPE_USER_ID', '1445522255'),
        stripe_email=environ.get('STRIPE_EMAIL', '*****@*****.**'),
        event_id=event.id
    )
    save_to_db(stripe_auth, "StripeAuthorization Saved")
    ticket = Ticket(name='Test Ticket',
                    type='paid',
                    sales_start=datetime.now() - timedelta(days=5),
                    sales_end=datetime.now() + timedelta(days=5),
                    description="SomeTicket",
                    event=event,
                    price=50)
    save_to_db(ticket, "Ticket Saved")
    save_to_db(Module(ticket_include=True, payment_include=True, donation_include=True))
    return event, ticket
 def test_unpublished_event_view_attempt(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event Saved")
         rv = self.app.get(url_for('event_detail.display_event_detail_home', identifier=event.identifier),
                           follow_redirects=True)
         self.assertEqual(rv.status_code, 404)
 def test_event_publish(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         url = url_for('events.publish_event', event_id=event.id)
         rv = self.app.get(url, follow_redirects=True)
         event = DataGetter.get_event(event.id)
         self.assertEqual("Published", event.state, msg=event.state)
 def test_multiple_microlocation_for_same_event(self):
     microlocation1 = ObjectMother.get_microlocation()
     microlocation2 = Microlocation(name='test2',
                                    latitude=1.0,
                                    longitude=1.0,
                                    event_id=1)
     self.assertEqual(microlocation1.event_id, 1)
     self.assertEqual(microlocation2.event_id, 1)
Esempio n. 24
0
    def test_role_create_post(self):
        with app.test_request_context():
            event = ObjectMother.get_event()
            save_to_db(event, "Event saved")
            user = ObjectMother.get_user()
            save_to_db(user, "New user saved")
            populate()
            data = {
                'user_email': user.email,
                'user_role': 'coorganizer'
            }
            rv = self.app.post(url_for('event_roles.create_view', event_id=event.id), follow_redirects=True, data=data)

            # Check if user has been sent a Role Invite
            role = Role.query.filter_by(name='coorganizer').first()
            ri = RoleInvite.query.filter_by(email=user.email, event=event, role=role).first()
            self.assertTrue(ri is not None, msg=rv.data)
def get_event_invoice():
    set_settings(paypal_mode='sandbox',
                 paypal_sandbox_username=environ.get('PAYPAL_SANDBOX_USERNAME', 'SQPTVKtS8YvItGQuvHFvwve4'),
                 paypal_sandbox_password=environ.get('PAYPAL_SANDBOX_PASSWORD', 'SQPTVKtS8YvItGQuvHFvwve4'),
                 paypal_sandbox_signature=environ.get('PAYPAL_SANDBOX_SIGNATURE', 'SQPTVKtS8YvItGQuvHFvwve4'),
                 stripe_secret_key='sk_test_SQPTVKtS8YvItGQuvHFvwve4',
                 stripe_publishable_key='pk_test_e2jsd4RNUlYesCUb2KJ9nkCm',
                 secret='super secret key')
    event = ObjectMother.get_event()
    event.name = 'Super Event'
    event.state = 'Published'
    user = ObjectMother.get_user()
    save_to_db(user)
    save_to_db(event, "Event Saved")
    new_invoice = EventInvoice(amount=100, event_id=event.id, user_id=user.id)
    save_to_db(new_invoice, "Ticket Saved")
    return event, new_invoice
 def test_published_event_view(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         event.state = 'Published'
         save_to_db(event, "Event Saved")
         rv = self.app.get(url_for('event_detail.display_event_detail_home', identifier=event.identifier),
                           follow_redirects=True)
         self.assertTrue("Open Event" in rv.data, msg=rv.data)
Esempio n. 27
0
 def test_role_update(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         user = ObjectMother.get_user()
         save_to_db(user, "New user saved")
         populate()
         role = Role.query.filter_by(name='coorganizer').first()
         uer = UsersEventsRoles(user, event, role)
         save_to_db(uer, "UER Saved")
         data = {
             'user_email': user.email,
             'user_role': 'track_organizer'
         }
         rv = self.app.post(url_for('event_roles.edit_view', uer_id=uer.id, event_id=event.id), data=data,
                            follow_redirects=True)
         uer = DataGetter.get_user_event_roles_by_role_name(event.id, 'track_organizer').first()
         self.assertTrue(uer is not None, msg=rv.data)
 def test_published_event_view_coc(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         event.state = 'Published'
         event.code_of_conduct = 'Test Code of Conduct'
         save_to_db(event, "Event Saved")
         rv = self.app.get(url_for('event_detail.display_event_coc', identifier=event.identifier),
                           follow_redirects=True)
         self.assertTrue("Code of Conduct" in rv.data, msg=rv.data)
 def test_published_event_sessions_view(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         event.state = 'Published'
         save_to_db(event, "Event Saved")
         track = ObjectMother.get_track()
         track.event_id = event.id
         save_to_db(track, "Track Saved")
         speaker = ObjectMother.get_speaker()
         speaker.event_id = event.id
         save_to_db(speaker, "Speaker Saved")
         session = ObjectMother.get_session()
         session.event_id = event.id
         session.speakers = [speaker]
         save_to_db(speaker, "Session Saved")
         rv = self.app.get(url_for('event_detail.display_event_sessions', identifier=event.identifier),
                           follow_redirects=True)
         self.assertTrue("Sessions" in rv.data, msg=rv.data)
def get_event():
    event = ObjectMother.get_event()
    event.name = 'Super Event'
    event.start_time = datetime.now() + timedelta(days=5)
    event.end_time = event.start_time + timedelta(days=5)
    event.location_name = 'India'
    event.searchable_location_name = 'India'
    event.state = 'Published'
    return event
 def test_published_event_schedule_view(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         event.state = 'Published'
         event.schedule_published_on = datetime.now()
         save_to_db(event, "Event Saved")
         track = ObjectMother.get_track()
         track.event_id = event.id
         save_to_db(track, "Track Saved")
         speaker = ObjectMother.get_speaker()
         speaker.event_id = event.id
         save_to_db(speaker, "Speaker Saved")
         microlocation = ObjectMother.get_microlocation()
         save_to_db(microlocation, "Microlocation Saved")
         session = ObjectMother.get_session()
         session.event_id = event.id
         session.state = 'accepted'
         session.microlocation_id = microlocation.id
         session.speakers = [speaker]
         save_to_db(session, "Session Saved")
         rv = self.app.get(url_for('event_detail.display_event_schedule', identifier=event.identifier),
                           follow_redirects=True)
         self.assertTrue("Schedule" in rv.data, msg=rv.data)
 def test_add_session_type_to_db(self):
     """Checks the one to many relationship between event and session_types and
             the many to one relationship between session and session_types"""
     self.app = Setup.create_app()
     with app.test_request_context():
         event = ObjectMother.get_event()
         session1 = ObjectMother.get_session()
         session_type1 = SessionType(name='Type1', length='30', event_id='1')
         session_type2 = SessionType(name='Type2', length='30', event_id='1')
         session2 = Session(title='test2',
                            long_abstract='dsadsd',
                            start_time=datetime(2003, 8, 4, 12, 30, 45),
                            end_time=datetime(2003, 8, 4, 12, 30, 45),
                            session_type=session_type1)
         save_to_db(event, "Event Saved")
         save_to_db(session1, "Session1 Saved")
         save_to_db(session2, "Session2 Saved")
         save_to_db(session_type1, "SessionType1 Saved")
         save_to_db(session_type2, "SessionType2 Saved")
         self.assertEqual(session_type1.event_id, 1)
         self.assertEqual(session_type2.event_id, 1)
         self.assertEqual(session2.session_type_id, 1)
         self.assertEqual(session1.session_type_id, None)
Esempio n. 33
0
 def test_published_event_unpublished_schedule_view_attempt(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         event.state = 'Published'
         save_to_db(event, "Event Saved")
         track = ObjectMother.get_track()
         track.event_id = event.id
         save_to_db(track, "Track Saved")
         speaker = ObjectMother.get_speaker()
         speaker.event_id = event.id
         save_to_db(speaker, "Speaker Saved")
         microlocation = ObjectMother.get_microlocation()
         save_to_db(microlocation, "Microlocation Saved")
         session = ObjectMother.get_session()
         session.event_id = event.id
         session.microlocation_id = microlocation.id
         session.speakers = [speaker]
         session.state = 'accepted'
         save_to_db(session, "Session Saved")
         rv = self.app.get(url_for('event_detail.display_event_schedule',
                                   identifier=event.identifier),
                           follow_redirects=True)
         self.assertEqual(rv.status_code, 404)
Esempio n. 34
0
    def test_db_sessions(self):
        with app.test_request_context():
            # create event
            event = ObjectMother.get_event()
            db.session.add(event)
            db.session.commit()
            # test
            for i in range(1, 10000):
                session = ObjectMother.get_session()
                session.name = 'Session' + str(i)
                db.session.add(session)
            db.session.commit()
            url = url_for('sadmin_sessions.display_my_sessions_view')
            time.clock()
            self.app.get(url, follow_redirects=True)

            with open("output_session.txt", "w") as text_file:
                for query in get_debug_queries():
                    if query.duration >= ProductionConfig.DATABASE_QUERY_TIMEOUT:
                        text_file.write(
                            "SLOW QUERY: %s\nParameters: %s\nDuration: %fs\nContext: %s\n"
                            % (query.statement, query.parameters,
                               query.duration, query.context))
                        text_file.write("\n")
def get_event_invoice():
    set_settings(
        paypal_mode='sandbox',
        paypal_sandbox_username=environ.get('PAYPAL_SANDBOX_USERNAME',
                                            'SQPTVKtS8YvItGQuvHFvwve4'),
        paypal_sandbox_password=environ.get('PAYPAL_SANDBOX_PASSWORD',
                                            'SQPTVKtS8YvItGQuvHFvwve4'),
        paypal_sandbox_signature=environ.get('PAYPAL_SANDBOX_SIGNATURE',
                                             'SQPTVKtS8YvItGQuvHFvwve4'),
        stripe_secret_key='sk_test_SQPTVKtS8YvItGQuvHFvwve4',
        stripe_publishable_key='pk_test_e2jsd4RNUlYesCUb2KJ9nkCm',
        secret='super secret key')
    event = ObjectMother.get_event()
    event.name = 'Super Event'
    event.state = 'Published'
    user = ObjectMother.get_user()
    save_to_db(user)
    event.creator_id = user.id
    save_to_db(event, "Event Saved")
    new_invoice = EventInvoice(amount=100,
                               event_id=event.id,
                               user_id=event.creator_id)
    save_to_db(new_invoice, "Ticket Saved")
    return event, new_invoice
Esempio n. 36
0
    def test_restore_session_from_trash(self):
        with app.test_request_context():
            event = ObjectMother.get_event()
            session = Session(title='Session 1',
                              long_abstract='dsad',
                              start_time=datetime(2003, 8, 4, 12, 30, 45),
                              end_time=datetime(2003, 8, 4, 12, 30, 45),
                              event_id=1,
                              state='pending',
                              in_trash=True)

            save_to_db(event, "Event saved")
            save_to_db(session, "Session saved")
            restore_session(1)
            self.assertEqual(session.in_trash, False)
Esempio n. 37
0
 def test_add_social_link_to_db(self):
     """Checks the one to many relationship between event and social_links """
     self.app = Setup.create_app()
     with app.test_request_context():
         event = ObjectMother.get_event()
         social_link1 = SocialLink(name='Link1',
                                   link='some_random_link_1',
                                   event_id='1')
         social_link2 = SocialLink(name='Link2',
                                   link='some_random_link_2',
                                   event_id='1')
         save_to_db(event, "Event Saved")
         save_to_db(social_link1, "SocialLink1 Saved")
         save_to_db(social_link2, "SocialLink2 Saved")
         self.assertEqual(social_link1.event_id, 1)
         self.assertEqual(social_link2.event_id, 1)
Esempio n. 38
0
 def test_db_users(self):
     with app.test_request_context():
         start = time.clock()
         for i in range(1, 10000):
             user = ObjectMother.get_user()
             user.email = 'User' + str(i)
             db.session.add(user)
         db.session.commit()
         url = url_for('sadmin_users.index_view')
         self.app.get(url, follow_redirects=True)
         print time.clock() - start
         for query in get_debug_queries():
             if query.duration >= ProductionConfig.DATABASE_QUERY_TIMEOUT:
                 app.logger.warning(
                     "SLOW QUERY: %s\nParameters: %s\nDuration: %fs\nContext: %s\n"
                     % (query.statement, query.parameters, query.duration,
                        query.context))
    def test_add_session_to_trash(self):
        with app.test_request_context():
            event = ObjectMother.get_event()
            session = Session(title='Session 1',
                              long_abstract='dsad',
                              start_time=datetime(2003, 8, 4, 12, 30, 45),
                              end_time=datetime(2003, 8, 4, 12, 30, 45),
                              event_id=1,
                              state='pending',
                              in_trash=False)

            save_to_db(event, "Event saved")
            save_to_db(session, "Session saved")
            trash_session(1)
            url = url_for('event_sessions.index_view', event_id=1)
            rv = self.app.get(url)
            self.assertFalse('Session 1' in rv.data)
            self.assertEqual(session.in_trash, True)
Esempio n. 40
0
def create_discount_code(self):
    event = ObjectMother.get_event()
    save_to_db(event)
    data = {
        "code": "ABC_123",
        "value": "100",
        "value_type": "amount",
        "min_quantity": "1",
        "max_quantity": "2",
        "tickets_number": "30",
        "tickets[]": ["1", "2"]
    }
    response = self.app.post(url_for(
        'event_ticket_sales.discount_codes_create', event_id=event.id),
                             data=data,
                             follow_redirects=True)
    self.assertTrue(str(data['code']) in response.data, msg=response.data)
    return event, TicketingManager.get_discount_code(event.id, data['code'])
    def test_db_users(self):
        with app.test_request_context():
            for i in range(1, 10000):
                user = ObjectMother.get_user()
                user.email = 'User' + str(i)
                db.session.add(user)
            db.session.commit()
            url = url_for('sadmin_users.index_view')

            self.app.get(url, follow_redirects=True)

            with open("output_users.txt", "w") as text_file:
                for query in get_debug_queries():
                    if query.duration >= ProductionConfig.DATABASE_QUERY_TIMEOUT:
                        text_file.write(
                            "SLOW QUERY: %s\nParameters: %s\nDuration: %fs\nContext: %s\n"
                            % (query.statement, query.parameters,
                               query.duration, query.context))
                        text_file.write("\n")
 def test_db_events(self):
     with app.test_request_context():
         for i in range(1, 10000):
             event = ObjectMother.get_event()
             event.name = 'Event' + str(i)
             db.session.add(event)
         db.session.commit()
         url = url_for('sadmin_events.index_view')
         start = time.clock()
         self.app.get(url, follow_redirects=True)
         print time.clock() - start
         with open("output_events.txt", "w") as text_file:
             for query in get_debug_queries():
                 if query.duration >= ProductionConfig.DATABASE_QUERY_TIMEOUT:
                     text_file.write(
                         "SLOW QUERY: %s\nParameters: %s\nDuration: %fs\nContext: %s\n"
                         % (query.statement, query.parameters,
                            query.duration, query.context))
                     text_file.write("\n")
Esempio n. 43
0
def get_event_ticket():
    set_settings(
        paypal_mode='sandbox',
        paypal_sandbox_username=environ.get('PAYPAL_SANDBOX_USERNAME',
                                            'SQPTVKtS8YvItGQuvHFvwve4'),
        paypal_sandbox_password=environ.get('PAYPAL_SANDBOX_PASSWORD',
                                            'SQPTVKtS8YvItGQuvHFvwve4'),
        paypal_sandbox_signature=environ.get('PAYPAL_SANDBOX_SIGNATURE',
                                             'SQPTVKtS8YvItGQuvHFvwve4'),
        secret='super secret key')
    event = ObjectMother.get_event()
    event.name = 'Super Event'
    event.state = 'Published'
    event.paypal_email = '*****@*****.**'
    save_to_db(event, "Event Saved")
    stripe_auth = StripeAuthorization(
        stripe_secret_key=environ.get('STRIPE_SECRET_KEY',
                                      'sk_test_SQPTVKtS8YvItGQuvHFvwve4'),
        stripe_refresh_token=environ.get('STRIPE_REFRESH_TOKEN',
                                         'sk_test_SQPTVKtS8YvItGQuvHFvwve4'),
        stripe_publishable_key=environ.get('STRIPE_PUBLISHABLE_KEY',
                                           'pk_test_e2jsd4RNUlYesCUb2KJ9nkCm'),
        stripe_user_id=environ.get('STRIPE_USER_ID', '1445522255'),
        stripe_email=environ.get('STRIPE_EMAIL', '*****@*****.**'),
        event_id=event.id)
    save_to_db(stripe_auth, "StripeAuthorization Saved")
    ticket = Ticket(name='Test Ticket',
                    type='paid',
                    sales_start=datetime.now() - timedelta(days=5),
                    sales_end=datetime.now() + timedelta(days=5),
                    description="SomeTicket",
                    event=event,
                    price=50)
    save_to_db(ticket, "Ticket Saved")
    save_to_db(
        Module(ticket_include=True,
               payment_include=True,
               donation_include=True))
    return event, ticket
 def test_my_session_detail(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         speaker = Speaker(name="name",
                           email="*****@*****.**",
                           organisation="FOSSASIA",
                           event_id=event.id,
                           user=self.super_admin,
                           country="India")
         save_to_db(speaker, "Speaker saved")
         session = Session(title='test session',
                           long_abstract='dsad',
                           start_time=datetime(2003, 8, 4, 12, 30, 45),
                           end_time=datetime(2003, 8, 4, 12, 30, 45),
                           event_id=event.id,
                           speakers=[speaker],
                           state='pending')
         save_to_db(session, "Session saved")
         rv = self.app.get(url_for('my_sessions.display_session_view',
                                   session_id=session.id),
                           follow_redirects=True)
         self.assertTrue("test session" in rv.data, msg=rv.data)
Esempio n. 45
0
 def test_get_event_roles_for_user(self):
     with app.test_request_context():
         user = ObjectMother.get_user()
         save_to_db(user)
         self.assertTrue(DataGetter.get_event_roles_for_user(user.id))
 def test_admin_messages_edit(self):
     with app.test_request_context():
         setting = ObjectMother.get_message_settings()
         save_to_db(setting, "Message Settings Updated")
         data = DataGetter.get_message_setting_by_action("Next Event")
         self.assertEqual(1, data.mail_status, msg=data.mail_status)
 def test_admin_users(self):
     with app.test_request_context():
         user = ObjectMother.get_user()
         save_to_db(user, "User saved")
         rv = self.app.get(url_for('sadmin_users.index_view'), follow_redirects=True)
         self.assertTrue('*****@*****.**' in rv.data, msg=rv.data)
 def test_add_session_to_db(self):
     session = ObjectMother.get_session()
     with app.test_request_context():
         save_to_db(session, "Session saved")
         self.assertEqual(session.id, 1)
         self.assertEqual(session.event_id, 1)
 def test_admin_admin(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         rv = self.app.get(url_for('sadmin_events.index_view'), follow_redirects=True)
         self.assertTrue('event1' in rv.data, msg=rv.data)
 def test_event_page(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event)
         resp = self.app.get('/sitemaps/events/1.xml.gz')
         self.assertIn('/' + str(event.identifier) + '/', resp.data)
Esempio n. 51
0
 def test_add_event_to_db(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         self.assertEqual(event.id, event.id)
    def test_events_create_post(self):
        with app.test_request_context():
            custom_forms = ObjectMother.get_custom_form()
            url = url_for('events.create_view')
            data = fix_attribute_names(POST_EVENT_DATA.copy(), EVENT_POST)
            del data['copyright']
            del data['call_for_papers']
            data['pay_by_paypal'] = 'paypalYes'
            data['name'] = 'TestEvent 1'
            data['payment_country'] = 'United States'
            data['payment_currency'] = 'USD United States Dollars $'
            data['paypal_email'] = '*****@*****.**'
            data['sponsors_state'] = 'on'
            data['sponsors[name]'] = ['Sponsor 1', 'Sponsor 2']
            data['sponsors[type]'] = ['Gold', 'Silver']
            data['sponsors[url]'] = ["", ""]
            data['sponsors[description]'] = ["", ""]
            data['sponsors[logo]'] = ["", ""]
            data['sponsors[level]'] = ["", ""]
            data['start_date'] = '07/04/2016'
            data['start_time'] = '19:00'
            data['end_date'] = '07/04/2016'
            data['end_time'] = '22:00'
            data['has_session_speakers'] = 'no'
            data['custom_form[name]'] = ['session_form', 'speaker_form']
            data['custom_form[value]'] = [
                custom_forms.session_form, custom_forms.speaker_form
            ]

            # Add Module to include Ticketing System
            save_to_db(Module(True, True, True))
            # Add Tickets
            data['tickets[name]'] = [
                'Free Ticket', 'Paid Ticket', 'Donation Ticket'
            ]
            data['tickets[type]'] = ['free', 'paid', 'donation']
            data['tickets[price]'] = ['', 999, '']
            data['tickets[quantity]'] = [512, 512, 512]
            data['tickets[description]'] = ['', '', '']
            data['tickets[sales_start_date]'] = [
                '07/04/2016', '07/04/2016', '07/04/2016'
            ]
            data['tickets[sales_start_time]'] = ['19:00', '19:00', '19:00']
            data['tickets[sales_end_date]'] = [
                '07/04/2016', '07/04/2016', '07/04/2016'
            ]
            data['tickets[sales_end_time]'] = ['22:00', '22:00', '22:00']
            data['tickets[min_order]'] = [2, 3, 4]
            data['tickets[max_order]'] = [5, 6, 7]
            data['tickets[tags]'] = ['session,talk', 'talk', 'session']

            # Add tax form to event
            data['taxAllow'] = 'taxYes'
            data['tax_country'] = 'Tax Country'
            data['tax_name'] = 'Tax Name'
            data['tax_rate'] = 1
            data['tax_id'] = 1
            data['tax_invoice'] = 'invoiceYes'
            data['registered_company'] = 'TestCompany'
            data['buisness_address'] = 'TestAddress'
            data['invoice_city'] = 'TestCity'
            data['invoice_state'] = 'TestState'
            data['tax_zip'] = 1234
            data['tax_options'] = 'tax_include'
            postdata = ImmutableMultiDict(data)
            rv = self.app.post(url,
                               follow_redirects=True,
                               buffered=True,
                               content_type='multipart/form-data',
                               data=postdata)
            self.assertTrue('TestEvent 1' in rv.data, msg=rv.data)

            #Test Payment Details
            self.assertTrue(data['payment_country'] in rv.data, msg=rv.data)
            self.assertTrue(data['paypal_email'] in rv.data, msg=rv.data)

            # Test Tickets
            event = DataGetter.get_event(1)
            self.assertEqual(len(event.tickets), 3, msg=event.tickets)

            for ticket in event.tickets:
                self.assertIn(ticket.name,
                              data['tickets[name]'],
                              msg=data['tickets[name]'])

            #Test Tax Form
            tax = DataGetter.get_tax_options(1)
            self.assertEqual(tax.country, data['tax_country'])
            self.assertEqual(tax.tax_rate, data['tax_rate'])

            rv2 = self.app.get(url_for('events.details_view', event_id=1))
            self.assertTrue(postdata['sponsors[name]'] in rv2.data,
                            msg=rv2.data)
 def test_index_with_event(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event)
     resp = self.app.get('/sitemap.xml')
     self.assertIn('1.xml.gz', resp.data)
Esempio n. 54
0
 def test_get_invite_by_user(self):
     with app.test_request_context():
         notification = ObjectMother.get_notification()
         save_to_db(notification, 'Save')
         invite = DataGetter.get_invite_by_user_id(1)
         self.assertFalse(invite)
Esempio n. 55
0
 def test_get_user_notification(self):
     with app.test_request_context():
         notification = ObjectMother.get_notification()
         save_to_db(notification, 'Save')
         self.assertTrue(DataGetter.get_user_notification(1))
Esempio n. 56
0
 def setUp(self):
     self.app = Setup.create_app()
     with app.test_request_context():
         db.session.add(ObjectMother.get_event())
         db.session.commit()
Esempio n. 57
0
 def test_scheduler_view(self):
     with app.test_request_context():
         event = ObjectMother.get_event()
         save_to_db(event, "Event saved")
         rv = self.app.get(url_for('event_scheduler.display_view', event_id=event.id), follow_redirects=True)
         self.assertTrue("Scheduler" in rv.data, msg=rv.data)
 def test_get_speaker_by_id(self):
     speaker = ObjectMother.get_speaker()
     with app.test_request_context():
         save_to_db(speaker, "Speaker saved")
         response = self.app.get('/api/v1/event/speakers/1')
         self.assertEqual(response.status_code, 200)
Esempio n. 59
0
 def test_all_user_notifications(self):
     with app.test_request_context():
         user = ObjectMother.get_user()
         self.assertEquals(DataGetter().get_all_user_notifications(user),
                           [])
 def test_add_microlocation_to_db(self):
     microlocation = ObjectMother.get_microlocation()
     with app.test_request_context():
         save_to_db(microlocation, "Microlocation saved")
         self.assertEqual(microlocation.id, 1)
         self.assertEqual(microlocation.event_id, 1)