a *Na@s&dZddlZddlZddlmZdddZdddd Zejd d Zejd d Z ejddZ ddZ ddZ ddZ ejjddddZejjddddZejjddddZejjddddZejjddd d!Zejjddd"d#Zejjddd$d%Zejjddd&d'Zejjddd(d)Zejjddd*d+Zejjddd,d-Zejjddd.d/Zejjddd0d1Zejjddd2d3Zejjddd4d5Zejjddd6d7Zejjddd8d9Z ejjddd:d;Z!ejjdddd?Z#ejjddd@dAZ$ejjdddBdCZ%ejjdddDdEZ&ejjdddFdGZ'ejjdddHdIZ(ejjdddJdKZ)ejjdddLdMZ*ejjdddNdOZ+ejjdddPdQZ,ejjdddRdSZ-ejjdddTdUZ.dS)Vz: GitLab API: https://docs.gitlab.com/ce/api/projects.html N)Projectname)ridproject scheduled)rr import_statusccsHt,}|jtjdtddd|VWdn1s:0YdS)Nz"http://localhost/api/v4/projects/1application/jsonmethodurljson content_typestatus responses RequestsMockaddGETproject_contentZrspsr{/private/var/folders/js/6pj4vh5d4zd0k6bxv74qrbhr0000gr/T/pip-target-22xwyzbs/lib/python/tests/unit/objects/test_projects.pyresp_get_projects rccsJt.}|jtjdtgddd|VWdn1s<0YdS)Nz http://localhost/api/v4/projectsr r r rrrrrresp_list_projectss rccsHt,}|jtjdtddd|VWdn1s:0YdS)Nz/http://localhost/api/v4/import/bitbucket_serverr r )rrrPOSTimport_contentrrrrresp_import_bitbucket_server,s rcCs:|jd}t|tsJ|jdks(J|jdks6JdS)Nrr)projectsget isinstancerrr)glrdatarrrtest_get_project9s r%cCs2|j}t|dtsJ|djdks.JdS)Nrr)r listr"rr)r#rr rrrtest_list_projects@s r'c CsN|jjdddddddd}|d d ks*J|d dks:J|d d ksJJdS)Nrrepor usernametokennew_name namespace)Zbitbucket_server_projectZbitbucket_server_repoZbitbucket_server_urlZbitbucket_server_usernameZpersonal_access_tokenr+Ztarget_namespacerrrrr)r Zimport_bitbucket_server)r#rresrrrtest_import_bitbucket_serverFs r.z missing test)reasoncCsdSNrr#rrrtest_list_user_projectsUsr2cCsdSr0rr1rrrtest_list_user_starred_projectsZsr3cCsdSr0rr1rrrtest_list_project_users_sr4cCsdSr0rr1rrrtest_create_projectdsr5cCsdSr0rr1rrrtest_create_user_projectisr6cCsdSr0rr1rrrtest_update_projectnsr7cCsdSr0rr1rrrtest_fork_projectssr8cCsdSr0rr1rrrtest_list_project_forksxsr9cCsdSr0rr1rrrtest_star_project}sr:cCsdSr0rr1rrrtest_unstar_projectsr;cCsdSr0rr1rrrtest_list_project_starrerssr<cCsdSr0rr1rrrtest_get_project_languagessr=cCsdSr0rr1rrrtest_archive_projectsr>cCsdSr0rr1rrrtest_unarchive_projectsr?cCsdSr0rr1rrrtest_remove_projectsr@cCsdSr0rr1rrrtest_restore_projectsrAcCsdSr0rr1rrrtest_upload_filesrBcCsdSr0rr1rrrtest_share_projectsrCcCsdSr0rr1rrrtest_delete_shared_project_linksrDcCsdSr0rr1rrr$test_create_forked_from_relationshipsrEcCsdSr0rr1rrr$test_delete_forked_from_relationshipsrFcCsdSr0rr1rrrtest_search_projects_by_namesrGcCsdSr0rr1rrrtest_project_housekeepingsrHcCsdSr0rr1rrrtest_get_project_push_rulessrIcCsdSr0rr1rrrtest_create_project_push_rulesrJcCsdSr0rr1rrrtest_update_project_push_rulesrKcCsdSr0rr1rrrtest_delete_project_push_rulesrLcCsdSr0rr1rrrtest_transfer_projectsrMcCsdSr0rr1rrrtest_project_pull_mirrorsrNcCsdSr0rr1rrrtest_project_snapshotsrOcCsdSr0rr1rrrtest_import_githubsrP)/__doc__ZpytestrZgitlab.v4.objectsrrrZfixturerrrr%r'r.markskipr2r3r4r5r6r7r8r9r:r;r<r=r>r?r@rArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrrrrs