forked from kompetenzinventar/ki-backend
40 lines
1.1 KiB
Python
40 lines
1.1 KiB
Python
|
from alembic import command
|
||
|
import json
|
||
|
import unittest
|
||
|
|
||
|
from app import app, migrate
|
||
|
from ki.commands import seed
|
||
|
|
||
|
|
||
|
class TestLoginEndpoint(unittest.TestCase):
|
||
|
def setUp(self):
|
||
|
app.debug = True
|
||
|
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///:memory:"
|
||
|
self.client = app.test_client()
|
||
|
|
||
|
with app.app_context():
|
||
|
config = migrate.get_config()
|
||
|
command.upgrade(config, "head")
|
||
|
|
||
|
seed()
|
||
|
|
||
|
def test_login(self):
|
||
|
response1_data = self.login()
|
||
|
response2_data = self.login()
|
||
|
self.assertNotEqual(response1_data["token"], response2_data["token"])
|
||
|
|
||
|
def login(self):
|
||
|
response = self.client.post("/users/login",
|
||
|
data=json.dumps({
|
||
|
"username": "peter",
|
||
|
"password": "geheim"
|
||
|
}),
|
||
|
content_type="application/json")
|
||
|
self.assertEqual(response.status_code, 200)
|
||
|
self.assertIn("token", response.json)
|
||
|
return response.json
|
||
|
|
||
|
|
||
|
if __name__ == "main":
|
||
|
unittest.main()
|