@@ -414,6 +414,24 @@ class TestPrefs(DefaultEnum):
414
414
assert TestPrefs .BAR .value
415
415
416
416
417
+ def test_path_search_ilike (library : Library ):
418
+ results = library .search_library (FilterState .from_path ("bar.md" ))
419
+ assert results .total_count == 1
420
+ assert len (results .items ) == 1
421
+
422
+
423
+ def test_path_search_like (library : Library ):
424
+ results = library .search_library (FilterState .from_path ("BAR.MD" ))
425
+ assert results .total_count == 0
426
+ assert len (results .items ) == 0
427
+
428
+
429
+ def test_path_search_default_with_sep (library : Library ):
430
+ results = library .search_library (FilterState .from_path ("one/two" ))
431
+ assert results .total_count == 1
432
+ assert len (results .items ) == 1
433
+
434
+
417
435
def test_path_search_glob_after (library : Library ):
418
436
results = library .search_library (FilterState .from_path ("foo*" ))
419
437
assert results .total_count == 1
@@ -432,6 +450,50 @@ def test_path_search_glob_both_sides(library: Library):
432
450
assert len (results .items ) == 1
433
451
434
452
453
+ def test_path_search_ilike_glob_equality (library : Library ):
454
+ results_ilike = library .search_library (FilterState .from_path ("one/two" ))
455
+ results_glob = library .search_library (FilterState .from_path ("*one/two*" ))
456
+ assert [e .id for e in results_ilike .items ] == [e .id for e in results_glob .items ]
457
+ results_ilike , results_glob = None , None
458
+
459
+ results_ilike = library .search_library (FilterState .from_path ("bar.md" ))
460
+ results_glob = library .search_library (FilterState .from_path ("*bar.md*" ))
461
+ assert [e .id for e in results_ilike .items ] == [e .id for e in results_glob .items ]
462
+ results_ilike , results_glob = None , None
463
+
464
+ results_ilike = library .search_library (FilterState .from_path ("bar" ))
465
+ results_glob = library .search_library (FilterState .from_path ("*bar*" ))
466
+ assert [e .id for e in results_ilike .items ] == [e .id for e in results_glob .items ]
467
+ results_ilike , results_glob = None , None
468
+
469
+ results_ilike = library .search_library (FilterState .from_path ("bar.md" ))
470
+ results_glob = library .search_library (FilterState .from_path ("*bar.md*" ))
471
+ assert [e .id for e in results_ilike .items ] == [e .id for e in results_glob .items ]
472
+ results_ilike , results_glob = None , None
473
+
474
+
475
+ def test_path_search_like_glob_equality (library : Library ):
476
+ results_ilike = library .search_library (FilterState .from_path ("ONE/two" ))
477
+ results_glob = library .search_library (FilterState .from_path ("*ONE/two*" ))
478
+ assert [e .id for e in results_ilike .items ] == [e .id for e in results_glob .items ]
479
+ results_ilike , results_glob = None , None
480
+
481
+ results_ilike = library .search_library (FilterState .from_path ("BAR.MD" ))
482
+ results_glob = library .search_library (FilterState .from_path ("*BAR.MD*" ))
483
+ assert [e .id for e in results_ilike .items ] == [e .id for e in results_glob .items ]
484
+ results_ilike , results_glob = None , None
485
+
486
+ results_ilike = library .search_library (FilterState .from_path ("BAR.MD" ))
487
+ results_glob = library .search_library (FilterState .from_path ("*bar.md*" ))
488
+ assert [e .id for e in results_ilike .items ] != [e .id for e in results_glob .items ]
489
+ results_ilike , results_glob = None , None
490
+
491
+ results_ilike = library .search_library (FilterState .from_path ("bar.md" ))
492
+ results_glob = library .search_library (FilterState .from_path ("*BAR.MD*" ))
493
+ assert [e .id for e in results_ilike .items ] != [e .id for e in results_glob .items ]
494
+ results_ilike , results_glob = None , None
495
+
496
+
435
497
@pytest .mark .parametrize (["filetype" , "num_of_filetype" ], [("md" , 1 ), ("txt" , 1 ), ("png" , 0 )])
436
498
def test_filetype_search (library , filetype , num_of_filetype ):
437
499
results = library .search_library (FilterState .from_filetype (filetype ))
0 commit comments