ki-backend/ki/test/ApiTest.py

45 lines
1.2 KiB
Python
Raw Permalink Normal View History

2021-07-05 19:37:05 +02:00
# SPDX-FileCopyrightText: WTF Kooperative eG <https://wtf-eg.de/>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
2021-06-27 14:25:44 +02:00
from alembic import command
import json
import unittest
from app import app, db, migrate
from ki.actions import seed
2021-07-26 19:56:36 +02:00
from ki.models import Skill
2021-06-27 14:25:44 +02:00
class ApiTest(unittest.TestCase):
maxDiff = None
def setUp(self):
app.debug = True
2021-07-12 18:37:54 +02:00
app.config["KI_AUTH"] = "file"
2021-06-27 14:25:44 +02:00
app.config["TESTING"] = True
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///:memory:"
2021-07-11 12:16:41 +02:00
2021-06-27 14:25:44 +02:00
self.client = app.test_client()
with app.app_context():
config = migrate.get_config()
command.upgrade(config, "head")
seed(True)
2021-07-26 19:56:36 +02:00
max_skill = Skill.query.order_by(Skill.id.desc()).first()
self.max_skill_id = max_skill.id
2021-06-27 14:25:44 +02:00
def tearDown(self):
db.drop_all()
db.engine.dispose()
def login(self, username, password):
login_data = {"username": username, "password": password}
login_response = self.client.post("/users/login", data=json.dumps(login_data), content_type="application/json")
self.assertEqual(login_response.status_code, 200)
self.assertIn("token", login_response.json)
return login_response.json