This commit is contained in:
dni ⚡
2024-10-17 10:36:33 +02:00
parent 2764fefb3d
commit bdeac94d99
4 changed files with 52 additions and 48 deletions
+17 -14
View File
@@ -1,3 +1,5 @@
import json
import pytest
from lnbits.db import (
@@ -6,13 +8,13 @@ from lnbits.db import (
model_to_dict,
update_query,
)
from tests.helpers import DbTestModel2, DbTestModelInner
from tests.helpers import DbTestModel, DbTestModel2
test_data = DbTestModel2(
id=1,
name="test",
value="myvalue",
child=DbTestModelInner(id=2, label="mylabel", description="mydesc"),
label="test",
description="mydesc",
child=DbTestModel(id=2, name="myname", value="myvalue"),
)
@@ -20,8 +22,8 @@ test_data = DbTestModel2(
async def test_helpers_insert_query():
q = insert_query("test_helpers_query", test_data)
assert (
q == "INSERT INTO test_helpers_query (id, name, value, child) "
"VALUES (:id, :name, :value, :child)"
q == "INSERT INTO test_helpers_query (id, label, description, child) "
"VALUES (:id, :label, :description, :child)"
)
@@ -30,23 +32,24 @@ async def test_helpers_update_query():
q = update_query("test_helpers_query", test_data)
assert (
q == "UPDATE test_helpers_query "
"SET id = :id, name = :name, value = :value, child = :child "
"SET id = :id, label = :label, description = :description, child = :child "
"WHERE id = :id"
)
child_dict = json.dumps({"id": 2, "name": "myname", "value": "myvalue"})
test_dict = {"id": 1, "label": "test", "description": "mydesc", "child": child_dict}
@pytest.mark.asyncio
async def test_helpers_model_to_dict():
d = model_to_dict(test_data)
assert d == {
"id": 1,
"name": "test",
"value": "myvalue",
"child": {"id": 2, "label": "mylabel", "description": "mydesc"},
}
assert d == test_dict
@pytest.mark.asyncio
async def test_helpers_dict_to_model():
m = dict_to_model(model_to_dict(test_data), DbTestModel2)
m = dict_to_model(test_dict, DbTestModel2)
assert m == test_data
assert type(m) is DbTestModel2
assert type(m.child) is DbTestModel