@@ -40,16 +40,90 @@ async def test_update_collection(
40
40
txn_client ,
41
41
load_test_data : Callable ,
42
42
):
43
- data = load_test_data ("test_collection.json" )
43
+ collection_data = load_test_data ("test_collection.json" )
44
+ item_data = load_test_data ("test_item.json" )
44
45
45
- await txn_client .create_collection (data , request = MockRequest )
46
- data ["keywords" ].append ("new keyword" )
47
- await txn_client .update_collection (data , request = MockRequest )
46
+ await txn_client .create_collection (collection_data , request = MockRequest )
47
+ await txn_client .create_item (
48
+ collection_id = collection_data ["id" ],
49
+ item = item_data ,
50
+ request = MockRequest ,
51
+ refresh = True ,
52
+ )
48
53
49
- coll = await core_client .get_collection (data ["id" ], request = MockRequest )
54
+ collection_data ["keywords" ].append ("new keyword" )
55
+ await txn_client .update_collection (collection_data , request = MockRequest )
56
+
57
+ coll = await core_client .get_collection (collection_data ["id" ], request = MockRequest )
50
58
assert "new keyword" in coll ["keywords" ]
51
59
52
- await txn_client .delete_collection (data ["id" ])
60
+ item = await core_client .get_item (
61
+ item_id = item_data ["id" ],
62
+ collection_id = collection_data ["id" ],
63
+ request = MockRequest ,
64
+ )
65
+ assert item ["id" ] == item_data ["id" ]
66
+ assert item ["collection" ] == item_data ["collection" ]
67
+
68
+ await txn_client .delete_collection (collection_data ["id" ])
69
+
70
+
71
+ @pytest .mark .asyncio
72
+ async def test_update_collection_id (
73
+ core_client ,
74
+ txn_client ,
75
+ load_test_data : Callable ,
76
+ ):
77
+ collection_data = load_test_data ("test_collection.json" )
78
+ item_data = load_test_data ("test_item.json" )
79
+ new_collection_id = "new-test-collection"
80
+
81
+ await txn_client .create_collection (collection_data , request = MockRequest )
82
+ await txn_client .create_item (
83
+ collection_id = collection_data ["id" ],
84
+ item = item_data ,
85
+ request = MockRequest ,
86
+ refresh = True ,
87
+ )
88
+
89
+ old_collection_id = collection_data ["id" ]
90
+ collection_data ["id" ] = new_collection_id
91
+
92
+ await txn_client .update_collection (
93
+ collection = collection_data ,
94
+ request = MockRequest (
95
+ query_params = {
96
+ "collection_id" : old_collection_id ,
97
+ "limit" : "10" ,
98
+ }
99
+ ),
100
+ refresh = True ,
101
+ )
102
+
103
+ with pytest .raises (NotFoundError ):
104
+ await core_client .get_collection (old_collection_id , request = MockRequest )
105
+
106
+ coll = await core_client .get_collection (collection_data ["id" ], request = MockRequest )
107
+ assert coll ["id" ] == new_collection_id
108
+
109
+ with pytest .raises (NotFoundError ):
110
+ await core_client .get_item (
111
+ item_id = item_data ["id" ],
112
+ collection_id = old_collection_id ,
113
+ request = MockRequest ,
114
+ )
115
+
116
+ item = await core_client .get_item (
117
+ item_id = item_data ["id" ],
118
+ collection_id = collection_data ["id" ],
119
+ request = MockRequest ,
120
+ refresh = True ,
121
+ )
122
+
123
+ assert item ["id" ] == item_data ["id" ]
124
+ assert item ["collection" ] == new_collection_id
125
+
126
+ await txn_client .delete_collection (collection_data ["id" ])
53
127
54
128
55
129
@pytest .mark .asyncio
0 commit comments