a £=õ`ßã@sZddlZddlmmZddlmZddlm Z ddl m Z dd„Z dd„Z dd „ZdS) éN)ÚStringIO)ÚpatchcCsòd}tdtƒdÌ}t gd¢¡|j}|ƒ}||k}|sÄt d|fd||f¡dt ¡vsdt |¡rnt  |¡ndt  |¡t  |¡dt ¡vs–t |¡r t  |¡ndd œ}d d |i}t t  |¡ƒ‚d}}}Wdƒn1sä0YdS) NzConfiguration NOT in allowlist ú sys.stdout©Únew)z&test_files/config_files/command.configz?test_files/allowlist_files/command_multiple_regex_no_match.listú-v©ú==©zG%(py4)s {%(py4)s = %(py2)s {%(py2)s = %(py0)s.getvalue }() } == %(py6)sÚfake_outÚexpected_output©Úpy0Úpy2Zpy4Úpy6úassert %(py8)sÚpy8© rrÚmainÚgetvalueÚ @pytest_arÚ_call_reprcompareÚ @py_builtinsÚlocalsÚ_should_repr_global_nameÚ _safereprÚAssertionErrorÚ_format_explanation©r r Ú @py_assert1Ú @py_assert3Ú @py_assert5Ú @py_format7Ú @py_format9©r$úi/Users/fuellbie/tools/aws-elastic-beanstalk-deployment-workflow/ebextensions-validator/tests/test_main.pyÚtest_main_not_valid sr&cCsòd}tdtƒdÌ}t gd¢¡|j}|ƒ}||k}|sÄt d|fd||f¡dt ¡vsdt |¡rnt  |¡ndt  |¡t  |¡dt ¡vs–t |¡r t  |¡ndd œ}d d |i}t t  |¡ƒ‚d}}}Wdƒn1sä0YdS) NzConfiguration is in allowlist rr)z'test_files/config_files/packages.configrz.test_files/allowlist_files/packages_valid.listrr r r r rrrrr$r$r%Útest_main_validsr'c Csäz t ¡WnÒtyÞ}zºt|ƒ}d}||k}|s¾t d|fd||f¡dt ¡vs^t t¡rht t¡nddt ¡vs€t |¡rŠt |¡ndt |¡t |¡dœ}dd|i}t t  |¡ƒ‚d}}}WYd}~n d}~00dS) NÚ2r)z0%(py3)s {%(py3)s = %(py0)s(%(py1)s) } == %(py6)sÚstrÚe)rZpy1Zpy3rrr) rÚ SystemExitr)rrrrrrrr)r*Z @py_assert2r!Ú @py_assert4r"r#r$r$r%Útest_main_non_argss r-)ÚbuiltinsrÚ_pytest.assertion.rewriteÚ assertionÚrewriterÚiorZebextensions_validator.mainrZ unittest.mockrr&r'r-r$r$r$r%Ús &