aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/__init__.py11
-rw-r--r--app/config_dev.py4
-rw-r--r--app/tests/test_cli.py3
3 files changed, 15 insertions, 3 deletions
diff --git a/app/__init__.py b/app/__init__.py
index 1c759e7..9f025af 100644
--- a/app/__init__.py
+++ b/app/__init__.py
@@ -22,7 +22,16 @@ def create_database():
db.create_all()
@database_cli.command("delete")
def delete_database():
- db.drop_all()
+ db.drop_all()
+@database_cli.command("admin-create")
+def make_superuser_database():
+ user = User(
+ first_name="Supersu",
+ email=app.config["ADMIN_EMAIL"],
+ password=app.config["ADMIN_PASSWORD"],
+ role="SUPERUSER")
+ db.session.add(user)
+ db.session.commit()
app.cli.add_command(database_cli)
diff --git a/app/config_dev.py b/app/config_dev.py
index 801c0c2..e0b32a0 100644
--- a/app/config_dev.py
+++ b/app/config_dev.py
@@ -1,3 +1,5 @@
SQLALCHEMY_DATABASE_URI = 'sqlite:////tmp/test.db'
SQLALCHEMY_TRACK_MODIFICATIONS = False
-SECRET_KEY = "tchtchtch" \ No newline at end of file
+SECRET_KEY = "tchtchtch"
+ADMIN_EMAIL = "admin@example.com"
+ADMIN_PASSWORD = "iamgroot" \ No newline at end of file
diff --git a/app/tests/test_cli.py b/app/tests/test_cli.py
index 7a5aa73..aec4cee 100644
--- a/app/tests/test_cli.py
+++ b/app/tests/test_cli.py
@@ -3,4 +3,5 @@ from app import database_cli
def test_database_commands(app, client):
runner = app.test_cli_runner()
assert runner.invoke(database_cli,["delete"]).exit_code == 0
- assert runner.invoke(database_cli,["create"]).exit_code == 0 \ No newline at end of file
+ assert runner.invoke(database_cli,["create"]).exit_code == 0
+ assert runner.invoke(database_cli,["admin-create"]).exit_code == 0 \ No newline at end of file