示例#1
0
 def test_user_status_invalid_empty(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Male')
     language_creation(tester, 'English')
     level_creation(tester, 'Advanced')
     response = tester.post("/user/",
                            data=VALID_REGISTER,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['id_user'], 1)
     self.assertEqual(status_code, 200)
     self.assertEqual(data['user_status'], 'online')
     response = tester.put("/user/1/user_status",
                           data=INVALID_USER_STATUS_1,
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(status_code, 403)
     self.assertEqual(data['Error'], "User status can't be empty.")
     response = tester.put("/user/1/user_status",
                           data=INVALID_USER_STATUS_2,
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(status_code, 403)
     self.assertEqual(data['Error'], "User status can't be empty.")
示例#2
0
 def test_valid_user_login_with_log_dataset(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Male')
     language_creation(tester, 'English')
     level_creation(tester, 'Advanced')
     tester.post("/user/",
                 data=VALID_REGISTER,
                 content_type='application/json')
     tester.post("/user/",
                 data=ANOTHER_VALID_REGISTER,
                 content_type='application/json')
     response = tester.post("/login/",
                            data=VALID_LOGIN_1,
                            content_type='application/json')
     response = tester.post("/login/",
                            data=VALID_LOGIN_1,
                            content_type='application/json')
     response = tester.post("/login/",
                            data=VALID_LOGIN_2,
                            content_type='application/json')
     response = tester.post("/login/",
                            data=VALID_LOGIN_2,
                            content_type='application/json')
     response = tester.get("/login/dataset",
                           content_type='application/json')
     data = json.loads(response.get_data(as_text=True))
     status_code = response.status_code
     self.assertEqual(status_code, 200)
     self.assertEqual(data[0]['active_users'], 2)
示例#3
0
 def test_valid_block_get(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Male')
     language_creation(tester, 'English')
     level_creation(tester, 'Advanced')
     response = tester.post("/user/",
                            data=VALID_REGISTER,
                            content_type='application/json')
     response = tester.post("/user/",
                            data=ANOTHER_VALID_REGISTER,
                            content_type='application/json')
     response = tester.post("/block/",
                            data=VALID_BLOCK,
                            content_type='application/json')
     response = tester.get("/block/1", content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['blocked'][0]['id_user'], 2)
     self.assertEqual(status_code, 200)
     response = tester.get("/block/2", content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['blocked_by'][0]['id_user'], 1)
     self.assertEqual(status_code, 200)
     response = tester.get("/user/", content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     print(data)
     self.assertEqual(status_code, 200)
     self.assertEqual(data[0]['blocked_by'][0], 2)
     self.assertEqual(data[1]['blocked'][0], 1)
示例#4
0
    def test_index(self):
        tester = create_app().test_client(self)
        response = tester.get("/")
        status_code = response.status_code

        # Check for response 200
        self.assertEqual(status_code, 200)
示例#5
0
 def test_valid_other_text_report_get(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Male')
     language_creation(tester, 'English')
     level_creation(tester, 'Advanced')
     tester.post("/report_type/",
                 data=json.dumps({'report_type_description': 'Algo malo'}),
                 content_type='application'
                 '/json')
     response = tester.post("/user/",
                            data=VALID_REGISTER,
                            content_type='application/json')
     response = tester.post("/user/",
                            data=ANOTHER_VALID_REGISTER,
                            content_type='application/json')
     response = tester.post("/report/",
                            data=VALID_OTHER_REPORT,
                            content_type='application/json')
     response = tester.get("/report/1", content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     print(data)
     self.assertEqual(data[0]['id_report'], 1)
     self.assertEqual(data[0]['text'], "Cosas feas")
     self.assertEqual(status_code, 200)
示例#6
0
 def test_valid_report_with_status(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Male')
     language_creation(tester, 'English')
     level_creation(tester, 'Advanced')
     tester.post("/report_type/",
                 data=json.dumps({'report_type_description': 'Algo malo'}),
                 content_type='application'
                 '/json')
     response = tester.post("/user/",
                            data=VALID_REGISTER,
                            content_type='application/json')
     response = tester.post("/user/",
                            data=ANOTHER_VALID_REGISTER,
                            content_type='application/json')
     response = tester.post("/report/",
                            data=VALID_REPORT,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Status'], 'Report Created')
     self.assertEqual(status_code, 200)
     response = tester.get("/user/u23y48298",
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     print(data)
     self.assertEqual(data['reported_by'][0], 2)
     self.assertEqual(data['reported_by_with_status'][0]['is_pending'],
                      True)
     self.assertEqual(
         data['reported_by_with_status'][0]['user_reported_by'], 2)
     self.assertEqual(status_code, 200)
 def test_invalid_genre_creation_already_exists(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Female')
     response = genre_creation(tester, 'female')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'], "Genre already exists in database.")
     self.assertEqual(status_code, 403)
 def test_valid_genre_creation(self):
     tester = create_app().test_client(self)
     response = genre_creation(tester, 'Female')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['id'], 1)
     self.assertEqual(data['genre_description'], "Female")
     self.assertEqual(status_code, 200)
示例#9
0
 def test_valid_language_creation(self):
     tester = create_app().test_client(self)
     response = language_creation(tester, 'Spanish')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['id'], 1)
     self.assertEqual(data['language_description'], "Spanish")
     self.assertEqual(status_code, 200)
 def test_valid_level_creation(self):
     tester = create_app().test_client(self)
     response = level_creation(tester, 'Basic')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['id'], 1)
     self.assertEqual(data['level_description'], "Basic")
     self.assertEqual(status_code, 200)
示例#11
0
 def test_health(self):
     tester = create_app().test_client(self)
     response = tester.get("/health")
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['status'], "UP")
     # Check for response 200
     self.assertEqual(status_code, 200)
示例#12
0
 def test_invalid_language_creation_already_exists(self):
     tester = create_app().test_client(self)
     language_creation(tester, 'Spanish')
     response = language_creation(tester, 'spanish')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'], "language already exists in database.")
     self.assertEqual(status_code, 403)
 def test_valid_report_type_creation(self):
     tester = create_app().test_client(self)
     response = report_type_creation(tester, 'Offensive')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['id'], 1)
     self.assertEqual(data['report_type_description'], "Offensive")
     self.assertEqual(status_code, 200)
示例#14
0
 def test_valid_user_register(self):
     tester = create_app().test_client(self)
     response = tester.post("/admin/",
                            data=VALID_ADMIN_REGISTER,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertIsNotNone(data['token'])
     self.assertEqual(status_code, 200)
 def test_valid_genre_creation_get(self):
     tester = create_app().test_client(self)
     response = genre_creation(tester, 'Female')
     status_code = response.status_code
     response = tester.get("/genre/", content_type='application/json')
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data[0]['id_genre'], 1)
     self.assertEqual(data[0]['genre_description'], "Female")
     self.assertEqual(status_code, 200)
示例#16
0
 def test_invalid_user_register(self):
     tester = create_app().test_client(self)
     response = tester.post("/admin/",
                            data=INVALID_ADMIN_REGISTER,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'], "All fields must be completed.")
     self.assertEqual(status_code, 403)
 def test_invalid_report_type_creation_already_exists(self):
     tester = create_app().test_client(self)
     report_type_creation(tester, 'Offensive')
     response = report_type_creation(tester, 'Offensive')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'],
                      "ReportType already exists in database.")
     self.assertEqual(status_code, 403)
 def test_valid_level_creation_get(self):
     tester = create_app().test_client(self)
     response = level_creation(tester, 'Basic')
     response = tester.get("/level/", content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data[0]['id_level'], 1)
     self.assertEqual(data[0]['level_description'], "Basic")
     self.assertEqual(status_code, 200)
示例#19
0
 def test_invalid_user_login_not_exists_admin(self):
     tester = create_app().test_client(self)
     response = tester.post("/admin/login",
                            data=VALID_ADMIN_LOGIN,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'], "The user doesn't exists.")
     self.assertEqual(status_code, 404)
示例#20
0
 def test_valid_language_creation(self):
     tester = create_app().test_client(self)
     response = language_creation(tester, 'Spanish')
     status_code = response.status_code
     response = tester.get("/language/", content_type='application/json')
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data[0]['id_language'], 1)
     self.assertEqual(data[0]['language_description'], "Spanish")
     self.assertEqual(status_code, 200)
示例#21
0
 def test_invalid_user_register_invalid_level(self):
     tester = create_app().test_client(self)
     language_creation(tester, 'English')
     genre_creation(tester, 'Male')
     response = tester.post("/user/", data=VALID_REGISTER, content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'], "Level doesn't exists.")
     self.assertEqual(status_code, 403)
示例#22
0
 def test_invalid_user_register_date_format(self):
     tester = create_app().test_client(self)
     language_creation(tester, 'English')
     genre_creation(tester, 'Male')
     level_creation(tester, 'Advanced')
     response = tester.post("/user/", data=INVALID_REGISTER_DATE_FORMAT, content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'], "DATE Format must be dd/mm/YYYY.")
     self.assertEqual(status_code, 403)
示例#23
0
 def test_invalid_user_register_under_age(self):
     tester = create_app().test_client(self)
     language_creation(tester, 'English')
     genre_creation(tester, 'Male')
     level_creation(tester, 'Advanced')
     response = tester.post("/user/", data=INVALID_MINOR_REGISTER, content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'], "Age must be at least 16.")
     self.assertEqual(status_code, 403)
示例#24
0
 def test_valid_user_register(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Male')
     language_creation(tester, 'English')
     level_creation(tester, 'Advanced')
     response = tester.post("/user/", data=VALID_REGISTER, content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['id_user'], 1)
     self.assertEqual(status_code, 200)
示例#25
0
 def test_invalid_feedback_not_existent_users(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Male')
     language_creation(tester, 'English')
     level_creation(tester, 'Advanced')
     response = tester.post("/feedback/",
                            data=VALID_FEEDBACK,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'], 'User ID does not exist.')
     self.assertEqual(status_code, 404)
示例#26
0
 def test_invalid_user_login_invalid_password(self):
     tester = create_app().test_client(self)
     tester.post("/admin/",
                 data=VALID_ADMIN_REGISTER,
                 content_type='application/json')
     response = tester.post("/admin/login",
                            data=INVALID_ADMIN_LOGIN,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'], "E-mail and/or password incorrect.")
     self.assertEqual(status_code, 403)
示例#27
0
 def test_invalid_user_register_email_taken(self):
     tester = create_app().test_client(self)
     tester.post("/admin/",
                 data=VALID_ADMIN_REGISTER,
                 content_type='application/json')
     response = tester.post("/admin/",
                            data=VALID_ADMIN_REGISTER,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'],
                      "The email for the registration is already taken.")
     self.assertEqual(status_code, 403)
示例#28
0
 def test_user_status_valid_change(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Male')
     language_creation(tester, 'English')
     level_creation(tester, 'Advanced')
     response = tester.post("/user/",
                            data=VALID_REGISTER,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['id_user'], 1)
     self.assertEqual(status_code, 200)
     self.assertEqual(data['user_status'], 'online')
     response = tester.put("/user/1/user_status",
                           data=VALID_USER_STATUS_1,
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(status_code, 200)
     response = tester.get("/user/u23y48298",
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(status_code, 200)
     self.assertEqual(data['user_status'], 'busy')
     response = tester.put("/user/1/user_status",
                           data=VALID_USER_STATUS_2,
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(status_code, 200)
     response = tester.get("/user/u23y48298",
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(status_code, 200)
     self.assertEqual(data['user_status'], 'offline')
     response = tester.put("/user/1/user_status",
                           data=VALID_USER_STATUS_3,
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(status_code, 200)
     response = tester.get("/user/u23y48298",
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(status_code, 200)
     self.assertEqual(data['user_status'], 'online')
示例#29
0
 def test_invalid_report_not_existent_users(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Male')
     language_creation(tester, 'English')
     level_creation(tester, 'Advanced')
     tester.post("/report_type/",
                 data=json.dumps({'report_type_description': 'Algo malo'}),
                 content_type='application'
                 '/json')
     response = tester.post("/report/",
                            data=VALID_REPORT,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['Error'], 'User ID does not exist.')
     self.assertEqual(status_code, 404)
示例#30
0
 def test_invalid_user_login_disabled(self):
     tester = create_app().test_client(self)
     genre_creation(tester, 'Male')
     language_creation(tester, 'English')
     level_creation(tester, 'Advanced')
     response = tester.post("/user/",
                            data=VALID_REGISTER,
                            content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(data['id_user'], 1)
     self.assertEqual(status_code, 200)
     response = tester.put("/user/1/account_status",
                           data=VALID_DISABLED_ACCOUNT,
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(status_code, 200)
     response = tester.get("/user/u23y48298",
                           content_type='application/json')
     status_code = response.status_code
     data = json.loads(response.get_data(as_text=True))
     self.assertEqual(status_code, 403)
     self.assertEqual(data['Error'], 'User is disabled.')