Пример #1
0
 def test_controller_regenerate(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username="******", user_password="******"),
         follow_redirects=True
     )
     response = tester.post(
         '/route',
         data={
             'rangeInput': 15,
             'price': 1000,
             'max_price': 5000,
             'city': "New York",
             't_spot': ["museums"]
         },
         follow_redirects=True
     )
     response = tester.post(
         '/regenerate/Paris',
          data={
             'days': 15,
             'price': 1000
         },
         follow_redirects=True
     )
     self.assertIn(b'Paris', response.data)
Пример #2
0
 def test_add_delete_tourist_spot(self):
     tester = app.test_client(self)
     user = '******'
     it = Itinerary('New York', None)
     self.assertNotEqual(it, None)
     it_id = ExploriumDbApi.save_itinerary(user, it)
     query = ExploriumDbApi.ITINERARY_TABLE.select().where(ExploriumDbApi.ITINERARY_TABLE.c.itinerary_id == it_id)
     result = ExploriumDbApi.conn.execute(query).fetchone()
     self.assertNotEqual(result, None)
     tester.post(
         '/signin',
         data=dict(user_username="******", user_password="******"),
         follow_redirects=True
     )
     add_response = tester.post(
         '/add_spot/661',
         data={
             'itinerary': str(it_id)
         },
         follow_redirects=True
     )
     tester.get('/itinerary/'+str(it_id), follow_redirects=True, content_type='html/text')
     self.assertIn('The Palm Los Angeles', add_response.data)
     del_response = tester.get('/delete_spot/661', follow_redirects=True, content_type='html/text') 
     self.assertNotIn('The Palm Los Angeles', del_response.data)
Пример #3
0
    def test_controller_save(self):
        tester = app.test_client(self)
        user = '******'
        query = ExploriumDbApi.USER_ITINERARIES.delete().where(ExploriumDbApi.USER_ITINERARIES.c.user_id == 1144)
        ExploriumDbApi.conn.execute(query)
        login_response = tester.post(
            '/signin',
            data=dict(user_username="******", user_password="******"),
            follow_redirects=True
        )
        self.assertIn(b'Welcome', login_response.data)
        route_response = tester.post(
            '/route',
            data={
                'rangeInput': 15,
                'price': 1000,
                'max_price': 5000,
                'city': "New York",
                't_spot': ["museums"]
            },
            follow_redirects=True
        )
        self.assertIn(b'New York', route_response.data)

        tester.get('/save', content_type='html/text')
        query = ExploriumDbApi.USER_ITINERARIES.select().where(ExploriumDbApi.USER_ITINERARIES.c.user_id == 1144)
        save_results = ExploriumDbApi.conn.execute(query).fetchone()
        self.assertNotEqual(save_results, None)
        tester.get('/delete_itinerary/'+str(save_results['itinerary_id']), content_type='html/text', follow_redirects=True)
        query = ExploriumDbApi.USER_ITINERARIES.select().where(ExploriumDbApi.USER_ITINERARIES.c.user_id == 1144)
        del_results = ExploriumDbApi.conn.execute(query).fetchone()
        self.assertEqual(del_results, None)
 def test_index2(self):
     tester = app.test_client(self)
     response = tester.get('/signin', content_type='html/text')
     self.assertTrue(b'Login' in response.data)
     self.assertTrue(b'Explorium' in response.data)
     self.assertNotIn(b'Welcome', response.data)
     print('test_index2')
Пример #5
0
 def test_index(self):
     tester = app.test_client(self)
     response = tester.get('/signin', content_type='html/text')
     self.assertEqual(response.status_code, 200)
     SystemTests.usernamen = self.user_generator()
     SystemTests.passwordn = self.user_generator()
     SystemTests.usernamen2 = self.user_generator()
     SystemTests.passwordn2 = self.user_generator()
Пример #6
0
 def test_view_itinerary_get(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username="******", user_password="******"),
         follow_redirects=True
     )
     response = tester.get('/view_itineraries', content_type='html/text', follow_redirects=True)
     #print(response.data)
     self.assertIn(b'New York', response.data)
