
                             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Jr  SSKJ	s  J
r
   " S S	\
R                  5      r " S
 S\
R                  5      rg)zUnit tests for help command.    )absolute_import)print_function)division)unicode_literals)CommandNc                   H    \ rS rSrSrS rS rS rS rS r	S r
S	 rS
 rSrg)HelpUnitTests!   zHelp command unit test suite.c                 H    U R                  SSS9nU R                  SU5        g )NhelpTreturn_stdoutzAvailable commands
RunCommandassertInselfstdouts     (platform/gsutil/gslib/tests/test_help.pytest_help_noargsHelpUnitTests.test_help_noargs$   s#    __V4_8FMM&/    c                 r    U R                  SSS/SS9nU R                  SU5        U R                  SU5        g )Nr   websetTr   gsutil web setgsutil web getr   r   assertNotInr   s     r   test_help_subcommand_arg&HelpUnitTests.test_help_subcommand_arg(   s:    __VeU^4_HFMM"F+%v.r   c                 N    U R                  SSS/SS9nU R                  SU5        g )Nr   r   asdfTr   z!help about one of the subcommandsr   r   s     r    test_help_invalid_subcommand_arg.HelpUnitTests.test_help_invalid_subcommand_arg-   s)    __VeV_D_IFMM5v>r   c                 N    U R                  SSS/SS9nU R                  SU5        g )Nr   lsr#   Tr   zhas no subcommandsr   r   s     r   9test_help_with_subcommand_for_command_without_subcommandsGHelpUnitTests.test_help_with_subcommand_for_command_without_subcommands1   s)    __VdF^4_HFMM&/r   c                 L    U R                  SS/SS9nU R                  SU5        g )Nr   r'   Tr   ls - List providers, bucketsr   r   s     r   test_help_command_arg#HelpUnitTests.test_help_command_arg5   s'    __VdV4_@FMM0&9r   c                 L    U R                  SS/SS9nU R                  SU5        g )Nr'   --helpTr   r+   r   r   s     r   test_command_help_arg#HelpUnitTests.test_command_help_arg9   s'    __TH:T_BFMM0&9r   c                 r    U R                  SSS/SS9nU R                  SU5        U R                  SU5        g )Nr   r   r/   Tr   r   r   r   r   s     r   test_subcommand_help_arg&HelpUnitTests.test_subcommand_help_arg=   s;    __UUH$5T_JFMM"F+%v.r   c                 N    U R                  S/ SQSS9nU R                  SU5        g )Ncp)foobarr/   Tr   zcp - Copy files and objectsr   r   s     r   test_command_args_with_help)HelpUnitTests.test_command_args_with_helpB   s&    __T#;4_PFMM/8r    N)__name__
__module____qualname____firstlineno____doc__r   r    r$   r(   r,   r0   r3   r9   __static_attributes__r;   r   r   r	   r	   !   s-    %0/
?0::/
9r   r	   c                   $    \ rS rSrSrS rS rSrg)HelpIntegrationTestsG   z$Help command integration test suite.c                 L    U R                  S/SSS9nU R                  SU5        g )Nr6   T   )return_stderrexpected_statuszUsage:)	RunGsUtilr   )r   stderrs     r   test_help_wrong_num_args-HelpIntegrationTests.test_help_wrong_num_argsJ   s&    ^^TF$^JFMM(F#r   c                     [         R                  " 5        H*  nU R                  SUR                  R                  /5        M,     g )Nr   )r   __subclasses__rI   command_speccommand_name)r   commands     r   test_help_runs_for_all_commands4HelpIntegrationTests.test_help_runs_for_all_commandsN   s4     ))+
nnfg22??@A ,r   r;   N)r<   r=   r>   r?   r@   rK   rR   rA   r;   r   r   rC   rC   G   s    ,$Br   rC   )r@   
__future__r   r   r   r   gslib.commandr   gslib.tests.testcaseteststestcaseGsUtilUnitTestCaser	   GsUtilIntegrationTestCaserC   r;   r   r   <module>r[      sF   , # & %  ' ! ' '#9H// #9LB8== Br   