diff --git a/src/test/java/org/gitlab4j/api/IntegrationTestSuite.java b/src/test/java/org/gitlab4j/api/IntegrationTestSuite.java index 35383af7987063704f778c6589ebafc7c64573bf..f6557fd9a648c7a1bca4f467fed0e54299ccfbdb 100644 --- a/src/test/java/org/gitlab4j/api/IntegrationTestSuite.java +++ b/src/test/java/org/gitlab4j/api/IntegrationTestSuite.java @@ -28,11 +28,13 @@ public class IntegrationTestSuite implements PropertyConstants { protected static final String TEST_NAMESPACE = HelperUtils.getProperty(NAMESPACE_KEY); protected static final String TEST_PRIVATE_TOKEN_NAME = "GitLab4J Test Private Token - " + HelperUtils.getRandomInt(1000); - protected static String TEST_PRIVATE_TOKEN; + protected static String TEST_PRIVATE_TOKEN = HelperUtils.getProperty(PRIVATE_TOKEN_KEY); protected static final String TEST_ACCESS_TOKEN_NAME = "GitLab4J Test Access Token - " + HelperUtils.getRandomInt(1000); - protected static String TEST_ACCESS_TOKEN; + protected static String TEST_ACCESS_TOKEN = HelperUtils.getProperty(ACCESS_TOKEN_KEY); + private static boolean createdPrivateToken = false; + private static boolean createdAccessToken = false; private static String problems = ""; @BeforeClass @@ -58,22 +60,31 @@ public class IntegrationTestSuite implements PropertyConstants { fail(problems); } - // Create a new personal access token for both the private and access tokens - TEST_PRIVATE_TOKEN = AccessTokenUtils.createPersonalAccessToken( - TEST_HOST_URL, TEST_LOGIN_USERNAME, TEST_LOGIN_PASSWORD, - TEST_PRIVATE_TOKEN_NAME, Arrays.asList("api", "sudo")); - System.out.println("Created private token: " + TEST_PRIVATE_TOKEN); - assertNotNull(TEST_PRIVATE_TOKEN); - assertFalse(TEST_PRIVATE_TOKEN.trim().isEmpty()); - HelperUtils.setProperty(PRIVATE_TOKEN_KEY, TEST_PRIVATE_TOKEN); - - TEST_ACCESS_TOKEN = AccessTokenUtils.createPersonalAccessToken( - TEST_HOST_URL, TEST_LOGIN_USERNAME, TEST_LOGIN_PASSWORD, - TEST_ACCESS_TOKEN_NAME, Arrays.asList("api", "sudo")); - System.out.println("Created access token: " + TEST_ACCESS_TOKEN); - assertNotNull(TEST_ACCESS_TOKEN); - assertFalse(TEST_ACCESS_TOKEN.trim().isEmpty()); - HelperUtils.setProperty(ACCESS_TOKEN_KEY, TEST_ACCESS_TOKEN); + // If the private token is not in the properties, create it + if (TEST_PRIVATE_TOKEN == null || TEST_PRIVATE_TOKEN.trim().isEmpty()) { + + TEST_PRIVATE_TOKEN = AccessTokenUtils.createPersonalAccessToken( + TEST_HOST_URL, TEST_LOGIN_USERNAME, TEST_LOGIN_PASSWORD, + TEST_PRIVATE_TOKEN_NAME, Arrays.asList("api", "sudo")); + System.out.println("Created private token: " + TEST_PRIVATE_TOKEN); + assertNotNull(TEST_PRIVATE_TOKEN); + assertFalse(TEST_PRIVATE_TOKEN.trim().isEmpty()); + HelperUtils.setProperty(PRIVATE_TOKEN_KEY, TEST_PRIVATE_TOKEN); + createdPrivateToken = true; + } + + // If the access token is not in the properties, create it t + if (TEST_ACCESS_TOKEN == null || TEST_ACCESS_TOKEN.trim().isEmpty()) { + + TEST_ACCESS_TOKEN = AccessTokenUtils.createPersonalAccessToken( + TEST_HOST_URL, TEST_LOGIN_USERNAME, TEST_LOGIN_PASSWORD, + TEST_ACCESS_TOKEN_NAME, Arrays.asList("api", "sudo")); + System.out.println("Created access token: " + TEST_ACCESS_TOKEN); + assertNotNull(TEST_ACCESS_TOKEN); + assertFalse(TEST_ACCESS_TOKEN.trim().isEmpty()); + HelperUtils.setProperty(ACCESS_TOKEN_KEY, TEST_ACCESS_TOKEN); + createdAccessToken = true; + } } @AfterClass @@ -83,7 +94,7 @@ public class IntegrationTestSuite implements PropertyConstants { System.out.println("* Test Suite Teardown *"); System.out.println("********************************************************"); - if (TEST_PRIVATE_TOKEN != null) { + if (createdPrivateToken && TEST_PRIVATE_TOKEN != null) { try { AccessTokenUtils.revokePersonalAccessToken( TEST_HOST_URL, TEST_LOGIN_USERNAME, TEST_LOGIN_PASSWORD, @@ -92,7 +103,7 @@ public class IntegrationTestSuite implements PropertyConstants { } catch (Exception ignore) {} } - if (TEST_ACCESS_TOKEN != null) { + if (createdAccessToken && TEST_ACCESS_TOKEN != null) { try { AccessTokenUtils.revokePersonalAccessToken( TEST_HOST_URL, TEST_LOGIN_USERNAME, TEST_LOGIN_PASSWORD,