Пример #7
0
 def test_signin_page2(self):
     tester = app.test_client(self)
     response = tester.post(
         '/signin',
         data=dict(user_username=SystemTests.usernamen, user_password="******"),
         follow_redirects=True
     )
     self.assertNotIn(b'Search Cities', response.data)
     self.assertNotIn(b'Welcome', response.data)
     self.assertIn(b'Login', response.data)
 def test_ze_login_page(self):
     tester = app.test_client(self)
     response = tester.post('/signin',
                            data=dict(user_username=MyTest.usernamen,
                                      user_password=MyTest.passwordn),
                            follow_redirects=True)
     self.assertNotIn(b'Search Cities', response.data)
     self.assertNotIn(b'Welcome', response.data)
     self.assertIn(b'Login', response.data)
     print('test_ze_edit_profile3')
Пример #9
0
 def test_logout_page(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username="******", user_password="******"),
         follow_redirects=True
     )
     response = tester.get('logout', follow_redirects=True)
     self.assertIn(b'Do not have an account', response.data)
     self.assertNotIn(b'Welcome', response.data)
Пример #10
0
 def test_login_guest_page(self):
     tester = app.test_client(self)
     response = tester.post(
         '/signin_as_a_guest',
         data=dict(user_username="******", user_password="******"),
         follow_redirects=True
     )
     self.assertIn(b'Author', response.data)
     self.assertIn(b'Search Cities', response.data)
     self.assertIn(b'Welcome', response.data)
     self.assertNotIn(b'Login', response.data)
Пример #11
0
 def test_za_profile1(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username="******", user_password="******"),
         follow_redirects=True
     )
     response = tester.get('/profile', follow_redirects=True)
     self.assertIn(b'First Name', response.data)
     self.assertIn(b'Last Name', response.data)
     self.assertNotIn(b'Welcome', response.data)
Пример #12
0
 def test_za_edit_profile1(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username="******", user_password="******"),
         follow_redirects=True
     )
     response = tester.get('profile-edit', follow_redirects=True)
     self.assertIn(b'Edit Profile', response.data)
     self.assertIn(b'Save Changes', response.data)
     self.assertNotIn(b'Welcome', response.data)
Пример #13
0
 def test_login_page_before(self):
     tester = app.test_client(self)
     response = tester.post(
         '/signin',
         data=dict(user_username=SystemTests.usernamen, user_password=SystemTests.passwordn),
         follow_redirects=True
     )
     self.assertNotIn(b'Search Cities', response.data)
     self.assertNotIn(b'Welcome', response.data)
     self.assertIn(b'Login', response.data)
     self.assertIn(b'Do not have an account', response.data)
 def test_search_page4(self):
     tester = app.test_client(self)
     tester.post('/signin',
                 data=dict(user_username="******",
                           user_password="******"),
                 follow_redirects=True)
     response = tester.post('/search-city',
                            data=dict(search_box="Nwe York"),
                            follow_redirects=True)
     self.assertIn(b'Search Results: Nwe York', response.data)
     self.assertIn(b'Routes', response.data)
     self.assertIn(b'Spiderman1', response.data)
     print('test_search_page4')
Пример #15
0
 def test_signup_invalid_email(self):
     tester = app.test_client(self)
     response = tester.post(
         '/signup',
         data=dict(user_username='******',
                   user_password=SystemTests.passwordn,
                   user_repeat_password=SystemTests.passwordn,
                   user_email='*****@*****.**',
                   user_firstname='userf',
                   user_lastname='userl'),
         follow_redirects=True
     )
     self.assertIn(b'Invalid Email', response.data)
Пример #16
0
 def test_search_page5(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username="******", user_password="******"),
         follow_redirects=True
     )
     response = tester.post(
         '/search_city',
         data=dict(search_box="%……。等"),
         follow_redirects=True
     )
     self.assertNotIn(b'Search Results: %……。等', response.data)
