@@ -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