Skip to content

Commit d3d4dbe

Browse files
committed
test(curation_set): add missing integration tests
1 parent df27a32 commit d3d4dbe

1 file changed

Lines changed: 109 additions & 0 deletions

File tree

tests/curation_set_test.py

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,3 +73,112 @@ def test_actual_delete(
7373

7474
print(response)
7575
assert response == {"name": "products"}
76+
77+
78+
def test_actual_list_items(
79+
actual_curation_sets: CurationSets,
80+
delete_all_curation_sets: None,
81+
create_curation_set: None,
82+
) -> None:
83+
"""Test that the CurationSet object can list items from Typesense Server."""
84+
response = actual_curation_sets["products"].list_items()
85+
86+
assert response == [
87+
{
88+
"excludes": [
89+
{
90+
"id": "999",
91+
},
92+
],
93+
"filter_curated_hits": False,
94+
"id": "rule-1",
95+
"includes": [
96+
{
97+
"id": "123",
98+
"position": 1,
99+
},
100+
],
101+
"remove_matched_tokens": False,
102+
"rule": {
103+
"match": "contains",
104+
"query": "shoe",
105+
},
106+
"stop_processing": True,
107+
},
108+
]
109+
110+
111+
def test_actual_get_item(
112+
actual_curation_sets: CurationSets,
113+
delete_all_curation_sets: None,
114+
create_curation_set: None,
115+
) -> None:
116+
"""Test that the CurationSet object can get a specific item from Typesense Server."""
117+
response = actual_curation_sets["products"].get_item("rule-1")
118+
119+
assert response == {
120+
"excludes": [
121+
{
122+
"id": "999",
123+
},
124+
],
125+
"filter_curated_hits": False,
126+
"id": "rule-1",
127+
"includes": [
128+
{
129+
"id": "123",
130+
"position": 1,
131+
},
132+
],
133+
"remove_matched_tokens": False,
134+
"rule": {
135+
"match": "contains",
136+
"query": "shoe",
137+
},
138+
"stop_processing": True,
139+
}
140+
141+
142+
def test_actual_upsert_item(
143+
actual_curation_sets: CurationSets,
144+
delete_all_curation_sets: None,
145+
create_curation_set: None,
146+
) -> None:
147+
"""Test that the CurationSet object can upsert an item in Typesense Server."""
148+
payload: CurationItemSchema = {
149+
"id": "rule-2",
150+
"rule": {"query": "boot", "match": "exact"},
151+
"includes": [{"id": "456", "position": 2}],
152+
"excludes": [{"id": "888"}],
153+
}
154+
response = actual_curation_sets["products"].upsert_item("rule-2", payload)
155+
156+
assert response == {
157+
"excludes": [
158+
{
159+
"id": "888",
160+
},
161+
],
162+
"id": "rule-2",
163+
"includes": [
164+
{
165+
"id": "456",
166+
"position": 2,
167+
},
168+
],
169+
"rule": {
170+
"match": "exact",
171+
"query": "boot",
172+
},
173+
}
174+
175+
176+
def test_actual_delete_item(
177+
actual_curation_sets: CurationSets,
178+
delete_all_curation_sets: None,
179+
create_curation_set: None,
180+
) -> None:
181+
"""Test that the CurationSet object can delete an item from Typesense Server."""
182+
response = actual_curation_sets["products"].delete_item("rule-1")
183+
184+
assert response == {"id": "rule-1"}

0 commit comments

Comments
 (0)