B ]b @s<GdddZGdddZGdddZGdddZdS) c@seZdZdZddZdS)TestPath)abspathcurdirexists expanduser expandvarsgetatimegetctimegetmtimegetsizeisfileislinkismountrealpathsamefile sameopenfilesamestatwalkcCs@x:t|jD],}|ds ||jkr t||t|j|q WdS)N_)dirpath startswith_path_using_iosetattrgetattr)selfosnamerC/opt/alt/python37/lib64/python3.7/site-packages/guppy/gsl/FileIO.py__init__ s  zTestPath.__init__N)__name__ __module__ __qualname__rrrrrrrsrc@sTeZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ dS)TestIOcCsD|jj}x |jD]}t||t||qWt||_i|_d|_dS)N) _rootr os_commonrrrrfilestempno)rmodrrrrrrs   zTestIO.__init__cCs||jkrdSdS)NTF)r')rrmoderrraccesss z TestIO.accesscCsNg}|j|d}x6|jD],}||r|t|d}|r||qW|S)N)rjoinr'rlenappend)rrZlikrestrrrlistdir s  zTestIO.listdircCs|jd7_d|jS)Nz /tmp/xyz%d)r()rrrrmkdtemp*szTestIO.mkdtempcCs |j|S)N)r')rrrrr read_file.szTestIO.read_filecCs2y |j|=Wn tk r,td|YnXdS)NzNo such file: %r)r'KeyErrorIOError)rrrrrremove1s z TestIO.removecCsFy|j|}Wn tk r.td|YnX|j|=||j|<dS)NzNo such file: %r)r'r6r7)rsrcZtgtdatarrrrename7s z TestIO.renamecCsdS)Nr)rrrrrrmdir?sz TestIO.rmdircCs||j|<dS)N)r')rrtextrrr write_fileBszTestIO.write_fileN) r r!r"rr+r2r4r5r8r;r<r>rrrrr#s r#c@s$eZdZddZddZddZdS)RealIOcCsz|jj}x |jD]}t||t||qW|j|_|j|_|j|_|jjj |_ |j |_ |j |_ |j |_ |j |_ |j|_dS)N)r%rr&rrrr2makedirsZtempfiler4r<r+chdirr8r;)rr)rrrrrrGs  zRealIO.__init__c Cst| }|SQRXdS)N)openread)rrfrrrr5Us zRealIO.read_filec Cs$t|d}||WdQRXdS)Nw)rBwrite)rrr:rDrrrr>Ys zRealIO.write_fileN)r r!r"rr5r>rrrrr?Fsr?c@s,eZdZdZdZddZddZddZd S) _GLUECLAMP_)IO)R_OKW_OKX_OKcCst|S)N)r?)rrrr_get_IOdsz_GLUECLAMP_._get_IOcCs ||_dS)N)rH)rrHrrrset_IOgsz_GLUECLAMP_.set_IOcCs|t|dS)N)rMr#)rrrr set_test_modejsz_GLUECLAMP_.set_test_modeN)r r!r"Z _setable_r&rLrMrNrrrrrG^s rGN)rr#r?rGrrrrs4