
                             d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmc mZ ddl	m
Z
 ddlmZ  e
d	       G d
 dej                               Z G d de      Zy)&Integration tests for logging command.    )absolute_import)print_function)division)unicode_literalsN)	SkipForS3)ObjectToURIz?Logging command requires S3 ACL configuration on target bucket.c                   4    e Zd ZdZg dZg dZddgZd Zd Zy)	TestLoggingr   )loggingseton)r   r   offr   getc                    | j                         }t        |      }| j                  | j                  d||gz   d      }| j                  r| j                  d|       n| j                  d|       | j                  | j                  |gz   d      }| j                  rX|j                  d      \  }}}| j                  dj                  |      |       | j                  d	j                  |      |       n.| j                  d
j                         |j                                | j                  | j                  |gz   d      }| j                  r| j                  d|       y| j                  d|       y)z%Tests enabling and disabling logging.z-bT)return_stderrUpdatingzEnabling logging)return_stdoutz://z"logBucket": "{}"z"logObjectPrefix": "{}"LogObjectPrefixzDisabling loggingN)CreateBucketsuri	RunGsUtil_enable_log_cmd_use_gcloud_storageassertIn_get_log_cmd	partitionformatlower_disable_log_cmd)self
bucket_uribucket_suristderrstdout_prefixless_buckets          +platform/gsutil/gslib/tests/test_logging.pytestLoggingzTestLogging.testLogging#   sT   ""$Jz"K^^D00!;<=*.  0F 
mmJ'
mm&/^^D--=*.  0F + 5 5e <a
mm'../@A6J
mm-445FGP
mm%++-v||~>^^D11[MA*.  0F
mmJ'
mm'0    c                 r   | j                  | j                  dd      }| j                  d|       | j                  | j                  dd      }| j                  d|       | j                  | j                  dd      }| j                  d|       | j                  dgdd      }| j                  d|       y)z5Ensures logging commands fail with too few arguments.T   )r   expected_statuszcommand requires at leastr   N)r   r   r   r    r   )r!   r$   s     r(   testTooFewArgumentsFailsz$TestLogging.testTooFewArgumentsFails?   s     ^^D00*.,-  /F 	MM-v6 ^^D11*.,-  /F 	MM-v6 ^^D--*.,-  /F 	MM-v6 ^^YKtQ^OFMM-v6r*   N)	__name__
__module____qualname____doc__r   r    r   r)   r.    r*   r(   r   r      s$    .,/.U#,187r*   r   c                       e Zd ZdgZdgZdgZy)TestLoggingOldAliasenableloggingdisablelogging
getloggingN)r/   r0   r1   r   r    r   r3   r*   r(   r5   r5   X   s    $%/&',r*   r5   )r2   
__future__r   r   r   r   gslib.tests.testcaseteststestcase)gslib.tests.testcase.integration_testcaser   gslib.tests.utilr	   r   GsUtilIntegrationTestCaser   r5   r3   r*   r(   <module>r@      sW    - & %  ' ' ' ? 0 LM97(44 97 N97x +  r*   