@@ -410,62 +410,54 @@ async def test_get_collections():
410
410
# Mocking AsyncClientAPI and AsyncCollection
411
411
mock_client = MagicMock (spec = AsyncClientAPI )
412
412
413
- # Mock successful get_collection
414
- mock_collection1 = MagicMock (spec = AsyncCollection )
415
- mock_collection1 .metadata = {
413
+ # Create test collections with different metadata scenarios
414
+ valid_collection = MagicMock (spec = AsyncCollection )
415
+ valid_collection .metadata = {
416
416
"created-by" : "VectorCode" ,
417
417
"username" : os .environ .get ("USER" , os .environ .get ("USERNAME" , "DEFAULT_USER" )),
418
418
"hostname" : socket .gethostname (),
419
419
}
420
420
421
- # collection with meta == None
422
- mock_collection2 = MagicMock (spec = AsyncCollection )
423
- mock_collection2 .metadata = None
421
+ no_metadata_collection = MagicMock (spec = AsyncCollection )
422
+ no_metadata_collection .metadata = None
424
423
425
- # collection with wrong "created-by"
426
- mock_collection3 = MagicMock (spec = AsyncCollection )
427
- mock_collection3 .metadata = {
428
- "created-by" : "NotVectorCode" ,
424
+ wrong_creator_collection = MagicMock (spec = AsyncCollection )
425
+ wrong_creator_collection .metadata = {
426
+ "created-by" : "OtherTool" ,
429
427
"username" : os .environ .get ("USER" , os .environ .get ("USERNAME" , "DEFAULT_USER" )),
430
428
"hostname" : socket .gethostname (),
431
429
}
432
430
433
- # collection with wrong "username"
434
- mock_collection4 = MagicMock (spec = AsyncCollection )
435
- mock_collection4 .metadata = {
431
+ wrong_user_collection = MagicMock (spec = AsyncCollection )
432
+ wrong_user_collection .metadata = {
436
433
"created-by" : "VectorCode" ,
437
434
"username" : "wrong_user" ,
438
435
"hostname" : socket .gethostname (),
439
436
}
440
437
441
- # collection with wrong "hostname"
442
- mock_collection5 = MagicMock (spec = AsyncCollection )
443
- mock_collection5 .metadata = {
438
+ wrong_host_collection = MagicMock (spec = AsyncCollection )
439
+ wrong_host_collection .metadata = {
444
440
"created-by" : "VectorCode" ,
445
441
"username" : os .environ .get ("USER" , os .environ .get ("USERNAME" , "DEFAULT_USER" )),
446
442
"hostname" : "wrong_host" ,
447
443
}
448
444
445
+ # Mock list_collections to return the collections directly
449
446
mock_client .list_collections .return_value = [
450
- "collection1" ,
451
- "collection2" ,
452
- "collection3" ,
453
- "collection4" ,
454
- "collection5" ,
455
- ]
456
- mock_client .get_collection .side_effect = [
457
- mock_collection1 ,
458
- mock_collection2 ,
459
- mock_collection3 ,
460
- mock_collection4 ,
461
- mock_collection5 ,
447
+ valid_collection ,
448
+ no_metadata_collection ,
449
+ wrong_creator_collection ,
450
+ wrong_user_collection ,
451
+ wrong_host_collection ,
462
452
]
463
453
464
- collections = [
465
- collection async for collection in get_collections (mock_client )
466
- ] # call get_collections
454
+ # Collect the filtered collections
455
+ collections = [collection async for collection in get_collections (mock_client )]
456
+
457
+ # Verify only the valid collection was returned
467
458
assert len (collections ) == 1
468
- assert collections [0 ] == mock_collection1
459
+ assert collections [0 ] == valid_collection
460
+ mock_client .list_collections .assert_called_once ()
469
461
470
462
471
463
def test_get_embedding_function_fallback ():
0 commit comments