@@ -82,12 +82,14 @@ public class TestProjectApi extends AbstractIntegrationTest {
8282
8383 private static final String TEST_PROJECT_NAME_1 = "test-gitlab4j-create-project" ;
8484 private static final String TEST_PROJECT_NAME_2 = "test-gitlab4j-create-project-2" ;
85+ private static final String TEST_NAMESPACE_PROJECT_NAME = "test-gitlab4j-create-namespace-project" ;
8586 private static final String TEST_PROJECT_NAME_UPDATE = "test-gitlab4j-create-project-update" ;
8687 private static final String TEST_XFER_PROJECT_NAME = "test-gitlab4j-xfer-project" ;
8788 private static final String TEST_VARIABLE_KEY_PREFIX = "TEST_VARIABLE_KEY_" ;
8889
8990 private static GitLabApi gitLabApi ;
9091 private static Project testProject ;
92+ private static User currentUser ;
9193
9294 public TestProjectApi () {
9395 super ();
@@ -99,6 +101,7 @@ public static void setup() {
99101 // Must setup the connection to the GitLab test server
100102 gitLabApi = baseTestSetup ();
101103 testProject = getTestProject ();
104+ currentUser = getCurrentUser ();
102105
103106 deleteAllTestProjects ();
104107 }
@@ -109,28 +112,29 @@ public static void teardown() throws GitLabApiException {
109112 }
110113
111114 private static void deleteAllTestProjects () {
115+
112116 if (gitLabApi == null ) {
113117 return ;
114118 }
115119
116120 try {
117- Project project = gitLabApi .getProjectApi ().getProject (TEST_NAMESPACE , TEST_PROJECT_NAME_1 );
118- gitLabApi .getProjectApi ().deleteProject (project );
121+ gitLabApi .getProjectApi ().deleteProject (Project .getPathWithNammespace (TEST_NAMESPACE , TEST_PROJECT_NAME_1 ));
119122 } catch (GitLabApiException ignore ) {}
120123
121124 try {
122- Project project = gitLabApi .getProjectApi ().getProject (TEST_NAMESPACE , TEST_PROJECT_NAME_2 );
123- gitLabApi .getProjectApi ().deleteProject (project );
125+ gitLabApi .getProjectApi ().deleteProject (Project .getPathWithNammespace (TEST_NAMESPACE , TEST_PROJECT_NAME_2 ));
124126 } catch (GitLabApiException ignore ) {}
125127
126128 try {
127- Project project = gitLabApi .getProjectApi ().getProject (TEST_NAMESPACE , TEST_PROJECT_NAME_UPDATE );
128- gitLabApi .getProjectApi ().deleteProject (project );
129+ gitLabApi .getProjectApi ().deleteProject (Project .getPathWithNammespace (TEST_NAMESPACE , TEST_PROJECT_NAME_UPDATE ));
129130 } catch (GitLabApiException ignore ) {}
130131
131132 try {
132- Project project = gitLabApi .getProjectApi ().getProject (TEST_NAMESPACE , TEST_XFER_PROJECT_NAME );
133- gitLabApi .getProjectApi ().deleteProject (project );
133+ gitLabApi .getProjectApi ().deleteProject (Project .getPathWithNammespace (TEST_NAMESPACE , TEST_XFER_PROJECT_NAME ));
134+ } catch (GitLabApiException ignore ) {}
135+
136+ try {
137+ gitLabApi .getProjectApi ().deleteProject (Project .getPathWithNammespace (TEST_NAMESPACE , TEST_NAMESPACE_PROJECT_NAME ));
134138 } catch (GitLabApiException ignore ) {}
135139
136140 if (TEST_GROUP != null && TEST_PROJECT_NAME != null ) {
@@ -153,15 +157,13 @@ private static void deleteAllTestProjects() {
153157
154158 if (TEST_GROUP != null && TEST_GROUP_PROJECT != null ) {
155159 try {
156- Project project = gitLabApi .getProjectApi ().getProject (TEST_NAMESPACE , TEST_GROUP_PROJECT );
157- gitLabApi .getProjectApi ().deleteProject (project );
160+ gitLabApi .getProjectApi ().deleteProject (Project .getPathWithNammespace (TEST_NAMESPACE , TEST_GROUP_PROJECT ));
158161 } catch (GitLabApiException ignore ) {}
159162 }
160163
161164 if (TEST_XFER_NAMESPACE != null ) {
162165 try {
163- Project project = gitLabApi .getProjectApi ().getProject (TEST_XFER_NAMESPACE , TEST_XFER_PROJECT_NAME );
164- gitLabApi .getProjectApi ().deleteProject (project );
166+ gitLabApi .getProjectApi ().deleteProject (Project .getPathWithNammespace (TEST_XFER_NAMESPACE , TEST_XFER_PROJECT_NAME ));
165167 } catch (GitLabApiException ignore ) {}
166168 }
167169
@@ -536,6 +538,24 @@ public void testProjectLanguages() throws GitLabApiException {
536538 assertNotNull (projectLanguages );
537539 }
538540
541+ @ Test
542+ public void testCreateProjectInNamespace () throws GitLabApiException {
543+
544+ assumeNotNull (currentUser );
545+
546+ Project namespaceProject = null ;
547+ try {
548+ namespaceProject = gitLabApi .getProjectApi ().createProject (currentUser .getId (), TEST_NAMESPACE_PROJECT_NAME );
549+ assertNotNull (namespaceProject );
550+ } finally {
551+ if (namespaceProject != null ) {
552+ try {
553+ gitLabApi .getProjectApi ().deleteProject (namespaceProject );
554+ } catch (Exception ignore ) {}
555+ }
556+ }
557+ }
558+
539559 @ Test
540560 public void testForkProject () throws GitLabApiException {
541561
@@ -544,8 +564,18 @@ public void testForkProject() throws GitLabApiException {
544564
545565 Project project = gitLabApi .getProjectApi ().getProject (TEST_GROUP , TEST_GROUP_PROJECT );
546566 assertNotNull (project );
547- Project forkedProject = gitLabApi .getProjectApi ().forkProject (project .getId (), TEST_NAMESPACE );
548- assertNotNull (forkedProject );
567+
568+ Project forkedProject = null ;
569+ try {
570+ forkedProject = gitLabApi .getProjectApi ().forkProject (project .getId (), TEST_NAMESPACE );
571+ assertNotNull (forkedProject );
572+ } finally {
573+ if (forkedProject != null ) {
574+ try {
575+ gitLabApi .getProjectApi ().deleteProject (forkedProject );
576+ } catch (Exception ignore ) {}
577+ }
578+ }
549579 }
550580
551581 @ Test
0 commit comments