def test_create_movie_producer_200(self): bearer = retrieve_auth_token(3) self.assertTrue(bearer) index = 0 res = self.client().post('/movies', json=self.new_movies[index], headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 200) self.assertEqual(data['success'], True) self.assertEqual(data['movie']['title'], self.new_movies[index]['title']) self.assertEqual(data['movie']['director'], self.new_movies[index]['director']) self.assertEqual(data['movie']['year'], self.new_movies[index]['year']) movieids.append(data['movie']['id']) index += 1 res = self.client().post('/movies', json=self.new_movies[index], headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 200) self.assertEqual(data['success'], True) self.assertEqual(data['movie']['title'], self.new_movies[index]['title']) self.assertEqual(data['movie']['director'], self.new_movies[index]['director']) self.assertEqual(data['movie']['year'], self.new_movies[index]['year']) movieids.append(data['movie']['id'])
def test_retrieve_actors_producer_401(self): bearer = retrieve_auth_token(3) self.assertTrue(bearer) res = self.client().get('/actors', headers={'Authorization': f'{bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 401)
def test_create_actor_assistant_forbidden_403(self): bearer = retrieve_auth_token(1) self.assertTrue(bearer) res = self.client().post('/actors', json=self.new_actors[0], headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 403)
def test_delete_movie_director_forbidden_403(self): bearer = retrieve_auth_token(2) self.assertTrue(bearer) id = movieids[0] res = self.client().delete( f'/movies/{id}', headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 403)
def test_create_movie_producer_400(self): bearer = retrieve_auth_token(3) self.assertTrue(bearer) res = self.client().post('/movies', headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 400) self.assertEqual(data['success'], False) self.assertEqual(data['message'], 'bad request')
def test_retrieve_actors_director_404(self): bearer = retrieve_auth_token(2) self.assertTrue(bearer) res = self.client().get('/actors', headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 404) self.assertEqual(data['success'], False) self.assertEqual(data['message'], 'resource not found')
def test_delete_actor_producer_200(self): bearer = retrieve_auth_token(3) self.assertTrue(bearer) id = actorids[1] res = self.client().delete( f'/actors/{id}', headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 200) self.assertEqual(data['success'], True) self.assertEqual(data['deleted'], id)
def test_retrieve_movies_director_200(self): bearer = retrieve_auth_token(2) self.assertTrue(bearer) res = self.client().get('/movies', headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 200) self.assertEqual(data['success'], True) self.assertTrue(data['movies']) self.assertEqual(len(data['movies']), 2)
def test_create_actor_producer_405(self): bearer = retrieve_auth_token(3) self.assertTrue(bearer) res = self.client().post('/actors/11', json=self.new_actors[1], headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 405) self.assertEqual(data['success'], False) self.assertEqual(data['message'], 'method not supported')
def test_delete_movie_producer_422(self): bearer = retrieve_auth_token(3) self.assertTrue(bearer) id = movieids[0] res = self.client().delete( f'/movies/{id}', headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 422) self.assertEqual(data['success'], False) self.assertEqual(data['message'], 'unprocessable')
def test_update_actor_assistant_forbidden_403(self): bearer = retrieve_auth_token(1) self.assertTrue(bearer) body = {'age': 30} id = actorids[0] res = self.client().patch( f'/actors/{id}', json=body, headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 403)
def test_update_movie_assistant_forbidden_403(self): bearer = retrieve_auth_token(1) self.assertTrue(bearer) body = {'year': 2021} id = movieids[1] res = self.client().patch( f'/movies/{id}', json=body, headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 403)
def test_update_movie_producer_404(self): bearer = retrieve_auth_token(3) self.assertTrue(bearer) body = {'year': 2022} res = self.client().patch( '/movies/1111', json=body, headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 404) self.assertEqual(data['success'], False) self.assertEqual(data['message'], 'resource not found')
def test_update_actor_producer_200(self): bearer = retrieve_auth_token(3) self.assertTrue(bearer) body = {'age': 36} id = actorids[0] res = self.client().patch( f'/actors/{id}', json=body, headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 200) self.assertEqual(data['success'], True) self.assertEqual(data['actor']['id'], id) self.assertEqual(data['actor']['name'], self.new_actors[0]['name']) self.assertEqual(data['actor']['gender'], self.new_actors[0]['gender']) self.assertEqual(data['actor']['age'], body['age'])
def test_update_movie_producer_200(self): bearer = retrieve_auth_token(3) self.assertTrue(bearer) body = {'director': 'Cameron'} id = movieids[1] res = self.client().patch( f'/movies/{id}', json=body, headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 200) self.assertEqual(data['success'], True) self.assertEqual(data['movie']['id'], id) self.assertEqual(data['movie']['title'], self.new_movies[1]['title']) self.assertEqual(data['movie']['director'], body['director']) self.assertEqual(data['movie']['year'], self.new_movies[1]['year'])
def test_create_actor_producer_200(self): bearer = retrieve_auth_token(3) self.assertTrue(bearer) index = 1 res = self.client().post('/actors', json=self.new_actors[index], headers={'Authorization': f'Bearer {bearer}'}) data = json.loads(res.data) self.assertEqual(res.status_code, 200) self.assertEqual(data['success'], True) self.assertEqual(data['actor']['name'], self.new_actors[index]['name']) self.assertEqual(data['actor']['gender'], self.new_actors[index]['gender']) self.assertEqual(data['actor']['age'], self.new_actors[index]['age']) actorids.append(data['actor']['id']) self.assertEqual(len(actorids), 2)
def get_oauth_token(level): bearer_token = retrieve_auth_token(level) success = bearer_token != "" return jsonify({'success': success, 'access_token': bearer_token})