ó
    €Ï…  ã                   óˆ   • S r SSKJr  SSKJr  SSKJr  SSKJr  SSKrSSKJr  SSK	J
s  Jr   " S S	\R                  5      rg)
úUnit tests for FilePart class.é    )Úabsolute_import)Úprint_function)Údivision)Úunicode_literalsN)ÚFilePartc                   ó*   • \ rS rSrSrS rS rS rSrg)ÚTestFileParté   r   c                 óÜ   • SnSnU R                  XS9nSnSn[        X5U5      nU R                  XVR                  R	                  5       5        U R                  SUR	                  5       5        g )NÚ	test_tellód   xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx©Ú	file_nameÚcontentsé   é2   r   )ÚCreateTempFiler   ÚassertEqualÚ_fpÚtell)ÚselfÚfilenamer   ÚfpathÚpart_lengthÚ	start_posÚfps          Ú-platform/gsutil/gslib/tests/test_file_part.pyr   ÚTestFilePart.test_tell    sc   € Ø€HØ€HØ×Ñ¨(ÐÐF€EØ€KØ€IÜ	% KÓ	0€BØ×ÑY§¡§¡£Ô.Ø×ÑQ˜Ÿ™›	Õ"ó    c                 ó¨  • SnSnSnSnU R                  XS9n[        XTU5      nSnUR                  U5        U R                  XG-   UR                  R                  5       5        U R                  XvR                  5       5        UR                  U[        R                  S9  U R                  USU-  -   UR                  R                  5       5        U R                  SU-  UR                  5       5        UR                  U* [        R                  S9  U R                  XC-   U-
  UR                  R                  5       5        U R                  X7-
  UR                  5       5        UR                  S	[        R                  S9  U R                  XC-   S	-   UR                  R                  5       5        U R                  US	-   UR                  5       5        g
)zTests seeking in a FilePart.Ú	test_seekr   r   r   r   é
   )Úwhenceé   é   N)	r   r   Úseekr   r   r   ÚosÚSEEK_CURÚSEEK_END)r   r   r   r   r   r   r   Úoffsets           r   r"   ÚTestFilePart.test_seek*   sp  € à€HØ€HØ€KØ€IØ×Ñ¨(ÐÐF€EÜ	% KÓ	0€BØ€Fð ‡GGˆF„OØ×ÑYÑ'¨¯©¯©«Ô7Ø×ÑVŸW™W›YÔ'ð ‡GGˆFœ2Ÿ;™;€GÑ'Ø×ÑY  V¡Ñ+¨R¯V©V¯[©[«]Ô;Ø×ÑQ˜‘Z §¡£Ô+ð ‡GGˆVˆGœBŸK™K€GÑ(Ø×ÑYÑ,¨vÑ5°r·v±v·{±{³}ÔEØ×Ñ[Ñ)¨2¯7©7«9Ô5ð ‡GGˆA”b—k‘k€GÑ"Ø×ÑYÑ,¨qÑ0°"·&±&·+±+³-Ô@Ø×Ñ[ 1‘_ b§g¡g£iÕ0r    c                 ó@  • Sn[        [        S5      5      nSnSnU R                  XS9n[        XTU5      nUR	                  5       nU R                  X$XC-    U5        UR                  S5        SnUR	                  U5      n	U R                  X$XH-    U	5        UR	                  X8-
  5      n
U R                  X$U-   XC-    U
5        U R                  X$XC-    Xš-   5        UR	                  S5      nU R                  S	U5        UR	                  5       nU R                  S	U5        g
)z-Tests various reaad operations with FilePart.Ú	test_readé   r   r   r   r   r#   éd   r    N)Ú	bytearrayÚranger   r   Úreadr   r'   )r   r   r   r   r   r   r   Ú
whole_filer+   Úpartial_fileÚremaining_fileÚ
empty_files               r   r.   ÚTestFilePart.test_readH   s%  € à€HÜœ˜s›Ó$€HØ€KØ€IØ×Ñ¨(ÐÐF€Eô 
% KÓ	0€BØ—‘“€JØ×ÑX¨Ñ)@ÐBÀJÔOð ‡GGˆA„JØ€FØ—7‘7˜6“?€LØ×ÑX¨Ñ);Ð=¸|ÔLð —W‘W˜[Ñ1Ó2€NØ×ÑX¨6Ñ1°IÑ4KÐMØ#ô%à×ÑX¨Ñ)@ÐBØ!Ñ2ô4ð —‘˜“€JØ×ÑS˜*Ô%à—‘“€JØ×ÑS˜*Õ%r    © N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r"   r.   Ú__static_attributes__r9   r    r   r
   r
      s   † Ù&ò#ò1õ<&r    r
   )r>   Ú
__future__r   r   r   r   r(   Úgslib.file_partr   Úgslib.tests.testcaseÚtestsÚtestcaseÚGsUtilUnitTestCaser
   r9   r    r   Ú<module>rF      s6   ðñ %å &Ý %Ý Ý 'ã 	å $ß 'Ð 'ôJ&8×.Ñ.õ J&r    