Your IP : 216.73.216.213


Current Path : /opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/
Upload File :
Current File : //opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyo

�
��\c@sdZddlZddlZddlZddlZddlmZddlmZddl	m
Z
ejdkZdej
e
fd��YZd	efd
��YZdefd��YZd
efd��YZdefd��YZedkrej�ndS(s�Tests for `fake_filesystem_shutil` if used in
`fake_filesystem_unittest.TestCase`.
Note that almost all of the functionality is delegated to the real `shutil`
and works correctly with the fake filesystem because of the faked `os` module.
i����N(tfake_filesystem_unittest(tis_root(tRealFsTestMixintwin32tRealFsTestCasecBs5eZdd�Zd�Zd�Zed��ZRS(trunTestcCs$tjj||�tj|�dS(N(RtTestCaset__init__R(tselft
methodName((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyR!scCsjtj�|_|j�sf|j�|j|_t|_t|_|j�|jj	d|j
�ndS(Ni�(tostgetcwdtcwdtuse_real_fst
setUpPyfakefstfst
filesystemtopentcreate_basepathtset_disk_usaget	base_path(R((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pytsetUp%s
		
cCsX|j�rT|jjtjj|j��tj|jdt�tj|j	�ndS(Nt
ignore_errors(
R
R
tchdirtpathtdirnameRtshutiltrmtreetTrueR(R((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttearDown/scCs#|j�rtjdkS|jjS(NR(R
tsystplatformRt
is_windows_fs(R((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyR 5s
(t__name__t
__module__RRRtpropertyR (((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyR s	
	tFakeShutilModuleTestcBs*eZd�Zd�Zejed�d��Zejed�d��Zejed�d��Z	ejed�d��Z
d�Zd	�Zd
�Z
d�Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zejejdkd�d��Zd�ZRS(cCs�|jd�}tjj|d�}|j|�tjj|d�}|j|�|jtjj|��tj	|�|j
tjj|��|j
tjj|��|j
tjj|��dS(Ntxyzzytsubdirtsubfile(t	make_pathR
Rtjoint
create_dirtcreate_filet
assertTruetexistsRRtassertFalse(Rt	directorytdir_patht	file_path((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_rmtree=s


cCs�|jd�}tjj|d�}|j|�tjj|d�}|j|�tj|d�|jtjj	|��|jtjj	|��|jtjj	|��dS(NR%R&R't/(
R(R
RR)R*R+RRR.R-(RR/R0R1((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_rmtree_with_trailing_slashIs

sWindows specific behaviorcCs�|j�|jd�}|jtjj|d��tjj|d�}|j|�|jj|d�|jtt	j
|�|jtjj|��|jj|d�dS(Ntfootbartbazi$i�(
tcheck_windows_onlyR(R+R
RR)tchmodtassertRaisestOSErrorRRR,R-(RR0R1((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt4test_rmtree_without_permission_for_a_file_in_windowsTs

sPosix specific behaviorcCs�|j�|jd�}|jtjj|d��tjj|d�}|j|�|jj|d�t�s�|jt	t
j|�|jtjj
|��|jj|d�n&t
j|�|jtjj
|��dS(NR5R6R7imi�(tcheck_posix_onlyR(R+R
RR)R9RR:R;RRR,R-R.(RR0R1((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt1test_rmtree_without_permission_for_a_dir_in_posix`s

	
cCs�|j�|jd�}|jtjj|d��tjj|d�}|j|�t|��tj|�WdQX|j	tjj
|��dS(NR5R6R7(R=R(R+R
RR)RRRR.R-(RR0R1((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt test_rmtree_with_open_file_posixps


cCs�|j�|jd�}|jtjj|d��tjj|d�}|j|�t|��|jtt	j
|�WdQX|jtjj|��dS(NR5R6R7(
R8R(R+R
RR)RR:R;RRR,R-(RR0R1((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt.test_rmtree_with_open_file_fails_under_windows{s


cCsXd}|jttj|�ytj|dt�Wntk
rS|jd�nXdS(NtnonexistingRs(rmtree raised despite ignore_errors True(R:R;RRRtfail(RR/((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_rmtree_non_existing_dir�s
csdd
d��Y��fd�}|jd�}t�_d�_ytj|d|�Wntk
rz|jd�nX|j�j�|j	�j|�t�_d�_ytj|dt
d|�Wntk
r�|jd	�nX|j�j�|j	�jd�dS(NtNonLocalcBseZRS((R!R"(((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyRD�scst�_|�_dS(N(RterrorHandledt	errorPath(t_Rt_error_info(RD(s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt
error_handler�s	RAttonerrors/rmtree raised exception despite onerror definedRs2rmtree raised exception despite ignore_errors True((R(tFalseRERFRRtIOErrorRBR,tassertEqualRR.(RRIR/((RDs[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt)test_rmtree_non_existing_dir_with_handler�s&		
		
cCs�|jd�}|jd�}|j|�tj|d�|jtjj|��|jtjj|��tj	||�|jtjj|��|j
tj|�jtj|�j�dS(NR%t
xyzzy_copyi�(
R(R+R
R9R,RR-R.RtcopyRNtstattst_mode(Rtsrc_filetdst_file((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt	test_copy�s
cCs�|jd�}|jd�}tjj|d�}|j|�|j|�tj|d�|jtjj|��|jtjj|��|j	tjj|��t
j||�|jtjj|��|jtj
|�jtj
|�j�dS(NR%tparenti�(R(R
RR)R+R*R9R,R-R.RRQRNRRRS(RRTtparent_directoryRU((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_copy_directory�s

cCs�|jd�}|j|�tj|d�|jd�}|j|�|jtjj|��|jtjj|��tj||�tj	|�}tj	|�}|j
|j|j�|j|j
|j
dd�|j|j|jdd�dS(NR%i�RPtplacesi(R(R+R
R9R,RR-RtcopystatRRRNRStassertAlmostEqualtst_atimetst_mtime(RRTRUtsrc_stattdst_stat((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt
test_copystat�s

cCs|jd�}|j|�tj|d�|jd�}|jtjj|��|jtjj|��tj	||�|jtjj|��tj
|�}tj
|�}|j|j|j�|j
|j|jdd�|j
|j|jdd�dS(NR%i�RPRZi(R(R+R
R9R,RR-R.Rtcopy2RRRNRSR\R]R^(RRTRUR_R`((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt
test_copy2�s
cCsA|jd�}|jd�}tjj|d�}|j|�|j|�tj|d�|jtjj|��|jtjj|��|j	tjj|��t
j||�|jtjj|��tj|�}tj|�}|j
|j|j�|j|j|jdd�|j|j|jdd�dS(NR%RWi�RZi(R(R
RR)R+R*R9R,R-R.RRbRRRNRSR\R]R^(RRTRXRUR_R`((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_copy2_directory�s 

cCs|jd�}|jd�}|j|�|jd|�|jtjj|d��|jtjj|��|jtjj|��t	j
||�|jtjj|��|jtjjtjj|d���|jtjjtjj|d���dS(NR%RPs	%s/subdirR'R&(R(R*R+R
RR)R,R-R.Rtcopytree(Rt
src_directoryt
dst_directory((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt
test_copytree�s
(cCsz|jd�}|jd�}|j|�|jtjj|��|jtjj|��|jtt	j
||�dS(NR%RP(R(R+R,R
RR-R.R:R;RRe(RRTRg((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_copytree_src_is_files
	cCs�|j�d}d}|jj|�}|j}|j}|jtjj|��|j	tjj|��t
j||�|jtjj|��|j	tjj|��|jj|�}|j
||j�|j
||j�dS(Ns/original_xyzzys/moved_xyzzy(tskip_real_fsRR+tst_inotst_devR,R
RR-R.Rtmovet
get_objectRN(RRTRUt
src_objecttsrc_inotsrc_devt
dst_object((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt!test_move_file_in_same_filesystems
		cCs�|j�|j�}|jd�}|jjj|d�}|jj|�}|j}|j	}t
j||�|jtjj
|��|jtjj
|��|jj|�}|j||j�|j||j	�dS(Ntoriginal_xyzzytmoved_xyzzy(Rjtcreate_mount_pointR(R
RR)RR+RkRlRRmR,R-R.RntassertNotEqual(Rtmount_pointRTRURoRpRqRr((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt$test_move_file_into_other_filesystems
		cCs�|jd�}|jd�}tjj|d�}|j|�|j|�|jtjj|��|jtjj|��t	j
||�|jtjj|��|jtjj|��dS(NR%R/(R(R
RR)R+R*R,R-R.RRm(RRTRgRU((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_move_file_into_directory0s

cCs+|jd�}|jd�}|j|�|jtjj|d��|jtjj|d��|jtjj|��|jtjj|��t	j
||�|jtjj|��|jtjjtjj|d���|jtjjtjj|d���|jtjj|��dS(NRtRuR'R&(R(R*R+R
RR)R,R-R.RRm(RRfRg((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_move_directory<s
((isNew in Python 3.3cCs�|j�|jdd�}|jj|dd�tj|�}|jd|j�|jd|j�|jd|j	�|jd	|�|j
�}|jjj
|d�}|jjj
|d�}|jj|dd�tj|�}|jd
|�dS(NR5R6tst_sizei�i�iXi�id(i�i�iX(i�i�id(RjR(RR+Rt
disk_usageRNttotaltusedtfreeRvR
RR)(RR1R}RxR0((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_disk_usageJs
cCs/|jrdnd}|jj|dd�|S(NsM:s/mountt
total_sizei�(R Rtadd_mount_point(RRx((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyRv]s(ii(R!R"R2R4tunittesttskipIft
is_windowsR<R>R?R@RCRORVRYRaRcRdRhRiRsRyRzR{Rtversion_infoR�Rv(((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyR$<s*										
					$tRealShutilModuleTestcBseZd�ZRS(cCstS(N(R(R((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyR
ds(R!R"R
(((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyR�cstFakeCopyFileTestcBs�eZd�Zd�Zd�Zd�Zd�Zd�Zej	e
d�d��Zd�Zej	e
d�d	��Z
d
�Zd�ZRS(cCstt|�j�dS(N(tsuperR�R(R((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyRiscCs�|jd�}|jd�}d}|j|d|�|jtjj|��|jtjj|��tj||�|jtjj|��|j	||�dS(NR%RPscontents of filetcontents(
R(R+R,R
RR-R.Rtcopyfiletcheck_contents(RRTRUR�((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_common_caselscCsg|jd�}|}d}|j|d|�|jtjj|��|jtjtj	||�dS(NR%scontents of fileR�(
R(R+R,R
RR-R:RtErrorR�(RRTRUR�((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt0test_raises_if_source_and_dest_are_the_same_filewscCs�|j�|jd�}|jd�}d}|j|d|�|j||�|jtjj|��|jt	j
t	j||�dS(NR5R6scontents of fileR�(tskip_if_symlink_not_supportedR(R+tcreate_symlinkR,R
RR-R:RR�R�(RRTRUR�((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt'test_raises_if_dest_is_a_symlink_to_src�s
cCs�|jd�}|jd�}d}d}|j|d|�|j|d|�|jtjj|��|jtjj|��tj||�|jtjj|��|j||�dS(NR%RPscontents of source filescontents of dest fileR�(	R(R+R,R
RR-RR�R�(RRTRUtsrc_contentstdst_contents((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt,test_succeeds_if_dest_exists_and_is_writable�scCs%|jd�}|jd�}d}d}|j|d|�|j|d|�tj|d�|jtjj|��|jtjj|��t�r�tj	||�|j|jjj|��|j
|��}|jd|j��WdQXn|j
ttj	||�tj|d�dS(NR%RPscontents of source filescontents of dest fileR�ii�(R(R+R
R9R,RR-RRR�RRNtreadR:RM(RRTRUR�R�tf((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt.test_raises_if_dest_exists_and_is_not_writable�s 	sPosix specific behaviorcCs)|j�|jd�}|jdd�}tjj|d�}d}|j|d|�|j|�tj|d�|jtjj	|��|jtjj	|��t
�s�tjddkr�t
nt}|j|tj||�n9tj||�|jtjj	|��|j||�dS(	NR%ttmpR5scontents of source fileR�imii(R=R(R
RR)R+R*R9R,R-RRR�R;RMR:RR�R�(RRTtdst_dirRUR�t	exception((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt3test_raises_if_dest_dir_is_not_writable_under_posix�s 

	cCsT|jd�}|jd�}|jtjj|��|jttj||�dS(NR%RP(	R(R.R
RR-R:RMRR�(RRTRU((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_raises_if_src_doesnt_exist�scCs�|j�|jd�}|jd�}d}|j|d|�tj|d�|jtjj|��t�s�|j	t
tj||�n9tj||�|jtjj|��|j
||�dS(NR%RPscontents of source fileR�i(R=R(R+R
R9R,RR-RR:RMRR�R�(RRTRUR�((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyttest_raises_if_src_not_readable�s
	cCs�|jd�}|jd�}|j|�|jtjj|��|jrs|jrs|jt	t
j||�n|jtt
j||�dS(NR%RP(
R(R*R,R
RR-R t
is_python2R:R;RR�RM(RRTRU((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt!test_raises_if_src_is_a_directory�s
cCs�|jd�}|jdd�}d}|j|d|�|j|�|jtjj|��|jtjj|��|jr�|jr�|j	t
tj||�n|j	t
tj||�dS(NR%R�R5scontents of source fileR�(R(R+R*R,R
RR-R R�R:R;RR�RM(RRTR�R�((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt"test_raises_if_dest_is_a_directory�s
(R!R"RR�R�R�R�R�R�R�R�R�R�R�R�R�(((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyR�hs						
			
tRealCopyFileTestcBseZd�ZRS(cCstS(N(R(R((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyR
�s(R!R"R
(((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyR��st__main__(t__doc__R
RRR�tpyfakefsRtpyfakefs.fake_filesystemRtpyfakefs.tests.test_utilsRRR�RRR$R�R�R�R!tmain(((s[/opt/alt/python27/lib/python2.7/site-packages/pyfakefs/tests/fake_filesystem_shutil_test.pyt<module>s �(