1+ import os
12from probeinterface import Probe
23from probeinterface .library import (
34 download_probeinterface_file ,
45 get_from_cache ,
5- remove_from_cache ,
66 get_probe ,
77 get_tags_in_library ,
88 list_manufacturers_in_library ,
1515probe_name = "A1x32-Poly3-10mm-50-177"
1616
1717
18+ def _remove_from_cache (manufacturer : str , probe_name : str , tag = None ) -> None :
19+ """
20+ Remove Probe from local cache
21+
22+ Parameters
23+ ----------
24+ manufacturer : "cambridgeneurotech" | "neuronexus" | "plexon" | "imec" | "sinaps"
25+ The probe manufacturer
26+ probe_name : str (see probeinterface_libary for options)
27+ The probe name
28+ tag : str | None, default: None
29+ Optional tag for the probe
30+ """
31+ cache_folder = get_cache_folder ()
32+ if tag is not None :
33+ cache_folder_tag = cache_folder / tag
34+ if not cache_folder_tag .is_dir ():
35+ return None
36+ cache_folder = cache_folder_tag
37+ else :
38+ cache_folder_tag = cache_folder / "main"
39+
40+ local_file = cache_folder_tag / manufacturer / (probe_name + ".json" )
41+ if local_file .is_file ():
42+ os .remove (local_file )
43+
44+
1845def test_download_probeinterface_file ():
1946 download_probeinterface_file (manufacturer , probe_name , tag = None )
2047
@@ -29,7 +56,7 @@ def test_get_from_cache():
2956 assert probe is None # because we did not download with this tag
3057 download_probeinterface_file (manufacturer , probe_name , tag = tag )
3158 probe = get_from_cache (manufacturer , probe_name , tag = tag )
32- remove_from_cache (manufacturer , probe_name , tag = tag )
59+ _remove_from_cache (manufacturer , probe_name , tag = tag )
3360 assert isinstance (probe , Probe )
3461
3562 probe = get_from_cache ("yep" , "yop" )
0 commit comments