Пример #17
0
 def test_zb_edit_profile2(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username='******', user_password='******'),
         follow_redirects=True
     )
     response = tester.post(
         '/profile-edit',
         data={'user-firstname': None,
               'user-lastname': 'lastname2',
               'user-email': SystemTests.usernamen2 + '@gmail.com',
               'user-username': SystemTests.usernamen},
         follow_redirects=True
     )
     self.assertIn('Fields cannot be empty.', response.data)
Пример #18
0
 def test_zh_edit_profile5(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username=SystemTests.usernamen2, user_password=SystemTests.passwordn),
         follow_redirects=True
     )
     response = tester.post(
         '/profile-edit',
         data={'user-firstname': 'firstname2',
               'user-lastname': 'lastname2',
               'user-email': None,
               'user-username': SystemTests.usernamen2},
         follow_redirects=True
     )
     self.assertIn('Fields cannot be empty.', response.data)
Пример #19
0
 def test_zd_edit_profile3(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username='******', user_password='******'),
         follow_redirects=True
     )
     response = tester.post(
         '/profile-edit',
         data={'user-firstname': 'spi',
               'user-lastname': 'der',
               'user-email': '*****@*****.**',
               'user-username': '******'},
         follow_redirects=True
     )
     self.assertIn('Username is already taken', response.data)
Пример #20
0
 def test_zc_edit_profile3(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username=SystemTests.usernamen, user_password=SystemTests.passwordn),
         follow_redirects=True
     )
     response = tester.post(
         '/profile-edit',
         data={'user-firstname': 'firstname2',
               'user-lastname': 'lastname2',
               'user-email': SystemTests.usernamen2 + '@gmail.com',
               'user-username': SystemTests.usernamen2},
         follow_redirects=True
     )
     self.assertIn(SystemTests.usernamen2, response.data)
Пример #21
0
 def test_ze_edit_profile3(self):
     tester = app.test_client(self)
     tester.post(
         '/signin',
         data=dict(user_username='******', user_password='******'),
         follow_redirects=True
     )
     response = tester.post(
         '/profile-edit',
         data={'user-firstname': 'spi',
               'user-lastname': 'der',
               'user-email': '*****@*****.**',
               'user-username': '******'},
         follow_redirects=True
     )    
     self.assertIn('Invalid Email', response.data)
 def test_zg_edit_profile4(self):
     tester = app.test_client(self)
     tester.post('/signin',
                 data=dict(user_username=MyTest.usernamen2,
                           user_password=MyTest.passwordn),
                 follow_redirects=True)
     response = tester.post('/profile-edit',
                            data={
                                'user-firstname': 'firstname2',
                                'user-lastname': None,
                                'user-email':
                                MyTest.usernamen2 + '@gmail.com',
                                'user-username': MyTest.usernamen2
                            },
                            follow_redirects=True)
     self.assertIn('Fields cannot be empty.', response.data)
     print('test_zg_edit_profile3')
 def test_get_itinerary(self):
     tester = app.test_client(self)
     tester.post('/signin',
                 data=dict(user_username="******",
                           user_password="******"),
                 follow_redirects=True)
     response = tester.post('/route.html',
                            data={
                                'rangeInput': 15,
                                'min_price': 1000,
                                'max_price': 5000,
                                'city': "New York",
                                't_spot': ["museums"]
                            },
                            follow_redirects=True)
     self.assertIn(b'New York', response.data)
     print('test_get_itinerary')
