a }|gw@sdZddlZddlZddlmZGdddZGdddZGdd d ZGd d d Ze d kre e ej d de gdS)z Tests for certbot.helpful_parserN)HelpfulArgumentParserc@s(eZdZdZddZddZddZdS) TestScanningFlagsz9Test the prescan_for_flag method of HelpfulArgumentParsercCsFtdgi}|dddg}|dus(J|ddg}|dusBJdS)Nrun--helpallcertonlyF-hz all, certonly)rprescan_for_flagself arg_parserZ detected_flagr H/usr/lib/python3.9/site-packages/certbot/_internal/tests/helpful_test.pytest_prescan_no_help_flag s  z+TestScanningFlags.test_prescan_no_help_flagcCsFtddgi}|ddg}|dus(J|d|j}|dusBJdS)NrrpotatoTrFrr Z help_topicsr r r rtest_prescan_unvalid_topics z,TestScanningFlags.test_prescan_unvalid_topiccCsFtddgi}|d|j}|dks(J|d|j}|dusBJdS)NrrrFrr r r rtest_prescan_valid_topics z*TestScanningFlags.test_prescan_valid_topicN)__name__ __module__ __qualname____doc__rrrr r r rr s  rc@s(eZdZdZddZddZddZdS) TestDetermineVerbsz9Tests for determine_verb methods of HelpfulArgumentParsercCs.tdgi}|jdksJ|jdgks*JdS)NrrrZverbargsr r r r rtest_determine_verb_wrong_verb(s z1TestDetermineVerbs.test_determine_verb_wrong_verbcCs`tddgi}|jdksJ|jddgks.Jtgdi}|jdksJJ|jgdks\JdS)Nr everythinghelp)z-dZ some_domainrrrrr r rtest_determine_verb_help-sz+TestDetermineVerbs.test_determine_verb_helpcCs|tdgi}|jdksJ|jgks(Jtdgi}|jdksBJ|jgksPJtdgi}|jdksjJ|jgksxJdS)Nrauthrrrrr r rtest_determine_verb7s   z&TestDetermineVerbs.test_determine_verbN)rrrrrrr!r r r rr&s rc@s eZdZdZddZddZdS)TestAddz-Tests for add method in HelpfulArgumentParsercCsHtdgi}|dd|jddg}|jdks6Jt|drDJdS)Nrz --hello-worldz Hello World!r)raddparser parse_argsZ hello_worldhasattrr r Z parsed_argsr r rtest_add_trivial_argumentGs  z!TestAdd.test_add_trivial_argumentcCsXtddgi}|jgddddddd |jddg}|jdusFJt|dsTJdS) Nrr)Nrrregisterz --eab-kideab_kidstoreZEAB_KIDz+Key Identifier for External Account Binding)destactionmetavarr)rr#r$r%r*r&r'r r rtest_add_expected_argumentOsz"TestAdd.test_add_expected_argumentN)rrrrr(r/r r r rr"Esr"c@s(eZdZdZddZddZddZdS) TestAddGroupz.Test add_group method of HelpfulArgumentParsercCsBtdgi}tt|Wdn1s40YdS)Nr)rpytestraises TypeError add_grouprr r rtest_add_group_no_input]s  z$TestAddGroup.test_add_group_no_inputcCs.tddgi}|jddd|jiks*JdS)Nrrr zdescription of auth description)rr4groupsrr r r test_add_group_topic_not_visiblebs z-TestAddGroup.test_add_group_topic_not_visiblecCsxtddgi}|jddd|jds*J|jdddtt"|jddusVJWdn1sj0YdS)Nrrzdescription of runr6rzdescription of certonlyF)rr4r8r1r2KeyErrorrr r r#test_add_group_topic_requested_helpjs z0TestAddGroup.test_add_group_topic_requested_helpN)rrrrr5r9r;r r r rr0[sr0__main__)rsysr1Zcertbot._internal.clirrrr"r0rexitmainargv__file__r r r rs