@@ -28,11 +28,13 @@ public class IntegrationTestSuite implements PropertyConstants {
2828 protected static final String TEST_NAMESPACE = HelperUtils .getProperty (NAMESPACE_KEY );
2929
3030 protected static final String TEST_PRIVATE_TOKEN_NAME = "GitLab4J Test Private Token - " + HelperUtils .getRandomInt (1000 );
31- protected static String TEST_PRIVATE_TOKEN ;
31+ protected static String TEST_PRIVATE_TOKEN = HelperUtils . getProperty ( PRIVATE_TOKEN_KEY ) ;
3232
3333 protected static final String TEST_ACCESS_TOKEN_NAME = "GitLab4J Test Access Token - " + HelperUtils .getRandomInt (1000 );
34- protected static String TEST_ACCESS_TOKEN ;
34+ protected static String TEST_ACCESS_TOKEN = HelperUtils . getProperty ( ACCESS_TOKEN_KEY ) ;
3535
36+ private static boolean createdPrivateToken = false ;
37+ private static boolean createdAccessToken = false ;
3638 private static String problems = "" ;
3739
3840 @ BeforeClass
@@ -58,22 +60,31 @@ public static void suiteSetup() throws GitLabApiException {
5860 fail (problems );
5961 }
6062
61- // Create a new personal access token for both the private and access tokens
62- TEST_PRIVATE_TOKEN = AccessTokenUtils .createPersonalAccessToken (
63- TEST_HOST_URL , TEST_LOGIN_USERNAME , TEST_LOGIN_PASSWORD ,
64- TEST_PRIVATE_TOKEN_NAME , Arrays .asList ("api" , "sudo" ));
65- System .out .println ("Created private token: " + TEST_PRIVATE_TOKEN );
66- assertNotNull (TEST_PRIVATE_TOKEN );
67- assertFalse (TEST_PRIVATE_TOKEN .trim ().isEmpty ());
68- HelperUtils .setProperty (PRIVATE_TOKEN_KEY , TEST_PRIVATE_TOKEN );
69-
70- TEST_ACCESS_TOKEN = AccessTokenUtils .createPersonalAccessToken (
71- TEST_HOST_URL , TEST_LOGIN_USERNAME , TEST_LOGIN_PASSWORD ,
72- TEST_ACCESS_TOKEN_NAME , Arrays .asList ("api" , "sudo" ));
73- System .out .println ("Created access token: " + TEST_ACCESS_TOKEN );
74- assertNotNull (TEST_ACCESS_TOKEN );
75- assertFalse (TEST_ACCESS_TOKEN .trim ().isEmpty ());
76- HelperUtils .setProperty (ACCESS_TOKEN_KEY , TEST_ACCESS_TOKEN );
63+ // If the private token is not in the properties, create it
64+ if (TEST_PRIVATE_TOKEN == null || TEST_PRIVATE_TOKEN .trim ().isEmpty ()) {
65+
66+ TEST_PRIVATE_TOKEN = AccessTokenUtils .createPersonalAccessToken (
67+ TEST_HOST_URL , TEST_LOGIN_USERNAME , TEST_LOGIN_PASSWORD ,
68+ TEST_PRIVATE_TOKEN_NAME , Arrays .asList ("api" , "sudo" ));
69+ System .out .println ("Created private token: " + TEST_PRIVATE_TOKEN );
70+ assertNotNull (TEST_PRIVATE_TOKEN );
71+ assertFalse (TEST_PRIVATE_TOKEN .trim ().isEmpty ());
72+ HelperUtils .setProperty (PRIVATE_TOKEN_KEY , TEST_PRIVATE_TOKEN );
73+ createdPrivateToken = true ;
74+ }
75+
76+ // If the access token is not in the properties, create it t
77+ if (TEST_ACCESS_TOKEN == null || TEST_ACCESS_TOKEN .trim ().isEmpty ()) {
78+
79+ TEST_ACCESS_TOKEN = AccessTokenUtils .createPersonalAccessToken (
80+ TEST_HOST_URL , TEST_LOGIN_USERNAME , TEST_LOGIN_PASSWORD ,
81+ TEST_ACCESS_TOKEN_NAME , Arrays .asList ("api" , "sudo" ));
82+ System .out .println ("Created access token: " + TEST_ACCESS_TOKEN );
83+ assertNotNull (TEST_ACCESS_TOKEN );
84+ assertFalse (TEST_ACCESS_TOKEN .trim ().isEmpty ());
85+ HelperUtils .setProperty (ACCESS_TOKEN_KEY , TEST_ACCESS_TOKEN );
86+ createdAccessToken = true ;
87+ }
7788 }
7889
7990 @ AfterClass
@@ -83,7 +94,7 @@ public static void suiteTeardown() throws GitLabApiException {
8394 System .out .println ("* Test Suite Teardown *" );
8495 System .out .println ("********************************************************" );
8596
86- if (TEST_PRIVATE_TOKEN != null ) {
97+ if (createdPrivateToken && TEST_PRIVATE_TOKEN != null ) {
8798 try {
8899 AccessTokenUtils .revokePersonalAccessToken (
89100 TEST_HOST_URL , TEST_LOGIN_USERNAME , TEST_LOGIN_PASSWORD ,
@@ -92,7 +103,7 @@ public static void suiteTeardown() throws GitLabApiException {
92103 } catch (Exception ignore ) {}
93104 }
94105
95- if (TEST_ACCESS_TOKEN != null ) {
106+ if (createdAccessToken && TEST_ACCESS_TOKEN != null ) {
96107 try {
97108 AccessTokenUtils .revokePersonalAccessToken (
98109 TEST_HOST_URL , TEST_LOGIN_USERNAME , TEST_LOGIN_PASSWORD ,
0 commit comments