K iVdZddlmZddlZddlZddgZGddZGddeZy)z(Provide base classes for the test system)TestCaseNTestBase FileCreatorcNeZdZdZdZd dZdZdZdZe dZ e dZ y ) rzA instance which creates a temporary file with a prefix and a given size and provides this info to the user. Once it gets deleted, it will remove the temporary file as well.)_size_pathcF|sJd||_tjd|d5}|j|_|j |dz |j ddddtjj|j|k(sJy#1swY8xYw)NzRequire size to be larger 0wbF)prefixdelete1) rtempfileNamedTemporaryFilenamerseekwriteospathgetsize)selfsizer files T/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/smmap/test/lib.py__init__zFileCreator.__init__s222t  ( (fU K tDJ IIdQh  JJt   wwtyy)T111   s 7BB cb tj|jy#t$rYywxYwN)rremoverOSErrorrs r__del__zFileCreator.__del__s)  IIdii    s " ..c|Srr s r __enter__zFileCreator.__enter__%s c$|jyr)r!)rexc_type exc_value tracebacks r__exit__zFileCreator.__exit__(s  r%c|jSr)rr s rrzFileCreator.path+ zzr%c|jSr)rr s rrzFileCreator.size/r,r%N)) __name__ __module__ __qualname____doc__ __slots__rr!r$r*propertyrrr#r%rrr sKH#I 2r%c$eZdZdZdZedZy)rzFoundation used by all testsiK&zcyrr#)clss rsetUpAllzTestBase.setUpAll?s r%N)r/r0r1r2k_window_test_size classmethodr8r#r%rrr6s!&0  r%)r2unittestrrr__all__rrr#r%rr=s2.  } % &&V  x  r%