Пример #24
0
 def test_signup_page4(self):
     tester = app.test_client(self)
     try:
         response = tester.post(
         '/signup',
         data = dict(user_username=SystemTests.usernamen,
                     user_password = SystemTests.passwordn,
                     user_repeat_password = SystemTests.passwordn,
                     user_email = 'aaa',
                     user_firstname='userf',
                     user_lastname = 'userl'),
         follow_redirects = True
         )
         self.assertNotIn(b'Search Cities' , response.data)
         self.assertIn(b'Search Cities', response.data)
         self.assertIn(b'signup', response.data)
     except Exception as e:
         pass
 def test_signup_page1(self):
     tester = app.test_client(self)
     tester.post('/signup',
                 data=dict(user_username=MyTest.usernamen,
                           user_password=MyTest.passwordn,
                           user_repeat_password=MyTest.passwordn,
                           user_email=MyTest.usernamen + '@gmail.com',
                           user_firstname='userf',
                           user_lastname='userl'),
                 follow_redirects=True)
     response = tester.post('/signin',
                            data=dict(user_username=MyTest.usernamen,
                                      user_password=MyTest.passwordn),
                            follow_redirects=True)
     self.assertIn(b'Author', response.data)
     self.assertIn(b'Search Cities', response.data)
     self.assertIn(b'Welcome', response.data)
     self.assertNotIn(b'Login', response.data)
     print('test_signup_page1')
Пример #26
0
 def test_controller_add_remove_user_id(self):
     query = ExploriumDbApi.USER_ITINERARIES.delete().where(ExploriumDbApi.USER_ITINERARIES.c.user_id == 1144)
     ExploriumDbApi.conn.execute(query)
     tester = app.test_client(self)
     user = '******'
     it = Itinerary('New York', None)
     self.assertNotEqual(it, None)
     it_id = ExploriumDbApi.save_itinerary(user, it)
     tester.post(
         '/signin',
         data=dict(user_username="******", user_password="******"),
         follow_redirects=True
     )
     tester.post(
         '/route',
         data={
             'rangeInput': 15,
             'price': 1000,
             'max_price': 5000,
             'city': "Paris",
             't_spot': ["museums"]
         },
         follow_redirects=True
     )
     tester.post(
         '/add_user/'+str(it_id),
          data={
             'user': '******',
         },
         follow_redirects=True
     )
     response = tester.get('/view_itineraries', content_type='html/text')
     self.assertIn(b'helloworld', response.data)
     tester.post(
         '/remove_user/'+str(it_id),
          data={
             'user': '******',
         },
         follow_redirects=True
     ) 
     response = tester.get('/view_itineraries', content_type='html/text')
     self.assertNotIn(b'helloworld', response.data)
 def test_zi_edit_profile6(self):
     tester = app.test_client(self)
     tester.post('/signin',
                 data=dict(user_username=MyTest.usernamen2,
                           user_password=MyTest.passwordn),
                 follow_redirects=True)
     response = tester.post('/profile-edit',
                            data={
                                'user-firstname': 'firstname2中',
                                'user-lastname': 'lastname2',
                                'user-email':
                                MyTest.usernamen2 + '@gmail.com',
                                'user-username': MyTest.usernamen2
                            },
                            follow_redirects=True)
     self.assertNotIn('Fields cannot be empty.', response.data)
     self.assertIn('firstname2中', response.data)
     query = ExploriumDbApi.USERS_TABLE.delete().where(
         ExploriumDbApi.USERS_TABLE.c.username == MyTest.usernamen2)
     ExploriumDbApi.conn.execute(query)
     print('test_zi_edit_profile3')
Пример #28
0
    def test_controller_get_comment(self):
        # TODO check for valid, do cleanup after
        tester = app.test_client(self)
        tester.post(
            '/signin',
            data=dict(user_username="******", user_password="******"),
            follow_redirects=True
        )
#        tester.post(
#            '/route',
#            data={
#                'rangeInput': 15,
#                'price': 1000,
#                'max_price': 5000,
#                'city': "New York",
#                't_spot': ["museums"]
#            },
#            follow_redirects=True
#        )
        tester.post(
            '/route',
            data={
                'rangeInput': 15,
                'price': 1000,
                'max_price': 5000,
                'city': "New York",
                't_spot': ["museums"]
            },
            follow_redirects=True
        )
        tester.get('/save', content_type='html/text')
        response = tester.post(
            '/get_comment',
            data=dict(comment="Test Comment"),
            follow_redirects=True
        )
        self.assertIn(b'Comment', response.data)