idddZddlmZddlZddlZddgZGddZGddeZdS)z(Provide base classes for the test system)TestCaseNTestBase FileCreatorc\eZdZdZdZd dZdZdZdZe dZ e d Z d S) 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_pathctj||_||_t |jd5}||dz |dddddS#1swxYwYdS)N)prefixwb1)tempfilemktemprropenseekwrite)selfsizer fps C/opt/cloudlinux/venv/lib/python3.11/site-packages/smmap/test/lib.py__init__zFileCreator.__init__s_F333  $*d # # r GGD1H    HHTNNN                  s.A22A69A6c\ tj|jdS#t$rYdSwxYwN)osremovepathOSErrorrs r__del__zFileCreator.__del__sA  Idi     DD s  ++c|Srrs r __enter__zFileCreator.__enter__%s c.|dSr)r )rexc_type exc_value tracebacks r__exit__zFileCreator.__exit__(s r$c|jSr)rrs rrzFileCreator.path+ zr$c|jSr)rrs rrzFileCreator.size/r+r$N)r ) __name__ __module__ __qualname____doc__ __slots__rr r#r)propertyrrr"r$rrr sHH#I 2 2 2 2XXr$c,eZdZdZdZedZdS)rzFoundation used by all testsiK&zcdSrr")clss rsetUpAllzTestBase.setUpAll?s  r$N)r-r.r/r0k_window_test_size classmethodr6r"r$rrr6s=&&0  [   r$)r0unittestrrr__all__rrr"r$rr;s..  } % &&&&&&&&V      x      r$