commencement des tests

This commit is contained in:
MiharyR 2022-01-05 09:07:25 +01:00
parent 419e3c1aa9
commit cd5de1eb28
3 changed files with 178 additions and 0 deletions

View file

@ -0,0 +1,59 @@
from logs_model import Logs
from datetime import date
TAB_LOG = [
{
"id": 1,
"date": date.fromisoformat('2021-12-04'),
"user": "riri",
"ip": "0.0.0.0",
"table": "Users",
"action": "connexion",
"status": "succes",
"status_code": 200
},
{
"id": 2,
"date": date.fromisoformat('2021-12-04'),
"user": "fifi",
"ip": "0.0.0.0",
"table": "Users",
"action": "connexion",
"status": "succes",
"status_code": 200
},
{
"id": 3,
"date": date.fromisoformat('2021-12-04'),
"user": "loulou",
"ip": "0.0.0.0",
"table": "Users",
"action": "connexion",
"status": "succes",
"status_code": 200
},
]
def get_log_object(i: int):
return Logs(
id=TAB_LOG[i]["id"],
date=TAB_LOG[i]["date"],
user=TAB_LOG[i]["user"],
ip=TAB_LOG[i]["ip"],
table=TAB_LOG[i]["table"],
action=TAB_LOG[i]["action"],
status=TAB_LOG[i]["status"],
status_code=TAB_LOG[i]["status_code"]
)
def get_log_json(i: int):
return TAB_LOG[i]

View file

@ -0,0 +1,66 @@
from users_model import Users
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
email = db.Column(db.String(), nullable=False, unique=True)
hash_pass = db.Column(db.LargeBinary(), nullable=False)
salt = db.Column(db.LargeBinary(), nullable=False)
is_admin = db.Column(db.Boolean, default=False, nullable=False)
TAB_USER = [
{
"id": 1,
"email": "riri@gmail.com",
"login": "riri",
"hash_pass": "ririPass",
"isAdmin": False
},
{
"id": 2,
"email": "fifi@gmail.com",
"login": "fifi",
"hashPass": "fifiPass",
"isAdmin": False
},
{
"id": 3,
"email": "loulou@gmail.com",
"login": "loulou",
"hashPass": "loulouPass",
"isAdmin": False
},
{
"id": 4,
"email": "picsou@gmail.com",
"login": "picsou",
"hashPass": "picsouPass",
"isAdmin": True
},
{
"id": 5,
"email": "donald@gmail.com",
"login": "donald",
"hashPass": "donaldPass",
"isAdmin": True
},
]
def get_user_object(i: int):
return Users(
id=TAB_USER[i]["id"],
email=TAB_USER[i]["email"],
login=TAB_USER[i]["login"],
hashPass=TAB_USER[i]["hashPass"],
isAdmin=TAB_USER[i]["isAdmin"]
)
def get_user_json(i: int):
return TAB_USER[i]

53
backend/test/test.py Normal file
View file

@ -0,0 +1,53 @@
# Third party modules
import pytest
from datetime import date
from __init__ import create_app, db
from users_model import Users
from logs_model import Logs
import fictive_users
import ficitve_logs
@pytest.fixture
def client():
app = create_app()
app.config["TESTING"] = True
app.testing = True
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite://"
client = app.test_client()
with app.app_context():
db.create_all()
for i in range(1,6):
db.session.add(fictive_users.get_user_object(i))
for i in range(1,3):
db.session.add(ficitve_logs.get_log_object(i))
db.session.commit()
yield client
def test_get_user(client):
index = 1
predict_results = client.get("/api/users/{}}".format(index))
true_results = fictive_users.get_user_json(index)
assert predict_results.json == true_results