@@ -78,8 +78,10 @@ def test_alias_creation_and_deletion(client: weaviate.WeaviateClient, request: S
78
78
assert all_alias [alias2 ].collection == name2
79
79
80
80
# Delete existing aliases
81
- assert client .alias .delete (alias_name = alias1 )
82
- assert client .alias .delete (alias_name = alias2 )
81
+ if client .alias .exists (alias_name = alias1 ):
82
+ assert client .alias .delete (alias_name = alias1 )
83
+ if client .alias .exists (alias_name = alias2 ):
84
+ assert client .alias .delete (alias_name = alias2 )
83
85
all_alias = client .alias .list_all (collection = name2 )
84
86
all_alias = {
85
87
alias [0 ]: alias [1 ]
@@ -157,3 +159,25 @@ def test_alias_get(client: weaviate.WeaviateClient, request: SubRequest) -> None
157
159
finally :
158
160
client .collections .delete (name )
159
161
client .alias .delete (alias_name = alias1 )
162
+
163
+
164
+ def test_alias_exists (client : weaviate .WeaviateClient , request : SubRequest ) -> None :
165
+ if client ._connection ._weaviate_version .is_lower_than (1 , 32 , 0 ):
166
+ pytest .skip ("Aliases are not supported in Weaviate versions < 1.32.0" )
167
+
168
+ name = _sanitize_collection_name (request .node .name )
169
+ alias1 : str = "Alias" + _sanitize_collection_name (request .node .name )
170
+
171
+ client .collections .delete (name )
172
+ client .alias .delete (alias_name = alias1 )
173
+ try :
174
+ client .collections .create (
175
+ name = name , vectorizer_config = wvc .config .Configure .Vectorizer .none ()
176
+ )
177
+
178
+ client .alias .create (alias_name = alias1 , target_collection = name )
179
+ assert client .alias .exists (alias_name = alias1 )
180
+ finally :
181
+ client .collections .delete (name )
182
+ client .alias .delete (alias_name = alias1 )
183
+ assert not client .alias .exists (alias_name = alias1 )
0 commit comments