def test_token_auth(self): # add a user u = User(username='******', email='*****@*****.**', password='******') u.confirmed = True db.session.add(u) db.session.commit() # issue a request with a bad token response = self.client.get(url_for('api.view_user_costs'), headers=self.get_api_headers( 'bad-token', '')) self.assertTrue(response.status_code == 401) # get a token response = self.client.get(url_for('api.view_user_costs'), headers=self.get_api_headers( '*****@*****.**', 'password')) self.assertTrue(response.status_code == 200) json_response = json.loads(response.data.decode('utf-8')) self.assertIsNotNone(json_response.get('token')) token = json_response['token'] # issue a request with the token response = self.client.get(url_for('api.view_user_costs'), headers=self.get_api_headers(token, '')) self.assertTrue(response.status_code == 200)
def test_groups(self): # add a user u = User(username='******', email='*****@*****.**', password='******') u.confirmed = True db.session.add(u) db.session.commit() # create invalid test group response = self.client.post(url_for('api.create_group'), headers=self.get_api_headers( '*****@*****.**', 'password'), data=json.dumps({'name': ''})) self.assertTrue(response.status_code == 400) # create valid group response = self.client.post(url_for('api.create_group'), headers=self.get_api_headers( '*****@*****.**', 'password'), data=json.dumps({'name': 'test_api'})) self.assertTrue(response.status_code == 201) url = response.headers.get('url') self.assertIsNotNone(url) # test response of creation group api response = self.client.get(url, headers=self.get_api_headers( '*****@*****.**', 'password')) self.assertTrue(response.status_code == 200) json_response = json.loads(response.data.decode('utf-8')) self.assertTrue(json_response['url'] == url) self.assertTrue(json_response['name'] == 'test_api') json_group = json_response # create invalid memberships response = self.client.post(url_for('api.membership'), headers=self.get_api_headers( '*****@*****.**', 'password'), data=json.dumps({ 'wrong': 1, 'group_id': 2 })) self.assertTrue(response.status_code == 400) # create valid memberships response = self.client.post(url_for('api.create_group'), headers=self.get_api_headers( '*****@*****.**', 'password'), data=json.dumps({ 'user_id': 1, 'group_id': 1 })) self.assertTrue(response.status_code == 201)