a *Na@sddlZddlZddlZddlmZGdddeZGdddejZGdddejZ ej d d Z ej d d Z Gd ddZ GdddZdS)N)basec@s eZdZdS) FakeGitlabN__name__ __module__ __qualname__rro/private/var/folders/js/6pj4vh5d4zd0k6bxv74qrbhr0000gr/T/pip-target-22xwyzbs/lib/python/tests/unit/test_base.pyrsrc@s eZdZdS) FakeObjectNrrrrr r sr c@seZdZeZdZdS) FakeManager/testsN)rrrr _obj_cls_pathrrrr r "sr cCstSN)rrrrr fake_gitlab'srcCst|Sr)r )rrrr fake_manager,src@s$eZdZddZddZddZdS)TestRESTManagercCs.Gdddtj}|t}|jdks*JdS)Nc@seZdZdZeZdS)z6TestRESTManager.test_computed_path_simple..MGRr Nrrrrobjectr rrrr MGR3srr )r RESTManagerr_computed_pathselfrmgrrrr test_computed_path_simple2s z)TestRESTManager.test_computed_path_simplecCsDGdddtj}Gdddt}|t|d}|jdks@JdS)Nc@seZdZdZeZddiZdS)z;TestRESTManager.test_computed_path_with_parent..MGRz/tests/%(test_id)s/casesZtest_ididN)rrrrrr Z_from_parent_attrsrrrr r;src@seZdZdZdS)z>TestRESTManager.test_computed_path_with_parent..Parent*N)rrrrrrrr Parent@sr)parentz/tests/42/cases)rrrrr)rrrrrrr test_computed_path_with_parent:sz.TestRESTManager.test_computed_path_with_parentcCs.Gdddtj}|t}|jdks*JdS)Nc@seZdZdZeZdS)z/TestRESTManager.test_path_property..MGRr Nrrrrr rGsrr )rrrpathrrrr test_path_propertyFs z"TestRESTManager.test_path_propertyN)rrrrr r"rrrr r1s rc@s|eZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ ddZddZddZdS)TestRESTObjectcCs`t|ddi}ddi|jks Ji|jks.J|dus>J||jksLJ||jjks\JdS)Nfoobar)r _attrs_updated_attrsZ_create_managersmanagergitlab)rrrobjrrr test_instantiatePs zTestRESTObject.test_instantiatecCs@ttjjt|gdWdn1s20YdS)N)alistZfails)pytestraisesr) exceptionsZGitlabParsingErrorr )rrrrrr test_instantiate_non_dictYsz(TestRESTObject.test_instantiate_non_dictcCs`t|ddi}|j}t|}t|}t|ts6Jt|dsDJ|j|ksRJt|dS)Nr$r%_module)r r2pickledumpsloads isinstancehasattr)rrr*Zoriginal_obj_moduleZpickledZ unpickledrrr test_picklability]s  z TestRESTObject.test_picklabilitycCst|ddi}d|jksJttt|dWdn1sF0Yd|_d|jksdJddi|jksvJddi|jksJdS)Nr$r%baz) r r$r.r/AttributeErrorgetattrr%r&r'rrr*rrr test_attrsgs (zTestRESTObject.test_attrscCs>t|ddi}d|_d|ks$Jd|_|dus:JdS)Nr$r%r)r rget_idr<rrr test_get_idss zTestRESTObject.test_get_idcCs2Gdddt}||ddi}d|ks.JdS)Nc@seZdZdZdS)z;TestRESTObject.test_custom_id_attr..OtherFakeObjectr$NrrrZ_id_attrrrrr OtherFakeObject|srAr$r%)r r>)rrrAr*rrr test_custom_id_attr{sz"TestRESTObject.test_custom_id_attrcCsJt|ddi}d|_|dddddd|jks8Ji|jksFJdS)Nr$r%r9r$r%r r%Z _update_attrsr&r'r<rrr test_update_attrss z TestRESTObject.test_update_attrscCsHt|ddd}d|_|ddiddi|jks6Ji|jksDJdS)Nr$r%rCr9rDr<rrr test_update_attrs_deleteds z(TestRESTObject.test_update_attrs_deletedcCs2t|ddi}tt|ttt|ks.JdS)Nr(r$)r lendirsetr<rrr test_dir_uniqueszTestRESTObject.test_dir_uniquecCsXGdddt}||ddi}d|_t|jts4J|jj|ksDJ|jj|ksTJdS)Nc@seZdZdZdS)z>TestRESTObject.test_create_managers..ObjectWithManager))fakesr N)rrrZ _managersrrrr ObjectWithManagersrLr$r%r)r rr6rKr r)_parent)rrrrLr*rrr test_create_managerss z#TestRESTObject.test_create_managerscCs.t|ddi}t|ddd}||ks*JdS)Nrr$r%)r other_attrr rrobj1obj2rrr test_equalityszTestRESTObject.test_equalitycCs>Gdddt}||ddi}||ddd}||ks:JdS)Nc@seZdZdZdS)z?TestRESTObject.test_equality_custom_id..OtherFakeObjectr$Nr@rrrr rAsrAr$r%r9)r$rOrP)rrrArRrSrrr test_equality_custom_idsz&TestRESTObject.test_equality_custom_idcCs,t|ddi}t|ddi}||ks(JdS)Nrr$r%rPrQrrr test_inequalityszTestRESTObject.test_inequalitycCs,t|ddi}t|ddi}||ks(JdS)NZattr1r$r%rPrQrrr test_inequality_no_idsz$TestRESTObject.test_inequality_no_idN)rrrr+r1r8r=r?rBrErFrJrNrTrUrVrWrrrr r#Os    r#)r3r.r)rrrZ RESTObjectr rr Zfixturerrrr#rrrr s