PyProxyFS er en proxy-filsystem grensesnitt med en innfødt filsystem implementering og en veldig enkel test in-memory filsystem.
Målet med pyproxyfs er å gi et filsystem klasse som du kan bruke for å gjøre mye av din filhåndtering ... men det kan slisser lett; ly bli hånet for bestemte testformål.
Om, i stedet for å bruke åpen, os.rename og os.listdir du bruke pyproxyfs ekvivalenter du kan forvente å være i stand til å lage et enkelt filsystem bruker den innebygde TestFS klassen og skrive tester rundt det.
For eksempel:
def show_conf_files (dirtolist, filsystem = Ingen):
& Nbsp; fra pyproxyfs importere filsystem
& Nbsp; om ikke filsystemet:
& Nbsp; filsystem = filsystem ()
& Nbsp; filer = filesystem.listdir (dirtolist)
& Nbsp; import re
& Nbsp; cfgpat = re.compile (".. * \ Cfg $")
& Nbsp; cfg_files = [fn for fn i filer hvis cfgpat.match (fn)]
& Nbsp; tilbake cfg_files
dette kan være din applikasjonskode.
Deretter kan du teste det relativt enkelt:
def test_show_conf_files ():
& Nbsp; "" "
>>> test_show_conf_files ()
['A.cfg', 'b.cfg']
"" "
& Nbsp; fra pyproxyfs importere TestFS
& Nbsp; fs = TestFS ({
& Nbsp; "somedir / a.cfg": "",
& Nbsp; "somedir / a.txt": "",
& Nbsp; "somedir / b.cfg": "",
& Nbsp; "somedir / run.py": ""
& Nbsp;})
& Nbsp; tilbake show_conf_files ("somedir", filsystem = fs)
Krav
- Python
Begrensninger
- De pyproxyfs er ikke laget for å være en full filsystem proxy, det er bare en enkel og rask måte å teste.
- Det er ikke mulig å skrive til TestFS system ennå; innfødte filsystem skriver arbeid gjennom proxy tho som det bare bruker åpne direkte.
Kommentarer ikke funnet