Add delete function
This commit is contained in:
parent
ea8807cd36
commit
d278077471
@ -109,14 +109,7 @@ You can be specific by using the `id`.
|
||||
|
||||
```python
|
||||
fiable_db.delete(id=4)
|
||||
# {"id": 4, "rev": 6, "table": "default", "data": None}
|
||||
```
|
||||
|
||||
And you can delete by performing a search for their values:
|
||||
|
||||
```python
|
||||
fiable_db.delete(data={"name": "Javier"})
|
||||
# {"id": 4, "rev": 6, "table": "default", "data": None}
|
||||
# {"id": 4, "rev": 6, "table": "default", "data": {}}
|
||||
```
|
||||
|
||||
### Step 5: Find one
|
||||
|
@ -187,7 +187,7 @@ def update(
|
||||
return None
|
||||
|
||||
|
||||
def delete(id: int, data: dict, table: str = "") -> Type_Delete_Return:
|
||||
def delete(id: int, table: str = "default") -> Type_Delete_Return:
|
||||
"""Delete data from the database
|
||||
Args:
|
||||
id (int): The id of the data to delete
|
||||
@ -196,7 +196,7 @@ def delete(id: int, data: dict, table: str = "") -> Type_Delete_Return:
|
||||
Returns:
|
||||
dict[int, int, dict]: The data deleted
|
||||
"""
|
||||
print("Function not implemented yet")
|
||||
return update(id=id, new_data={}, table=table, force=True)
|
||||
|
||||
|
||||
def find_one(
|
||||
|
126
test/test_delete.py
Normal file
126
test/test_delete.py
Normal file
@ -0,0 +1,126 @@
|
||||
from fiable_db import start, add, delete, get_database
|
||||
|
||||
|
||||
def test_delete_simple():
|
||||
"""Test delete in the default table."""
|
||||
start()
|
||||
add(
|
||||
[
|
||||
{"name": "Noelia", "age": 34, "height": 165},
|
||||
{"name": "Juan", "age": 41, "height": 187},
|
||||
{"name": "Valentina", "age": 12, "height": 142},
|
||||
]
|
||||
)
|
||||
delete(1)
|
||||
assert get_database() == [
|
||||
{
|
||||
"id": 1,
|
||||
"rev": 1,
|
||||
"table": "default",
|
||||
"data": {"name": "Noelia", "age": 34, "height": 165},
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"rev": 1,
|
||||
"table": "default",
|
||||
"data": {"name": "Juan", "age": 41, "height": 187},
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"rev": 1,
|
||||
"table": "default",
|
||||
"data": {"name": "Valentina", "age": 12, "height": 142},
|
||||
},
|
||||
{"id": 1, "rev": 2, "table": "default", "data": {}},
|
||||
]
|
||||
|
||||
|
||||
def test_delete_multiple():
|
||||
"""Test delete two rows"""
|
||||
start()
|
||||
add(
|
||||
[
|
||||
{"name": "Noelia", "age": 34, "height": 165},
|
||||
{"name": "Juan", "age": 41, "height": 187},
|
||||
{"name": "Valentina", "age": 12, "height": 142},
|
||||
]
|
||||
)
|
||||
delete(2)
|
||||
delete(3)
|
||||
assert get_database() == [
|
||||
{
|
||||
"id": 1,
|
||||
"rev": 1,
|
||||
"table": "default",
|
||||
"data": {"name": "Noelia", "age": 34, "height": 165},
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"rev": 1,
|
||||
"table": "default",
|
||||
"data": {"name": "Juan", "age": 41, "height": 187},
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"rev": 1,
|
||||
"table": "default",
|
||||
"data": {"name": "Valentina", "age": 12, "height": 142},
|
||||
},
|
||||
{"id": 2, "rev": 2, "table": "default", "data": {}},
|
||||
{"id": 3, "rev": 2, "table": "default", "data": {}},
|
||||
]
|
||||
|
||||
|
||||
def test_delete_with_table():
|
||||
"""Test delete two rows"""
|
||||
start()
|
||||
add(
|
||||
[
|
||||
{"name": "Noelia", "age": 34, "height": 165},
|
||||
{"name": "Juan", "age": 41, "height": 187},
|
||||
{"name": "Valentina", "age": 12, "height": 142},
|
||||
],
|
||||
table="people",
|
||||
)
|
||||
add(
|
||||
[
|
||||
{"name": "Mortadelo", "age": 22, "height": 184},
|
||||
{"name": "Filemon", "age": 25, "height": 185},
|
||||
],
|
||||
)
|
||||
delete(2, table="people")
|
||||
delete(1)
|
||||
assert get_database() == [
|
||||
{
|
||||
"id": 1,
|
||||
"rev": 1,
|
||||
"table": "people",
|
||||
"data": {"name": "Noelia", "age": 34, "height": 165},
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"rev": 1,
|
||||
"table": "people",
|
||||
"data": {"name": "Juan", "age": 41, "height": 187},
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"rev": 1,
|
||||
"table": "people",
|
||||
"data": {"name": "Valentina", "age": 12, "height": 142},
|
||||
},
|
||||
{
|
||||
"id": 1,
|
||||
"rev": 1,
|
||||
"table": "default",
|
||||
"data": {"name": "Mortadelo", "age": 22, "height": 184},
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"rev": 1,
|
||||
"table": "default",
|
||||
"data": {"name": "Filemon", "age": 25, "height": 185},
|
||||
},
|
||||
{"id": 2, "rev": 2, "table": "people", "data": {}},
|
||||
{"id": 1, "rev": 2, "table": "default", "data": {}},
|
||||
]
|
Loading…
x
Reference in New Issue
Block a user