-
Notifications
You must be signed in to change notification settings - Fork 6.2k
/
Copy pathtest_repo.py
107 lines (81 loc) · 2.69 KB
/
test_repo.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
import pytest
from uuid import uuid4
from sqlmodel import SQLModel, Session, create_engine
from langflow.services.database.models.variable.model import Variable
from langflow.services.database.models.variable.repo import VariableRepository
@pytest.fixture
def client():
pass
@pytest.fixture
def repo():
engine = create_engine("sqlite:///:memory:")
SQLModel.metadata.create_all(engine)
with Session(engine) as session:
return VariableRepository(session)
def test_add(repo):
user_id = uuid4()
name = "test"
value = "test"
_type = "test"
default_fields = ["test"]
variable = Variable(user_id=user_id, name=name, value=value, type=_type, default_fields=["test"])
result = repo.add(variable)
assert result.id is not None
assert result.user_id == user_id
assert result.name == name
assert result.value == value
assert result.type == _type
assert result.default_fields == default_fields
def test_get(repo):
user_id = uuid4()
name = "test"
value = "test"
_type = "test"
default_fields = ["test"]
variable = Variable(user_id=user_id, name=name, value=value, type=_type, default_fields=["test"])
saved = repo.add(variable)
result = repo.get(saved.id)
assert result == saved
def test_list(repo):
user_id = uuid4()
name = "test"
value = "test"
_type = "test"
default_fields = ["test"]
quantity = 10
for index, i in enumerate(range(quantity)):
variable = Variable(user_id=user_id, name=name, value=f"value_{index}", type=_type, default_fields=["test"])
repo.add(variable)
result = repo.list()
assert len(result) == quantity
def test_update(repo):
user_id = uuid4()
name = "test"
value = "test"
_type = "test"
default_fields = ["test"]
variable = Variable(user_id=user_id, name=name, value=value, type=_type, default_fields=["test"])
saved = repo.add(variable)
saved.name = "test_updated"
saved.value = "test_updated"
saved.type = "test_updated"
saved.default_fields = ["test_updated"]
repo.update(saved)
result = repo.get(saved.id)
assert result.id == saved.id
assert result.user_id == saved.user_id
assert result.name == saved.name
assert result.value == saved.value
assert result.type == saved.type
assert result.default_fields == saved.default_fields
def test_delete(repo):
user_id = uuid4()
name = "test"
value = "test"
_type = "test"
default_fields = ["test"]
variable = Variable(user_id=user_id, name=name, value=value, type=_type, default_fields=["test"])
saved = repo.add(variable)
repo.delete(saved.id)
result = repo.get(saved.id)
assert result is None