diff --git a/src/main/java/com/systelab/seed/BaseException.java b/src/main/java/com/systelab/seed/BaseException.java index 2e08a16..81a0b9f 100644 --- a/src/main/java/com/systelab/seed/BaseException.java +++ b/src/main/java/com/systelab/seed/BaseException.java @@ -1,5 +1,8 @@ package com.systelab.seed; +import lombok.AllArgsConstructor; +import lombok.Getter; + /** * SeedException wraps all checked standard Java exception and enriches them with a custom error code. * You can use this code to retrieve localized error messages and to link to our online documentation. @@ -9,6 +12,8 @@ public class BaseException extends Exception { private static final long serialVersionUID = 3714428835173293220L; private final ErrorCode errorCode; + @AllArgsConstructor + @Getter public enum ErrorCode { ALLERGY_ALREADY_EXIST(5), ALLERGY_NOT_FOUND(4), @@ -16,11 +21,7 @@ public enum ErrorCode { USER_NOT_FOUND(2), DEFAULT_ERROR(1); - private final int errorCode; - - ErrorCode(int errorCode) { - this.errorCode = errorCode; - } + private final int code; } public BaseException(ErrorCode code) { @@ -33,16 +34,6 @@ public BaseException(String message, Throwable cause, ErrorCode code) { this.errorCode = code; } - public BaseException(String message, ErrorCode code) { - super(message); - this.errorCode = code; - } - - public BaseException(Throwable cause, ErrorCode code) { - super(cause); - this.errorCode = code; - } - public ErrorCode getCode() { return this.errorCode; } diff --git a/src/main/java/com/systelab/seed/allergy/entity/Allergy.java b/src/main/java/com/systelab/seed/allergy/entity/Allergy.java index 3b1c915..9a91edc 100644 --- a/src/main/java/com/systelab/seed/allergy/entity/Allergy.java +++ b/src/main/java/com/systelab/seed/allergy/entity/Allergy.java @@ -7,7 +7,6 @@ import lombok.NoArgsConstructor; import javax.persistence.Entity; -import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.Table; import javax.validation.constraints.NotNull; @@ -20,8 +19,8 @@ @NoArgsConstructor @AllArgsConstructor @Table(name = "allergy") -@NamedQueries({@NamedQuery(name = com.systelab.seed.allergy.entity.Allergy.FIND_ALL, query = "SELECT a FROM Allergy a ORDER BY a.name"), - @NamedQuery(name = com.systelab.seed.allergy.entity.Allergy.ALL_COUNT, query = "SELECT COUNT(a.id) FROM Allergy a")}) +@NamedQuery(name = com.systelab.seed.allergy.entity.Allergy.FIND_ALL, query = "SELECT a FROM Allergy a ORDER BY a.name") +@NamedQuery(name = com.systelab.seed.allergy.entity.Allergy.ALL_COUNT, query = "SELECT COUNT(a.id) FROM Allergy a") public class Allergy extends BaseEntity { public static final String FIND_ALL = "Allergy.findAll"; public static final String ALL_COUNT = "Allergy.allCount"; diff --git a/src/main/java/com/systelab/seed/infrastructure/auth/TokenAuthenticationFilter.java b/src/main/java/com/systelab/seed/infrastructure/auth/TokenAuthenticationFilter.java index ce3fdb1..061b0b1 100644 --- a/src/main/java/com/systelab/seed/infrastructure/auth/TokenAuthenticationFilter.java +++ b/src/main/java/com/systelab/seed/infrastructure/auth/TokenAuthenticationFilter.java @@ -40,7 +40,9 @@ public class TokenAuthenticationFilter implements ContainerRequestFilter { public void filter(ContainerRequestContext requestContext) { try { - logger.info(requestContext.getUriInfo().getRequestUri().toString()); + if (logger.isInfoEnabled()){ + logger.info(requestContext.getUriInfo().getRequestUri().toString()); + } String userRole = tokenGenerator.getRoleFromToken(getTokenFromHeader(requestContext)); if (!methodIsAllowed(resourceInfo.getResourceMethod(), userRole)) { requestContext.abortWith(Response.status(Response.Status.UNAUTHORIZED).build()); diff --git a/src/main/java/com/systelab/seed/infrastructure/security/RequestRateLimiterFilter.java b/src/main/java/com/systelab/seed/infrastructure/security/RequestRateLimiterFilter.java index 203102c..3802f8b 100644 --- a/src/main/java/com/systelab/seed/infrastructure/security/RequestRateLimiterFilter.java +++ b/src/main/java/com/systelab/seed/infrastructure/security/RequestRateLimiterFilter.java @@ -77,7 +77,7 @@ private AtomicRateLimiter getLimiter(String key) { private void logLimitExceeded(UriInfo uriInfo, String byAddress) { String path = uriInfo.getAbsolutePath().getPath(); - logger.warn("Overloaded {0} request {1}; discarding it", new Object[]{byAddress, path}); + logger.warn("Overloaded {} request {}; discarding it", byAddress, path); } private String getRateExceededMessage(AtomicRateLimiter rateLimiter) { diff --git a/src/main/java/com/systelab/seed/infrastructure/security/implementation/SHA256PasswordDigest.java b/src/main/java/com/systelab/seed/infrastructure/security/implementation/SHA256PasswordDigest.java index bda5f00..6496a0a 100644 --- a/src/main/java/com/systelab/seed/infrastructure/security/implementation/SHA256PasswordDigest.java +++ b/src/main/java/com/systelab/seed/infrastructure/security/implementation/SHA256PasswordDigest.java @@ -3,27 +3,22 @@ import com.systelab.seed.BaseException; import com.systelab.seed.infrastructure.security.PasswordDigest; -import java.io.UnsupportedEncodingException; +import java.nio.charset.StandardCharsets; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.util.Base64; -import javax.inject.Inject; -import org.slf4j.Logger; public class SHA256PasswordDigest implements PasswordDigest { - @Inject - private Logger logger; @Override public String digest(String plainTextPassword) throws BaseException { try { MessageDigest md = MessageDigest.getInstance("SHA-256"); - md.update(plainTextPassword.getBytes("UTF-8")); + md.update(plainTextPassword.getBytes(StandardCharsets.UTF_8)); byte[] passwordDigest = md.digest(); return new String(Base64.getEncoder().encode(passwordDigest)); - } catch (NoSuchAlgorithmException | UnsupportedEncodingException e) { - logger.error(e.getMessage(), e); + } catch (NoSuchAlgorithmException e) { throw new BaseException("Incorrect algorithm implementation", e, BaseException.ErrorCode.DEFAULT_ERROR); } } diff --git a/src/main/java/com/systelab/seed/patient/boundary/bean/DeleteOldPatientsTimerBean.java b/src/main/java/com/systelab/seed/patient/boundary/bean/DeleteOldPatientsTimerBean.java index 021d89f..418dcf6 100644 --- a/src/main/java/com/systelab/seed/patient/boundary/bean/DeleteOldPatientsTimerBean.java +++ b/src/main/java/com/systelab/seed/patient/boundary/bean/DeleteOldPatientsTimerBean.java @@ -20,7 +20,7 @@ public class DeleteOldPatientsTimerBean { private Logger logger; @Inject - PatientMaintenanceServiceHealthCheck healthCheck; + private PatientMaintenanceServiceHealthCheck healthCheck; @EJB private PatientService patientService; @@ -54,7 +54,7 @@ private void createTimer() { } private void cancelAnyRunningTimer() { - timerService.getTimers().stream().forEach((timer) -> { + timerService.getTimers().stream().forEach(timer -> { logger.info("Found running timer with info: {}, cancelling it", timer.getInfo()); timer.cancel(); }); diff --git a/src/main/java/com/systelab/seed/patient/boundary/health/PatientMaintenanceServiceHealthCheck.java b/src/main/java/com/systelab/seed/patient/boundary/health/PatientMaintenanceServiceHealthCheck.java index e0336bf..a306b4c 100644 --- a/src/main/java/com/systelab/seed/patient/boundary/health/PatientMaintenanceServiceHealthCheck.java +++ b/src/main/java/com/systelab/seed/patient/boundary/health/PatientMaintenanceServiceHealthCheck.java @@ -23,11 +23,11 @@ public HealthCheckResponse call() { return working ? builder.up().build() : builder.down().build(); } - public void setWorking(boolean working) { - this.working = working; + public synchronized void setWorking(boolean working) { + PatientMaintenanceServiceHealthCheck.working = working; } - public void setLastExecution(LocalDateTime lastExecution) { - this.lastExecution = lastExecution; + public synchronized void setLastExecution(LocalDateTime lastExecution) { + PatientMaintenanceServiceHealthCheck.lastExecution = lastExecution; } } \ No newline at end of file diff --git a/src/main/java/com/systelab/seed/patient/control/BodyMassIndexCalculator.java b/src/main/java/com/systelab/seed/patient/control/BodyMassIndexCalculator.java index 91034f4..3956fbf 100644 --- a/src/main/java/com/systelab/seed/patient/control/BodyMassIndexCalculator.java +++ b/src/main/java/com/systelab/seed/patient/control/BodyMassIndexCalculator.java @@ -2,6 +2,10 @@ public class BodyMassIndexCalculator { + private BodyMassIndexCalculator() + { + } + private static boolean isValidWeight(Double value) { return value != null && Double.isFinite(value) && value > 1; } diff --git a/src/main/java/com/systelab/seed/patient/control/MedicalRecordNumberService.java b/src/main/java/com/systelab/seed/patient/control/MedicalRecordNumberService.java index 8c4977f..43d6d88 100644 --- a/src/main/java/com/systelab/seed/patient/control/MedicalRecordNumberService.java +++ b/src/main/java/com/systelab/seed/patient/control/MedicalRecordNumberService.java @@ -12,11 +12,13 @@ interface IdentityClient { @RequestLine("GET /identity/v1/medical-record-number") - public String getMedicalRecordNumber(); + String getMedicalRecordNumber(); } public class MedicalRecordNumberService { + private static final String UNDEFINED = "UNDEFINED"; + @Inject private Logger logger; @@ -26,14 +28,15 @@ public class MedicalRecordNumberService { public String getMedicalRecordNumber() { - logger.info(String.format("medicalRecordNumberServiceUrl: %s", medicalRecordNumberServiceUrl)); - + if (logger.isInfoEnabled()){ + logger.info(String.format("medicalRecordNumberServiceUrl: %s", medicalRecordNumberServiceUrl)); + } IdentityClient client = HystrixFeign.builder().target(IdentityClient.class, medicalRecordNumberServiceUrl, MedicalRecordNumberService::defaultMedicalRecordNumber); return client.getMedicalRecordNumber(); } private static String defaultMedicalRecordNumber() { - return "UNDEFINED"; + return UNDEFINED; } } \ No newline at end of file diff --git a/src/main/java/com/systelab/seed/patient/control/PatientWorkbookGenerator.java b/src/main/java/com/systelab/seed/patient/control/PatientWorkbookGenerator.java index feaad16..e3c96be 100644 --- a/src/main/java/com/systelab/seed/patient/control/PatientWorkbookGenerator.java +++ b/src/main/java/com/systelab/seed/patient/control/PatientWorkbookGenerator.java @@ -25,7 +25,7 @@ private void addPatientToWorkBook(Sheet sheet, int rowIndex, Patient patient) { Row row = sheet.createRow(rowIndex); createCell(row, colNum++, patient.getName()); createCell(row, colNum++, patient.getSurname()); - createCell(row, colNum++, patient.getEmail()); + createCell(row, colNum, patient.getEmail()); } private void createCell(Row row, int colIndex, String value) { diff --git a/src/main/java/com/systelab/seed/patient/control/RealtimePatientTracking.java b/src/main/java/com/systelab/seed/patient/control/RealtimePatientTracking.java index 833bead..d8ae209 100644 --- a/src/main/java/com/systelab/seed/patient/control/RealtimePatientTracking.java +++ b/src/main/java/com/systelab/seed/patient/control/RealtimePatientTracking.java @@ -51,7 +51,7 @@ public void onPatientCreated(@Observes @PatientCreated Patient patient) { try (JsonGenerator generator = Json.createGenerator(writer)) { generator.writeStartObject().write("patientid", patient.getId().toString()).write("patientname", patient.getName()).writeEnd(); } - sessions.forEach((session) -> sendMessageToSession(session, writer.toString())); + sessions.forEach(session -> sendMessageToSession(session, writer.toString())); } private void sendMessageToSession(Session session, String json) { diff --git a/src/main/java/com/systelab/seed/patient/entity/Patient.java b/src/main/java/com/systelab/seed/patient/entity/Patient.java index 8105525..774ffbb 100644 --- a/src/main/java/com/systelab/seed/patient/entity/Patient.java +++ b/src/main/java/com/systelab/seed/patient/entity/Patient.java @@ -30,9 +30,9 @@ @NoArgsConstructor @AllArgsConstructor @Table(name = "patient") -@NamedQueries({@NamedQuery(name = Patient.FIND_ALL, query = "SELECT p FROM Patient p ORDER BY p.surname"), - @NamedQuery(name = Patient.ALL_COUNT, query = "SELECT COUNT(p.id) FROM Patient p"), - @NamedQuery(name = Patient.DEACTIVATE, query = "UPDATE Patient p SET p.active = FALSE WHERE p.modificationTime < :modificationTime")}) +@NamedQuery(name = Patient.FIND_ALL, query = "SELECT p FROM Patient p ORDER BY p.surname") +@NamedQuery(name = Patient.ALL_COUNT, query = "SELECT COUNT(p.id) FROM Patient p") +@NamedQuery(name = Patient.DEACTIVATE, query = "UPDATE Patient p SET p.active = FALSE WHERE p.modificationTime < :modificationTime") public class Patient extends BaseEntity { public static final String FIND_ALL = "Patient.findAll"; public static final String ALL_COUNT = "Patient.allCount"; diff --git a/src/main/java/com/systelab/seed/patientallergy/boundary/PatientAllergyResource.java b/src/main/java/com/systelab/seed/patientallergy/boundary/PatientAllergyResource.java index c8f934e..7ac5288 100644 --- a/src/main/java/com/systelab/seed/patientallergy/boundary/PatientAllergyResource.java +++ b/src/main/java/com/systelab/seed/patientallergy/boundary/PatientAllergyResource.java @@ -74,10 +74,7 @@ public Response addAllergyToPatient(@PathParam("uid") String uid, @RequestBody(d } catch (PatientNotFoundException ex) { logger.error(PatientAllergyResource.INVALID_PATIENT_ERROR_MESSAGE, ex); return Response.status(Status.NOT_FOUND).build(); - } catch (AllergyNotFoundException ex) { - logger.error(PatientAllergyResource.INVALID_ALLERGY_ERROR_MESSAGE, ex); - return Response.status(Status.NOT_FOUND).build(); - } catch (AllergyAlreadyExistException ex) { + } catch (AllergyNotFoundException | AllergyAlreadyExistException ex) { logger.error(PatientAllergyResource.INVALID_ALLERGY_ERROR_MESSAGE, ex); return Response.status(Status.NOT_FOUND).build(); } diff --git a/src/main/java/com/systelab/seed/user/entity/User.java b/src/main/java/com/systelab/seed/user/entity/User.java index 8d7c063..a87cd0d 100644 --- a/src/main/java/com/systelab/seed/user/entity/User.java +++ b/src/main/java/com/systelab/seed/user/entity/User.java @@ -16,9 +16,9 @@ @EqualsAndHashCode(callSuper = true) @AllArgsConstructor @Table(name = "SeedUser") -@NamedQueries({@NamedQuery(name = User.FIND_ALL, query = "SELECT u FROM User u ORDER BY u.surname DESC"), @NamedQuery(name = User.FIND_BY_LOGIN_PASSWORD, query = "SELECT u FROM User u WHERE u.login = :login AND u.password = :password"), - @NamedQuery(name = User.ALL_COUNT, query = "SELECT COUNT(u.id) FROM User u")}) - +@NamedQuery(name = User.FIND_ALL, query = "SELECT u FROM User u ORDER BY u.surname DESC") +@NamedQuery(name = User.FIND_BY_LOGIN_PASSWORD, query = "SELECT u FROM User u WHERE u.login = :login AND u.password = :password") +@NamedQuery(name = User.ALL_COUNT, query = "SELECT COUNT(u.id) FROM User u") @XmlRootElement public class User extends BaseEntity { public static final String FIND_ALL = "User.findAll"; diff --git a/src/main/webapp/swagger/oauth2-redirect.html b/src/main/webapp/swagger/oauth2-redirect.html index fb68399..d9520cc 100755 --- a/src/main/webapp/swagger/oauth2-redirect.html +++ b/src/main/webapp/swagger/oauth2-redirect.html @@ -1,5 +1,8 @@ + + OAUTH redirect + diff --git a/src/test/java/com/systelab/seed/RESTResourceTest.java b/src/test/java/com/systelab/seed/RESTResourceTest.java index bb0f03a..acb5158 100644 --- a/src/test/java/com/systelab/seed/RESTResourceTest.java +++ b/src/test/java/com/systelab/seed/RESTResourceTest.java @@ -11,7 +11,7 @@ import static io.restassured.RestAssured.given; -public class RESTResourceTest { +public abstract class RESTResourceTest { protected static final String AUTHORIZATION_HEADER = "Authorization"; diff --git a/src/test/java/com/systelab/seed/allergy/AllergyResourceTest.java b/src/test/java/com/systelab/seed/allergy/AllergyResourceTest.java index 15a50be..ecd1e76 100644 --- a/src/test/java/com/systelab/seed/allergy/AllergyResourceTest.java +++ b/src/test/java/com/systelab/seed/allergy/AllergyResourceTest.java @@ -19,7 +19,7 @@ @TmsLink("TC0002_AllergyManagement_IntegrationTest") @Feature("Allergy Test Suite.\n\nGoal:\nThe goal of this TC is to verify that the Allergies management actions (CRUD) behave as expected according the specifications and the input values.\n\nEnvironment:\n...\nPreconditions:\nN/A.") -public class AllergyResourceTest extends RESTResourceTest { +class AllergyResourceTest extends RESTResourceTest { private Response doCreateAllergy(Allergy allergy){ return given().body(allergy).when().post("/allergies/allergy"); @@ -61,7 +61,7 @@ private void checkAllergyData(Allergy expected, Allergy actual){ @Description("Create a new allergy with name, sign and symptoms") @Test - public void testCreateAllergy() { + void testCreateAllergy() { String expectedName = "Tree pollen"; String expectedSigns = "Watering eyes"; @@ -75,7 +75,7 @@ public void testCreateAllergy() { @Description("Create a new allergy with all information") @Test - public void testCreateAllergyAllInfo() { + void testCreateAllergyAllInfo() { String expectedName = "Tree pollen"; String expectedSigns = "Watering eyes"; String expectedSymptoms = "Sneezing"; @@ -98,7 +98,7 @@ private void testCreateInvalidAllergy(Allergy allergy) { @Description("Create a Allergy with invalid data: mandatory fields empty (name, signs)") @Test - public void testCreateInvalidAllergyMandatoryFieldsEmpty() { + void testCreateInvalidAllergyMandatoryFieldsEmpty() { testCreateInvalidAllergy(getAllergyData("", "", "Sneezing")); testCreateInvalidAllergy(getAllergyData("", "Sneezing", "Sneezing")); testCreateInvalidAllergy(getAllergyData("Pollen", "", "Sneezing")); @@ -106,7 +106,7 @@ public void testCreateInvalidAllergyMandatoryFieldsEmpty() { @Description("Create a Allergy with invalid data: name, signs or symptoms field too long") @Test - public void testCreateInvalidAllergyTooLongText() { + void testCreateInvalidAllergyTooLongText() { String tooLongString = "thisStringIsIntendedToCauseAnExceptionBecauseOfItsExcessiveLengthTheMostLongStringAllowedMustHaveLessThanTeoHundredAndFiftyFiveCharactersThisShouldBeVerifiedInEveryTextFieldToEnsureTheLimitationIsWorkingProperlyThisStringOnlyHasEnglishLettersButMoreScenarios"; testCreateInvalidAllergy(getAllergyData(tooLongString, "Watering eyes", "Sneezing")); testCreateInvalidAllergy(getAllergyData("Tree pollen", tooLongString, "Sneezing")); @@ -134,7 +134,7 @@ private void createSomeAllergies(int numberOfAllergies) { @Description("Get a list of allergies") @Test - public void testGetAllergyList() { + void testGetAllergyList() { int numberOfAllergies = 5; Response responseBefore = doGetAllergyList(); @@ -156,7 +156,7 @@ public void testGetAllergyList() { @Description("Get a Allergy by id") @Test - public void testGetAllergy() { + void testGetAllergy() { Allergy allergy = getAllergyData("Tree pollen", "Watering eyes", "Dry, red and cracked skin"); Response responseCre = doCreateAllergy(allergy); Allergy allergyCreated = responseCre.then().assertThat().statusCode(200) @@ -174,7 +174,7 @@ public void testGetAllergy() { @Description("Get a allergy with an non-existing id") @Test - public void testGetUnexistingAllergy() { + void testGetUnexistingAllergy() { int statusCode = given() .when().get("/allergies/38400000-8cf0-11bd-b23e-10b96e4ef00d") .then() @@ -184,7 +184,7 @@ public void testGetUnexistingAllergy() { @Description("Delete a allergy by id") @Test - public void testDeleteAllergy() { + void testDeleteAllergy() { Allergy allergy = getAllergyData("Tree pollen", "Watering eyes", "Dry, red and cracked skin"); Response responseCre = doCreateAllergy(allergy); Allergy allergyCreated = responseCre.then().assertThat().statusCode(200) @@ -205,7 +205,7 @@ public void testDeleteAllergy() { @Description("Delete non-existing Allergy") @Test - public void testDeleteUnexistingAllergy() { + void testDeleteUnexistingAllergy() { int statusCode = given() .when().delete("/allergies/38400000-8cf0-11bd-b23e-10b96e4ef00d") .then() @@ -215,7 +215,7 @@ public void testDeleteUnexistingAllergy() { @Description("Update a allergy by id") @Test - public void testUpdateAllergy() { + void testUpdateAllergy() { Allergy allergy = getAllergyData("Tree pollen", "Watering eyes", "Dry, red and cracked skin"); Response responseCre = doCreateAllergy(allergy); Allergy allergyCreated = responseCre.then().assertThat().statusCode(200) @@ -234,7 +234,7 @@ public void testUpdateAllergy() { @Description("Update non-existent allergy, that is Create new Allergy") @Test - public void testUpdateUnexistingAllergy() { + void testUpdateUnexistingAllergy() { Allergy allergy = getAllergyData("Tree pollen", "Watering eyes", "Dry, red and cracked skin"); Allergy allergyCreated = given().body(allergy) .when().put("/allergies/38400000-8cf0-11bd-b23e-10b96e4ef00d") diff --git a/src/test/java/com/systelab/seed/infraestructure/auth/TokenGeneratorTest.java b/src/test/java/com/systelab/seed/infraestructure/auth/TokenGeneratorTest.java index d3ba72c..8b73f5c 100644 --- a/src/test/java/com/systelab/seed/infraestructure/auth/TokenGeneratorTest.java +++ b/src/test/java/com/systelab/seed/infraestructure/auth/TokenGeneratorTest.java @@ -2,6 +2,8 @@ import com.systelab.seed.infrastructure.auth.implementation.JWTAuthenticationTokenGenerator; import io.jsonwebtoken.MalformedJwtException; +import lombok.SneakyThrows; + import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -12,7 +14,7 @@ /** * Unit Test Class to check the expected behavior for {@link JWTAuthenticationTokenGenerator} */ -public class TokenGeneratorTest { +class TokenGeneratorTest { private JWTAuthenticationTokenGenerator jwtTokenGenerator; @@ -22,32 +24,33 @@ public void initialize() { } @Test - public void whenKeyIsGeneratedThenAlgorithmIsDES() { + void whenKeyIsGeneratedThenAlgorithmIsDES() { Key key = jwtTokenGenerator.generateKey(); Assertions.assertEquals("DES", key.getAlgorithm(), "Unexpected Key SignAlgorithm"); } @Test - public void whenKeyIsGeneratedThenFormatIsDES() { + void whenKeyIsGeneratedThenFormatIsDES() { Key key = jwtTokenGenerator.generateKey(); Assertions.assertEquals("RAW", key.getFormat(), "Unexpected Key Format"); } @Test - public void givenARandomTokenWhenIsInvalidThenExceptionThrown() { + void givenARandomTokenWhenIsInvalidThenExceptionThrown() { + String token = generateRandomToken(); Assertions.assertThrows(MalformedJwtException.class, () -> { - jwtTokenGenerator.getRoleFromToken(generateRandomToken()); + jwtTokenGenerator.getRoleFromToken(token); }); } @Test - public void givenUserRoleUriWhenIsValidThenExceptionThrown() { + void givenUserRoleUriWhenIsValidThenExceptionThrown() { String token = jwtTokenGenerator.issueToken("Systelab", "ADMIN", "http://127.0.0.1:13080/seed/v1/"); Assertions.assertNotNull(token); } @Test - public void givenUserRoleUriWhenTokenGeneratedThenValidated() throws Exception { + void givenUserRoleUriWhenTokenGeneratedThenValidated() throws Exception { String token = jwtTokenGenerator.issueToken("Systelab", "ADMIN", "http://127.0.0.1:13080/seed/v1/"); String role = jwtTokenGenerator.getRoleFromToken(token); @@ -55,7 +58,7 @@ public void givenUserRoleUriWhenTokenGeneratedThenValidated() throws Exception { } @Test - public void givenIncorrectDataWhenTokenGeneratedThenValidated() throws Exception { + void givenIncorrectDataWhenTokenGeneratedThenValidated() throws Exception { String token = jwtTokenGenerator.issueToken("Systelab", "USER", "http://127.0.0.1:13080/seed/v1/"); String role = jwtTokenGenerator.getRoleFromToken(token); diff --git a/src/test/java/com/systelab/seed/patient/PatientResourceTest.java b/src/test/java/com/systelab/seed/patient/PatientResourceTest.java index f661d35..0623482 100644 --- a/src/test/java/com/systelab/seed/patient/PatientResourceTest.java +++ b/src/test/java/com/systelab/seed/patient/PatientResourceTest.java @@ -19,7 +19,7 @@ @TmsLink("TC0001_PatientManagement_IntegrationTest") @Feature("Patient Test Suite.\n\nGoal:\nThe goal of this TC is to verify that the Patient management actions (CRUD) behave as expected according the specifications and the input values.\n\nEnvironment:\n...\nPreconditions:\nN/A.") -public class PatientResourceTest extends RESTResourceTest { +class PatientResourceTest extends RESTResourceTest { private Response doCreatePatient(Patient patient){ return given().body(patient).when().post("/patients/patient"); } @@ -72,7 +72,7 @@ private void checkPatientData(Patient expected, Patient actual){ @Description("Create a new patient with name, surname, email and medical number") @Test - public void testCreatePatient() { + void testCreatePatient() { String expectedName = "John"; String expectedSurname = "Burrows"; String expectedEmail = "jburrows@werfen.com"; @@ -93,7 +93,7 @@ public void testCreatePatient() { @Description("Create a new patient with name, surname, email, medical number, dob, and complete address") @Test - public void testCreatePatientWithAllInfo() { + void testCreatePatientWithAllInfo() { String expectedName = "Jane"; String expectedSurname = "Senfield"; String expectedEmail = "jsenfield@example.com"; @@ -122,7 +122,7 @@ private void testCreateInvalidPatient(Patient patient) { @Description("Create a Patient with invalid data: mandatory fields empty (name, surname)") @Test - public void testCreateInvalidPatientMandatoryFieldsEmpty() { + void testCreateInvalidPatientMandatoryFieldsEmpty() { testCreateInvalidPatient(getPatientData("", "", "", "", null, null,null,null)); testCreateInvalidPatient(getPatientData("", "Jameson", "jj@.", "333",null, null,null,null)); testCreateInvalidPatient(getPatientData("John", "", "jburrows@test,com", "222",null, null,null,null)); @@ -130,7 +130,7 @@ public void testCreateInvalidPatientMandatoryFieldsEmpty() { @Description("Create a Patient with invalid data: email format") @Test - public void testCreateInvalidPatientEmailFormat() { + void testCreateInvalidPatientEmailFormat() { testCreateInvalidPatient(getPatientData("John", "Jameson", "@test.com", "222",null, null,null,null)); testCreateInvalidPatient(getPatientData("John", "Jameson", "user@", "222",null, null,null,null)); testCreateInvalidPatient(getPatientData("John", "Jameson", "@.com", "222",null, null,null,null)); @@ -141,7 +141,7 @@ public void testCreateInvalidPatientEmailFormat() { @Description("Create a Patient with invalid data: name, surname or medicalNumber field too long") @Test - public void testCreateInvalidPatientTooLongText() { + void testCreateInvalidPatientTooLongText() { String tooLongString = "thisStringIsIntendedToCauseAnExceptionBecauseOfItsExcessiveLengthTheMostLongStringAllowedMustHaveLessThanTeoHundredAndFiftyFiveCharactersThisShouldBeVerifiedInEveryTextFieldToEnsureTheLimitationIsWorkingProperlyThisStringOnlyHasEnglishLettersButMoreScenarios"; testCreateInvalidPatient(getPatientData(tooLongString, "Jameson", "jj@test.com", "123",null, null,null,null)); @@ -168,7 +168,7 @@ private void createSomePatients(int numberOfPatients) { @Description("Get a list of patients") @Test - public void testGetPatientList() { + void testGetPatientList() { int numberOfPatients = 5; @@ -191,7 +191,7 @@ public void testGetPatientList() { @Description("Get a Patient by id") @Test - public void testGetPatient() { + void testGetPatient() { Patient patient = getPatientData("John", "Burrows", "jburrows@werfen.com","123456", null,null,null, null); Response responseCre = doCreatePatient(patient); @@ -210,7 +210,7 @@ public void testGetPatient() { @Description("Get an invalid Excel file with patients") @Test - public void testGetPatientsInvalidExcel() { + void testGetPatientsInvalidExcel() { Response response = given().when().get("/patients/report"); int status = response.then().extract().statusCode(); TestUtil.checkField("Status Code", 500, status); @@ -218,7 +218,7 @@ public void testGetPatientsInvalidExcel() { @Description("Get an Excel file with patients") @Test - public void testGetPatientsExcel() { + void testGetPatientsExcel() { Response response = given().accept("*/*") .when().get("/patients/report"); int status = response.then().extract().statusCode(); @@ -233,7 +233,7 @@ public void testGetPatientsExcel() { @Description("Get a patient with an non-existing id") @Test - public void testGetUnexistingPatient() { + void testGetUnexistingPatient() { int statusCode = given() .when().get("/patients/38400000-8cf0-11bd-b23e-10b96e4ef00d") .then() @@ -243,7 +243,7 @@ public void testGetUnexistingPatient() { @Description("Delete a patient by id") @Test - public void testDeletePatient() { + void testDeletePatient() { Patient patient = getPatientData("John", "Burrows", "jburrows@werfen.com", null,null, null,null,null); Response response = doCreatePatient(patient); @@ -265,7 +265,7 @@ public void testDeletePatient() { @Description("Delete non-existing Patient") @Test - public void testDeleteUnexistingPatient() { + void testDeleteUnexistingPatient() { int statusCode = given() .when().delete("/patients/38400000-8cf0-11bd-b23e-10b96e4ef00d") .then() @@ -275,7 +275,7 @@ public void testDeleteUnexistingPatient() { @Description("Update a patient by id") @Test - public void testUpdatePatient() + void testUpdatePatient() { Patient patient = getPatientData("John", "Burrows", "jburrows@werfen.com", null,null, null,null,null); Response response = doCreatePatient(patient); @@ -294,7 +294,7 @@ public void testUpdatePatient() @Description("Update non-existent patient, that is Create new Patient") @Test - public void testUpdateUnexistingPatient() + void testUpdateUnexistingPatient() { Patient patient = getPatientData("John", "Burrows", "jburrows@werfen.com",null,null, null,null,null); Patient patientCreated = given().body(patient) diff --git a/src/test/java/com/systelab/seed/patient/control/BodyMassIndexCalculatorTest.java b/src/test/java/com/systelab/seed/patient/control/BodyMassIndexCalculatorTest.java index 93a2522..c8f0b21 100644 --- a/src/test/java/com/systelab/seed/patient/control/BodyMassIndexCalculatorTest.java +++ b/src/test/java/com/systelab/seed/patient/control/BodyMassIndexCalculatorTest.java @@ -9,7 +9,7 @@ import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvFileSource; -public class BodyMassIndexCalculatorTest { +class BodyMassIndexCalculatorTest { @Step("Action: Calculate the BMI with a weight of {0} kg and a height of {1} meters") public void printScenario(Double weight, Double height) { @@ -19,7 +19,7 @@ public void printScenario(Double weight, Double height) { @Feature("Goal: This test case is intended to verify the correct calculation of the Body Mass Index") @ParameterizedTest @CsvFileSource(resources = "/bodyMassIndexCalculator.csv") - public void checkBMICalculationForCorrectValuesTest(Double weight, Double height, String expectedResultStr) { + void checkBMICalculationForCorrectValuesTest(Double weight, Double height, String expectedResultStr) { Double expectedResult = expectedResultStr.equals("null") ? null : Double.parseDouble(expectedResultStr); printScenario(weight, height); Double bmiCalculated = BodyMassIndexCalculator.getBMI(weight, height); @@ -32,10 +32,10 @@ public void checkBMICalculationForCorrectValuesTest(Double weight, Double height //This is an example of a Single Test in the same class with Parameterized Tests @TmsLink("TC1234_Formulas") @Feature("Goal: This test case is intended to verify the correct calculation of the Body Mass Index") - public static class ComponentSingleTests { + static class ComponentSingleTests { @Description("Calculate BMI") @Test - public void checkSingleCalculation() { + void checkSingleCalculation() { Double bmiCalculated = BodyMassIndexCalculator.getBMI(73.5, 1.786); TestUtil.checkField("BMI", 23.0, bmiCalculated); } diff --git a/src/test/java/com/systelab/seed/patientallergy/PatientAllergyResourceTest.java b/src/test/java/com/systelab/seed/patientallergy/PatientAllergyResourceTest.java index 9299732..be69f2d 100644 --- a/src/test/java/com/systelab/seed/patientallergy/PatientAllergyResourceTest.java +++ b/src/test/java/com/systelab/seed/patientallergy/PatientAllergyResourceTest.java @@ -21,7 +21,7 @@ @TmsLink("TC0003_PatientAllergyManagement_IntegrationTest") @Feature("Patient Allergy Test Suite.\n\nGoal:\nThe goal of this TC is to verify that the allergies for a patient management actions (CRUD) behave as expected according the specifications and the input values.\n\nEnvironment:\n...\nPreconditions:\nN/A.") -public class PatientAllergyResourceTest extends RESTResourceTest { +class PatientAllergyResourceTest extends RESTResourceTest { private Response doCreatePatient(Patient patient){ return given().body(patient).when().post("/patients/patient"); } @@ -95,7 +95,7 @@ private void checkPatientAllergyData(PatientAllergy expected, PatientAllergy act @Description("Get the allergies of a new patient") @Test - public void testGetTheAllergiesOfANewPatient() { + void testGetTheAllergiesOfANewPatient() { Patient patientCreated = createAPatient(); Response response = getPatientAllergies(patientCreated); @@ -106,7 +106,7 @@ public void testGetTheAllergiesOfANewPatient() { @Description("Add an allergy to a patient") @Test - public void testAddAnAllergyToAPatient() { + void testAddAnAllergyToAPatient() { Patient patientCreated = createAPatient(); Allergy allergyCreated = createAnAllergy(); @@ -122,7 +122,7 @@ public void testAddAnAllergyToAPatient() { @Description("Add an allergy to a patient without notes") @Test - public void testAddAnAllergyWithoutNotesToAPatient() { + void testAddAnAllergyWithoutNotesToAPatient() { Patient patientCreated = createAPatient(); Allergy allergyCreated = createAnAllergy(); @@ -135,7 +135,7 @@ public void testAddAnAllergyWithoutNotesToAPatient() { @Description("Add more than one allergy to a patient") @Test - public void testAddMoreThanOneAllergyToAPatient() { + void testAddMoreThanOneAllergyToAPatient() { Patient patientCreated = createAPatient(); Allergy allergyCreated1 = createAnAllergy(); @@ -157,7 +157,7 @@ public void testAddMoreThanOneAllergyToAPatient() { @Description("Add the same allergy twice") @Test - public void testAddAnAllergyTwiceToAPatient() { + void testAddAnAllergyTwiceToAPatient() { String noteToBeModified = "A second note"; Patient patientCreated = createAPatient(); Allergy allergyCreated = createAnAllergy(); @@ -174,7 +174,7 @@ public void testAddAnAllergyTwiceToAPatient() { @Description("Update an allergy from a patient") @Test - public void testUpdateAnAllergyToAPatient() { + void testUpdateAnAllergyToAPatient() { String noteToBeModified = "A second note"; Patient patientCreated = createAPatient(); Allergy allergyCreated = createAnAllergy(); @@ -196,7 +196,7 @@ public void testUpdateAnAllergyToAPatient() { @Description("Update an allergy to a new patient (Update is idempotent)") @Test - public void testAddAnAllergyToANewPatient() { + void testAddAnAllergyToANewPatient() { Patient patientCreated = createAPatient(); Allergy allergyCreated = createAnAllergy(); @@ -212,7 +212,7 @@ public void testAddAnAllergyToANewPatient() { @Description("Delete an allergy from a patient") @Test - public void testDeleteAnAllergyFromAPatient() { + void testDeleteAnAllergyFromAPatient() { Patient patientCreated = createAPatient(); Allergy allergyCreated = createAnAllergy(); @@ -229,7 +229,7 @@ public void testDeleteAnAllergyFromAPatient() { @Description("Delete an unexisting allergy from a patient") @Test - public void testDeleteAnUnexistingAllergyFromAPatient() { + void testDeleteAnUnexistingAllergyFromAPatient() { Patient patientCreated = createAPatient(); Allergy allergyCreated = createAnAllergy(); diff --git a/src/test/java/com/systelab/seed/user/UserResourceTest.java b/src/test/java/com/systelab/seed/user/UserResourceTest.java index 9f9ad53..fef30d0 100644 --- a/src/test/java/com/systelab/seed/user/UserResourceTest.java +++ b/src/test/java/com/systelab/seed/user/UserResourceTest.java @@ -29,7 +29,7 @@ @TmsLink("TC0002_LoginManagement_IntegrationTest") @Feature("User Test Suite.\n\nGoal:\nThis test case is intended to verify the correct ....\n\nEnvironment:\n...\nPreconditions:\nN/A.") -public class UserResourceTest extends RESTResourceTest { +class UserResourceTest extends RESTResourceTest { private static final Logger logger = LoggerFactory.getLogger(UserResourceTest.class.getName()); @@ -87,7 +87,7 @@ private void createSomeUsers(int numberOfUsers) { @Description("Get the User list") @Test - public void testGetUserList() { + void testGetUserList() { int numberOfUsers = 1; Response response = doGetUserList(); UsersPage users = response.then().assertThat().statusCode(200) @@ -108,7 +108,7 @@ public void testGetUserList() { @Description("Create a User with name, login and password") @Test - public void testCreateUser() { + void testCreateUser() { String expectedName = "test3"; String expectedSurname = "test3"; String expectedLogin = "test3"; @@ -130,7 +130,7 @@ public void testCreateUser() { @Description("Delete a User by id") @Test - public void testDeleteUser() { + void testDeleteUser() { String expectedName = "TestUserName2"; String expectedSurname = "TestUserSurname2"; String expectedLogin = "testUser2"; @@ -164,7 +164,7 @@ private void testCreateInvalidUser(User user) { @Description("Create a user with invalid data: empty mandatory fields (name, surname, login, password)") @Test - public void testCreateInvalidUserEmptyMandatoryFields() { + void testCreateInvalidUserEmptyMandatoryFields() { testCreateInvalidUser(getUserData("", "Jones", "jjones", "passJJones", "USER")); testCreateInvalidUser(getUserData("Jude", "", "jjones", "passJJones", "USER")); testCreateInvalidUser(getUserData("Jude", "Jones", "", "passJJones", "USER")); @@ -173,7 +173,7 @@ public void testCreateInvalidUserEmptyMandatoryFields() { @Description("Create a user with invalid data: text fields too long (name, surname, login, password)") @Test - public void testCreateInvalidUserTooLongText() { + void testCreateInvalidUserTooLongText() { String tooLongString = "thisStringIsIntendedToCauseAnExceptionBecauseOfItsExcessiveLengthTheMostLongStringAllowedMustHaveLessThanTeoHundredAndFiftyFiveCharactersThisShouldBeVerifiedInEveryTextFieldToEnsureTheLimitationIsWorkingProperlyThisStringOnlyHasEnglishLettersButMoreScenarios"; String tooLongLogin = "12345678901"; @@ -185,7 +185,7 @@ public void testCreateInvalidUserTooLongText() { @Description("Get User by id") @Test - public void testGetUser() { + void testGetUser() { String expectedName = "GetUserName2"; String expectedSurname = "GetUserSurname2"; String expectedLogin = "GetUser2"; @@ -210,7 +210,7 @@ public void testGetUser() { @Description("Login - Successful") @Test - public void testLoginOK() { + void testLoginOK() { String login = "Systelab"; String password = "Systelab"; Response response = doUserLogin(login, password); @@ -220,7 +220,7 @@ public void testLoginOK() { @Description("Login - Unsuccessful") @Test - public void testLoginKO() { + void testLoginKO() { String login = "fakeUser"; String password = "noPass"; Response response = doUserLogin(login, password);