From 15fdad8e2acf088b807dc4f69da6730590aecbd4 Mon Sep 17 00:00:00 2001 From: Kim Wittenburg Date: Tue, 14 Apr 2020 00:18:09 +0200 Subject: [PATCH] Add some more tests --- tests/test_document.py | 9 +++++++++ tests/test_query.py | 17 ++++++++++++++--- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/tests/test_document.py b/tests/test_document.py index ca8c41f..8bd57b8 100644 --- a/tests/test_document.py +++ b/tests/test_document.py @@ -106,6 +106,15 @@ async def test_reload_deleted(): assert result is False +@pytest.mark.usefixtures("data") +async def test_delete(): + User = make_model() + user = await User.find_one({"name": "John"}) + await user.delete() + assert await User.count_documents() == 3 + assert await User.find_one({"name": "John"}) is None + + @pytest.mark.usefixtures("data") async def test_delete_many(): User = make_model() diff --git a/tests/test_query.py b/tests/test_query.py index 00a0247..4b59016 100644 --- a/tests/test_query.py +++ b/tests/test_query.py @@ -71,6 +71,14 @@ def test_extend_eq(query): } +def test_extend_eq2(query): + query.extend(age=30) + assert query == { + "name": "Name", + "age": {"$eq": 30, "$gt": 20, "$lt": 100}, + } + + def test_extend_eq_same(query): query.extend(name="Name") assert query == { @@ -105,9 +113,12 @@ def test_extend_op_conflict(query): query.extend(age__lt=25) -def test_json_schema(): - query = Query.schema({"ABC": "DEF"}) - assert query == {"$jsonSchema": {"ABC": "DEF"}} +@pytest.mark.parametrize( + "fn,string", [("schema", "jsonSchema"), ("expr", "expr"), ("where", "where")] +) +def test_special(fn, string): + query = getattr(Query, fn)({"ABC": "DEF"}) + assert query == {f"${string}": {"ABC": "DEF"}} def test_text_query():