diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/autoassign/AutoAssignCheckerIntTest.java b/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/autoassign/AutoAssignCheckerIntTest.java index 83c05ff54..608c94066 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/autoassign/AutoAssignCheckerIntTest.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/autoassign/AutoAssignCheckerIntTest.java @@ -53,9 +53,10 @@ import org.springframework.data.domain.Slice; @Story("Auto assign checker") class AutoAssignCheckerIntTest extends AbstractJpaIntegrationTest { + private static final String SPACE_AND_DESCRIPTION = " description"; + @Autowired private AutoAssignChecker autoAssignChecker; - @Autowired private DeploymentManagement deploymentManagement; @@ -120,7 +121,7 @@ class AutoAssignCheckerIntTest extends AbstractJpaIntegrationTest { final String targetDsAIdPref = "targ"; final List targets = testdataFactory.createTargets(25, targetDsAIdPref, - targetDsAIdPref.concat(" description")); + targetDsAIdPref.concat(SPACE_AND_DESCRIPTION)); final int targetsCount = targets.size(); // assign set A to first 10 targets @@ -199,7 +200,7 @@ class AutoAssignCheckerIntTest extends AbstractJpaIntegrationTest { final String targetDsAIdPref = "targ"; final List targets = testdataFactory.createTargets(20, targetDsAIdPref, - targetDsAIdPref.concat(" description")); + targetDsAIdPref.concat(SPACE_AND_DESCRIPTION)); // Run the check autoAssignChecker.checkAllTargets(); @@ -262,10 +263,10 @@ class AutoAssignCheckerIntTest extends AbstractJpaIntegrationTest { implicitLock(setA); final List targetsF = testdataFactory.createTargets(10, targetDsFIdPref, - targetDsFIdPref.concat(" description")); + targetDsFIdPref.concat(SPACE_AND_DESCRIPTION)); final List targetsA = testdataFactory.createTargets(10, targetDsAIdPref, - targetDsAIdPref.concat(" description")); + targetDsAIdPref.concat(SPACE_AND_DESCRIPTION)); final int targetsCount = targetsA.size() + targetsF.size(); @@ -475,7 +476,7 @@ class AutoAssignCheckerIntTest extends AbstractJpaIntegrationTest { final DistributionSet distributionSet, final ActionType actionType) { final List targets = testdataFactory.createTargets(targetCount, "target" + prefix, - prefix.concat(" description")); + prefix.concat(SPACE_AND_DESCRIPTION)); targetFilterQueryManagement.create( entityFactory.targetFilterQuery().create().name("filter" + prefix).query("id==target" + prefix + "*") .autoAssignDistributionSet(distributionSet).autoAssignActionType(actionType)); diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/management/TargetManagementSearchTest.java b/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/management/TargetManagementSearchTest.java index 029ed823f..789d5e5ee 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/management/TargetManagementSearchTest.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/management/TargetManagementSearchTest.java @@ -47,6 +47,8 @@ import org.springframework.data.domain.Sort.Direction; @Story("Target Management Searches") class TargetManagementSearchTest extends AbstractJpaIntegrationTest { + private static final String SPACE_AND_DESCRIPTION = " description"; + @Test @Description("Verifies that targets with given target type are returned from repository.") public void findTargetByTargetType() { @@ -92,7 +94,7 @@ class TargetManagementSearchTest extends AbstractJpaIntegrationTest { final String targetDsAIdPref = "targ-A"; List targAs = testdataFactory.createTargets(100, targetDsAIdPref, - targetDsAIdPref.concat(" description"), lastTargetQueryNotOverdue); + targetDsAIdPref.concat(SPACE_AND_DESCRIPTION), lastTargetQueryNotOverdue); targAs = assignTag(targAs, targTagX); final Target targSpecialName = targetManagement @@ -100,21 +102,21 @@ class TargetManagementSearchTest extends AbstractJpaIntegrationTest { final String targetDsBIdPref = "targ-B"; List targBs = testdataFactory.createTargets(100, targetDsBIdPref, - targetDsBIdPref.concat(" description"), lastTargetQueryAlwaysOverdue); + targetDsBIdPref.concat(SPACE_AND_DESCRIPTION), lastTargetQueryAlwaysOverdue); targBs = assignTag(targBs, targTagY); targBs = assignTag(targBs, targTagW); final String targetDsCIdPref = "targ-C"; List targCs = testdataFactory.createTargets(100, targetDsCIdPref, - targetDsCIdPref.concat(" description"), lastTargetQueryAlwaysOverdue); + targetDsCIdPref.concat(SPACE_AND_DESCRIPTION), lastTargetQueryAlwaysOverdue); targCs = assignTag(targCs, targTagZ); targCs = assignTag(targCs, targTagW); final String targetDsDIdPref = "targ-D"; final List targDs = testdataFactory.createTargets(100, targetDsDIdPref, - targetDsDIdPref.concat(" description"), null); + targetDsDIdPref.concat(SPACE_AND_DESCRIPTION), null); final String targetDsEIdPref = "targ-E"; final List targEs = testdataFactory.createTargetsWithType(100, targetDsEIdPref, targetTypeX); diff --git a/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/MsSqlTestDatabase.java b/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/MsSqlTestDatabase.java index c8ca94089..b35c4554c 100644 --- a/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/MsSqlTestDatabase.java +++ b/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/MsSqlTestDatabase.java @@ -19,6 +19,8 @@ import org.junit.jupiter.api.extension.Extension; @Slf4j public class MsSqlTestDatabase extends AbstractSqlTestDatabase { + private static final String DATABASE_AND_SURROUNDINGS = ";database="; + public MsSqlTestDatabase(final DatasourceContext context) { super(context); } @@ -28,14 +30,14 @@ public class MsSqlTestDatabase extends AbstractSqlTestDatabase { final String uri = context.getDatasourceUrl(); log.info("\033[0;33mCreating mssql schema {} \033[0m", context.getRandomSchemaName()); - executeStatement(uri.split(";database=")[0], "CREATE DATABASE " + context.getRandomSchemaName() + ";"); + executeStatement(uri.split(DATABASE_AND_SURROUNDINGS)[0], "CREATE DATABASE " + context.getRandomSchemaName() + ";"); return this; } @Override protected void dropRandomSchema() { final String uri = context.getDatasourceUrl(); - final String dbServerUri = uri.split(";database=")[0]; + final String dbServerUri = uri.split(DATABASE_AND_SURROUNDINGS)[0]; log.info("\033[0;33mDropping mssql schema {} \033[0m", context.getRandomSchemaName()); // Needed to avoid the DROP is rejected with "database still in use" @@ -46,6 +48,6 @@ public class MsSqlTestDatabase extends AbstractSqlTestDatabase { @Override protected String getRandomSchemaUri() { final String uri = context.getDatasourceUrl(); - return uri.substring(0, uri.indexOf(';')) + ";database=" + context.getRandomSchemaName(); + return uri.substring(0, uri.indexOf(';')) + DATABASE_AND_SURROUNDINGS + context.getRandomSchemaName(); } -} +} \ No newline at end of file diff --git a/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/PostgreSqlTestDatabase.java b/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/PostgreSqlTestDatabase.java index 202634389..9f436df98 100644 --- a/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/PostgreSqlTestDatabase.java +++ b/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/PostgreSqlTestDatabase.java @@ -22,6 +22,7 @@ import org.junit.jupiter.api.extension.Extension; public class PostgreSqlTestDatabase extends AbstractSqlTestDatabase { private static final String POSTGRESQL_URI_PATTERN = "jdbc:postgresql://{host}:{port}/{db}*"; + private static final String CURRENT_SCHEMA_AND_SURROUNDINGS = "?currentSchema="; public PostgreSqlTestDatabase(final DatasourceContext context) { super(context); @@ -30,7 +31,7 @@ public class PostgreSqlTestDatabase extends AbstractSqlTestDatabase { @Override protected PostgreSqlTestDatabase createRandomSchema() { log.info("\033[0;33mCreating postgreSql schema {} \033[0m", context.getRandomSchemaName()); - final String uri = getBaseUri() + "?currentSchema=" + getSchemaName(); + final String uri = getBaseUri() + CURRENT_SCHEMA_AND_SURROUNDINGS + getSchemaName(); executeStatement(uri, "CREATE SCHEMA " + context.getRandomSchemaName() + ";"); return this; } @@ -38,13 +39,13 @@ public class PostgreSqlTestDatabase extends AbstractSqlTestDatabase { @Override protected void dropRandomSchema() { log.info("\033[0;33mDropping postgreSql schema {}\033[0m", context.getRandomSchemaName()); - final String uri = getBaseUri() + "?currentSchema=" + getSchemaName(); + final String uri = getBaseUri() + CURRENT_SCHEMA_AND_SURROUNDINGS + getSchemaName(); executeStatement(uri, "DROP SCHEMA " + context.getRandomSchemaName() + " CASCADE;"); } @Override protected String getRandomSchemaUri() { - return getBaseUri() + "?currentSchema=" + context.getRandomSchemaName(); + return getBaseUri() + CURRENT_SCHEMA_AND_SURROUNDINGS + context.getRandomSchemaName(); } private String getBaseUri() { diff --git a/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/TestdataFactory.java b/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/TestdataFactory.java index 981428235..3bb9bfe6c 100644 --- a/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/TestdataFactory.java +++ b/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/TestdataFactory.java @@ -137,6 +137,8 @@ public class TestdataFactory { public static final String DEFAULT_COLOUR = "#000000"; + private static final String SPACE_AND_DESCRIPTION = " description"; + @Autowired private ControllerManagement controllerManagament; @@ -1070,7 +1072,7 @@ public class TestdataFactory { public Rollout createRollout(final String prefix) { createTargets(quotaManagement.getMaxTargetsPerRolloutGroup() * quotaManagement.getMaxRolloutGroupsPerRollout(), prefix); - return createRolloutByVariables(prefix, prefix + " description", + return createRolloutByVariables(prefix, prefix + SPACE_AND_DESCRIPTION, quotaManagement.getMaxRolloutGroupsPerRollout(), "controllerId==" + prefix + "*", createDistributionSet(prefix), "50", "5"); } @@ -1085,7 +1087,7 @@ public class TestdataFactory { final String prefix = RandomStringUtils.randomAlphanumeric(5); createTargets(quotaManagement.getMaxTargetsPerRolloutGroup() * quotaManagement.getMaxRolloutGroupsPerRollout(), prefix); - return createRolloutByVariables(prefix, prefix + " description", + return createRolloutByVariables(prefix, prefix + SPACE_AND_DESCRIPTION, quotaManagement.getMaxRolloutGroupsPerRollout(), "controllerId==" + prefix + "*", createDistributionSet(prefix), "50", "5"); } @@ -1187,7 +1189,7 @@ public class TestdataFactory { public TargetType findOrCreateTargetType(final String targetTypeName) { return targetTypeManagement.getByName(targetTypeName) .orElseGet(() -> targetTypeManagement.create(entityFactory.targetType().create() - .name(targetTypeName).description(targetTypeName + " description") + .name(targetTypeName).description(targetTypeName + SPACE_AND_DESCRIPTION) .key(targetTypeName + " key").colour(DEFAULT_COLOUR))); } @@ -1201,7 +1203,7 @@ public class TestdataFactory { */ public TargetType createTargetType(final String targetTypeName, final List compatibleDsTypes) { return targetTypeManagement.create(entityFactory.targetType().create().name(targetTypeName) - .description(targetTypeName + " description").colour(DEFAULT_COLOUR) + .description(targetTypeName + SPACE_AND_DESCRIPTION).colour(DEFAULT_COLOUR) .compatible(compatibleDsTypes.stream().map(DistributionSetType::getId).collect(Collectors.toList()))); } @@ -1216,7 +1218,7 @@ public class TestdataFactory { final List result = new ArrayList<>(count); for (int i = 0; i < count; i++) { result.add(entityFactory.targetType().create() - .name(targetTypePrefix + i).description(targetTypePrefix + " description") + .name(targetTypePrefix + i).description(targetTypePrefix + SPACE_AND_DESCRIPTION) .key(targetTypePrefix + i + " key").colour(DEFAULT_COLOUR)); } return targetTypeManagement.create(result); diff --git a/hawkbit-rest/hawkbit-mgmt-resource/src/test/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtTargetTypeResourceTest.java b/hawkbit-rest/hawkbit-mgmt-resource/src/test/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtTargetTypeResourceTest.java index 27b1707aa..79497f1e4 100644 --- a/hawkbit-rest/hawkbit-mgmt-resource/src/test/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtTargetTypeResourceTest.java +++ b/hawkbit-rest/hawkbit-mgmt-resource/src/test/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtTargetTypeResourceTest.java @@ -59,14 +59,15 @@ import org.springframework.test.web.servlet.ResultActions; @Story("Target Type Resource") class MgmtTargetTypeResourceTest extends AbstractManagementApiIntegrationTest { - private final static String TARGETTYPES_ENDPOINT = MgmtRestConstants.TARGETTYPE_V1_REQUEST_MAPPING; - private final static String TARGETTYPE_SINGLE_ENDPOINT = MgmtRestConstants.TARGETTYPE_V1_REQUEST_MAPPING + private static final String TARGETTYPES_ENDPOINT = MgmtRestConstants.TARGETTYPE_V1_REQUEST_MAPPING; + private static final String TARGETTYPE_SINGLE_ENDPOINT = MgmtRestConstants.TARGETTYPE_V1_REQUEST_MAPPING + "/{typeid}"; - private final static String TARGETTYPE_DSTYPES_ENDPOINT = TARGETTYPE_SINGLE_ENDPOINT + "/" + private static final String TARGETTYPE_DSTYPES_ENDPOINT = TARGETTYPE_SINGLE_ENDPOINT + "/" + MgmtRestConstants.TARGETTYPE_V1_DS_TYPES; - private final static String TARGETTYPE_DSTYPE_SINGLE_ENDPOINT = TARGETTYPE_DSTYPES_ENDPOINT + "/{dstypeid}"; + private static final String TARGETTYPE_DSTYPE_SINGLE_ENDPOINT = TARGETTYPE_DSTYPES_ENDPOINT + "/{dstypeid}"; - private final static String TEST_USER = "targetTypeTester"; + private static final String TEST_USER = "targetTypeTester"; + private static final String SPACE_AND_DESCRIPTION = " description"; @Test @WithUser(principal = "targetTypeTester", allSpPermissions = true, removeFromAllPermission = { SpPermission.READ_TARGET }) @@ -89,7 +90,7 @@ class MgmtTargetTypeResourceTest extends AbstractManagementApiIntegrationTest { .andExpect(content().contentType(MediaType.APPLICATION_JSON_VALUE)) .andExpect(jsonPath("$.id", is(typeId), Long.class)).andExpect(jsonPath("$.name", equalTo(typeName))) .andExpect(jsonPath("$.colour", is("#000000"))) - .andExpect(jsonPath("$.description", equalTo(typeName + " description"))) + .andExpect(jsonPath("$.description", equalTo(typeName + SPACE_AND_DESCRIPTION))) .andExpect(jsonPath("$.createdBy", equalTo(TEST_USER))) .andExpect(jsonPath("$.createdAt", equalTo(testType.getCreatedAt()))) .andExpect(jsonPath("$.lastModifiedBy", equalTo(TEST_USER))) @@ -119,7 +120,7 @@ class MgmtTargetTypeResourceTest extends AbstractManagementApiIntegrationTest { .andExpect(jsonPath("$.content.[?(@.id=='" + typeId + "')].name", contains(typeName + index))) .andExpect(jsonPath("$.content.[?(@.id=='" + typeId + "')].colour", contains("#000000"))) .andExpect(jsonPath("$.content.[?(@.id=='" + typeId + "')].description", - contains(typeName + " description"))) + contains(typeName + SPACE_AND_DESCRIPTION))) .andExpect(jsonPath("$.content.[?(@.id=='" + typeId + "')].createdBy", contains(TEST_USER))) .andExpect(jsonPath("$.content.[?(@.id=='" + typeId + "')].createdAt", contains(testTypes.get(index).getCreatedAt()))) @@ -171,7 +172,7 @@ class MgmtTargetTypeResourceTest extends AbstractManagementApiIntegrationTest { .andExpect(jsonPath("$.content.[0].id", equalTo(testTypeC.getId().intValue()))) .andExpect(jsonPath("$.content.[0].name", equalTo(typeNameC))) .andExpect(jsonPath("$.content.[0].colour", equalTo("#000000"))) - .andExpect(jsonPath("$.content.[0].description", equalTo(typeNameC + " description"))) + .andExpect(jsonPath("$.content.[0].description", equalTo(typeNameC + SPACE_AND_DESCRIPTION))) .andExpect(jsonPath("$.content.[0].createdBy", equalTo(TEST_USER))) .andExpect(jsonPath("$.content.[0].createdAt", equalTo(testTypeC.getCreatedAt()))) .andExpect(jsonPath("$.content.[0].lastModifiedBy", equalTo(TEST_USER)))