a ze,@sHdZddlZddlmZedZGdddejZedkrDe dS)zTest script for the grp module.N)supportgrpc@s4eZdZddZddZddZddZd d Zd S) GroupDatabaseTestCasecCs|t|d||d|j||jt||d|j||jt||d|j||jt||d|j||jt dS)Nr) assertEquallengr_nameZassertIsInstancestr gr_passwdgr_gidintgr_memlist)selfvaluerA/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_grp.py check_value sz!GroupDatabaseTestCase.check_valuecCs t}|D]}||q dS)N)rgetgrallr)rentrieserrr test_valuessz!GroupDatabaseTestCase.test_valuescCst}t|dkr|d|D]p}t|j}||||j|j|j}| ds"| drhq"t |}||||j | q"dS)Niz&huge group file, extended test skipped+-) rrr skipTestgetgrgidrrr r startswithgetgrnamlower)rrre2namerrrtest_values_extendeds      z*GroupDatabaseTestCase.test_values_extendedc Cs||ttj|ttj|ttjd|ttjdi}i}tD]*\}}}}|rL|dkrfqL|||<|||<qLt|}d}||} | |vr:t| } t t | D]N} | | dkrd| | <q.q| | dkrqqt t | | d| | <q.q|d}z ||} Wnt y,Yq:Yn0d | } q|ttj| d } | |vrh| d d } qN|ttj| dS) N*zabrrzAZriri)Z assertRaises TypeErrorrrr r ValueErrorrkeysranger chrord IndexErrorjoinKeyError) rZbynamesZbygidsnpgZmemZallnamesZnameiZfakenamecharsiZfakegidrrr test_errors1sF          z!GroupDatabaseTestCase.test_errorscCsNt}|s|d|dd}|ttjt||ttjt|dS)Nz no groupsrr)rrrZ assertWarnsDeprecationWarningrfloatr )rrgidrrrtest_noninteger_gidas   z)GroupDatabaseTestCase.test_noninteger_gidN)__name__ __module__ __qualname__rrr$r8r<rrrrrs  0r__main__) __doc__Zunittesttestr import_modulerZTestCaserr=mainrrrrs   c