From 111dd0f0a90a31488d1d9820cb877aeddade4bf7 Mon Sep 17 00:00:00 2001 From: Christian Kollmann Date: Tue, 12 Jan 2021 15:13:47 +0100 Subject: Use random values in tests --- .../v2/test/tasks/InitialSearchTaskFirstTest.java | 111 +++++++++------------ 1 file changed, 47 insertions(+), 64 deletions(-) diff --git a/eidas_modules/authmodule-eIDAS-v2/src/test/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/test/tasks/InitialSearchTaskFirstTest.java b/eidas_modules/authmodule-eIDAS-v2/src/test/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/test/tasks/InitialSearchTaskFirstTest.java index 1f512354..c18dabb9 100644 --- a/eidas_modules/authmodule-eIDAS-v2/src/test/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/test/tasks/InitialSearchTaskFirstTest.java +++ b/eidas_modules/authmodule-eIDAS-v2/src/test/java/at/asitplus/eidas/specific/modules/auth/eidas/v2/test/tasks/InitialSearchTaskFirstTest.java @@ -87,10 +87,10 @@ public class InitialSearchTaskFirstTest { final ExecutionContext executionContext = new ExecutionContextImpl(); private TestRequestImpl pendingReq; private final String randomIdentifier = RandomStringUtils.randomNumeric(10); - private final String randomFamilyName = RandomStringUtils.randomNumeric(11); - private final String randomGivenName = RandomStringUtils.randomNumeric(12); - private final String randomPlaceOfBirth = RandomStringUtils.randomNumeric(12); - private final String randomBirthName = RandomStringUtils.randomNumeric(12); + private final String randomFamilyName = RandomStringUtils.randomAlphabetic(10); + private final String randomGivenName = RandomStringUtils.randomAlphabetic(10); + private final String randomPlaceOfBirth = RandomStringUtils.randomAlphabetic(10); + private final String randomBirthName = RandomStringUtils.randomAlphabetic(10); private final String randomDate = "2011-01-"+ (10 + new Random().nextInt(18)); private final String DE_ST = "de/st/"; private final String IT_ST = "it/st/"; @@ -154,7 +154,8 @@ public class InitialSearchTaskFirstTest { Mockito.when(zmrClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(Collections.emptyList()); ArrayList ernpResult = new ArrayList<>(); String randomBpk = RandomStringUtils.randomNumeric(6); - ernpResult.add(new RegisterResult(randomBpk, DE_ST+randomIdentifier, "Max_new", randomFamilyName, randomDate)); + String newRandomGivenName = RandomStringUtils.randomAlphabetic(10); + ernpResult.add(new RegisterResult(randomBpk, DE_ST+randomIdentifier, newRandomGivenName, randomFamilyName, randomDate)); Mockito.when(ernpClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(ernpResult); task.execute(pendingReq, executionContext); @@ -172,7 +173,8 @@ public class InitialSearchTaskFirstTest { public void testNode101_ManualFixNecessary_a() { ArrayList zmrResult = new ArrayList<>(); zmrResult.add(new RegisterResult("bpkMax", DE_ST+randomIdentifier, randomGivenName, randomFamilyName, randomDate)); - zmrResult.add(new RegisterResult("bpkMax", DE_ST+randomIdentifier, "Maximilian", randomFamilyName, randomDate)); + String newRandomGivenName = randomGivenName + RandomStringUtils.randomAlphabetic(2); + zmrResult.add(new RegisterResult("bpkMax", DE_ST+randomIdentifier, newRandomGivenName, randomFamilyName, randomDate)); Mockito.when(zmrClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(zmrResult); Mockito.when(ernpClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(Collections.emptyList()); @@ -189,13 +191,12 @@ public class InitialSearchTaskFirstTest { @Test @DirtiesContext public void testNode101_ManualFixNecessary_b() { - String randombpk = RandomStringUtils.random(5); + String randombpk = RandomStringUtils.randomNumeric(5); Mockito.when(zmrClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(Collections.emptyList()); ArrayList ernpResult = new ArrayList<>(); ernpResult.add(new RegisterResult(randombpk, DE_ST+randomIdentifier, randomGivenName, randomFamilyName, randomDate)); - ernpResult.add(new RegisterResult(randombpk, DE_ST+randomIdentifier, randomGivenName+RandomStringUtils.random(2), - randomFamilyName, - randomDate)); + String newRandomGivenName = randomGivenName + RandomStringUtils.randomAlphabetic(2); + ernpResult.add(new RegisterResult(randombpk, DE_ST+randomIdentifier, newRandomGivenName, randomFamilyName, randomDate)); Mockito.when(ernpClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(ernpResult); TaskExecutionException exception = assertThrows(TaskExecutionException.class, @@ -258,10 +259,9 @@ public class InitialSearchTaskFirstTest { Mockito.when(zmrClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(Collections.emptyList()); ArrayList zmrResultSpecific = new ArrayList<>(); - zmrResultSpecific.add(new RegisterResult(bpkRegister, IT_ST+randomIdentifier+RandomStringUtils.random(2), - randomGivenName, - randomFamilyName, - randomDate, null, null, taxNumber, null)); + String newRandomPseudonym = IT_ST + randomIdentifier + RandomStringUtils.randomNumeric(2); + zmrResultSpecific.add(new RegisterResult(bpkRegister, newRandomPseudonym, randomGivenName, randomFamilyName, + randomDate, null, null, taxNumber, null)); Mockito.when(zmrClient.searchItSpecific(taxNumber)).thenReturn(zmrResultSpecific); @@ -285,15 +285,10 @@ public class InitialSearchTaskFirstTest { @Test @DirtiesContext public void testNode103_UserIdentified_DE() throws Exception { - String givenName = randomGivenName; - String familyName = randomFamilyName; - String pseudonym = DE_ST + RandomStringUtils.random(5); - String bpk = RandomStringUtils.random(5); - String dateOfBirth = randomDate; - String placeOfBirth = randomPlaceOfBirth; - String birthName = randomBirthName; - final AuthenticationResponse response = buildDummyAuthResponseDE(givenName, familyName, pseudonym, - dateOfBirth, placeOfBirth, birthName); + String randomPseudonym = DE_ST + RandomStringUtils.randomNumeric(5); + String randomBpk = RandomStringUtils.randomNumeric(5); + final AuthenticationResponse response = buildDummyAuthResponseDE(randomGivenName, randomFamilyName, randomPseudonym, + randomDate, randomPlaceOfBirth, randomBirthName); TestRequestImpl pendingReq1 = new TestRequestImpl(); pendingReq1.getSessionData(AuthProcessDataWrapper.class) .setGenericDataToSession(Constants.DATA_FULL_EIDAS_RESPONSE, response); @@ -301,11 +296,11 @@ public class InitialSearchTaskFirstTest { Mockito.when(zmrClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(Collections.emptyList()); ArrayList zmrResultSpecific = new ArrayList<>(); - zmrResultSpecific.add(new RegisterResult(bpk, pseudonym, givenName, familyName, dateOfBirth, placeOfBirth, - birthName, - null, null)); + zmrResultSpecific.add(new RegisterResult(randomBpk, randomPseudonym, randomGivenName, randomFamilyName, randomDate, + randomPlaceOfBirth, randomBirthName,null, null)); - Mockito.when(zmrClient.searchDeSpecific(givenName, familyName, dateOfBirth, placeOfBirth, birthName)).thenReturn(zmrResultSpecific); + Mockito.when(zmrClient.searchDeSpecific(randomGivenName, randomFamilyName, randomDate, randomPlaceOfBirth, + randomBirthName)).thenReturn(zmrResultSpecific); Mockito.when(ernpClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(Collections.emptyList()); @@ -316,9 +311,9 @@ public class InitialSearchTaskFirstTest { task.execute(pendingReq1, executionContext); - String bPk = (String) + String resultBpk = (String) pendingReq1.getSessionData(AuthProcessDataWrapper.class).getGenericDataFromSession(Constants.DATA_RESULT_MATCHING_BPK); - Assert.assertEquals("Wrong bpk", bPk, bpk); + Assert.assertEquals("Wrong bpk", resultBpk, randomBpk); } /** @@ -327,17 +322,12 @@ public class InitialSearchTaskFirstTest { @Test @DirtiesContext public void testNode104_ManualFixNecessary_DE() throws Exception { - String givenName = randomGivenName; - String familyName = randomFamilyName; - String pseudonym1 = DE_ST + RandomStringUtils.random(5); - String pseudonym2 = pseudonym1 + RandomStringUtils.random(2); - String bpk1 = RandomStringUtils.random(5); - String bpk2 = bpk1 + RandomStringUtils.random(2); - String dateOfBirth = randomDate; - String placeOfBirth = randomPlaceOfBirth; - String birthName = randomBirthName; - final AuthenticationResponse response = buildDummyAuthResponseDE(givenName, familyName, pseudonym1, - dateOfBirth, placeOfBirth, birthName); + String pseudonym1 = DE_ST + RandomStringUtils.randomNumeric(5); + String pseudonym2 = pseudonym1 + RandomStringUtils.randomNumeric(2); + String bpk1 = RandomStringUtils.randomNumeric(5); + String bpk2 = bpk1 + RandomStringUtils.randomNumeric(2); + final AuthenticationResponse response = buildDummyAuthResponseDE(randomGivenName, randomFamilyName, pseudonym1, + randomDate, randomPlaceOfBirth, randomBirthName); TestRequestImpl pendingReq1 = new TestRequestImpl(); pendingReq1.getSessionData(AuthProcessDataWrapper.class) .setGenericDataToSession(Constants.DATA_FULL_EIDAS_RESPONSE, response); @@ -345,13 +335,12 @@ public class InitialSearchTaskFirstTest { Mockito.when(zmrClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(Collections.emptyList()); ArrayList zmrResultSpecific = new ArrayList<>(); - zmrResultSpecific.add(new RegisterResult(bpk1, pseudonym1, givenName, familyName, dateOfBirth, placeOfBirth, - birthName, - null, null)); - zmrResultSpecific.add(new RegisterResult(bpk2, pseudonym2, givenName, familyName, dateOfBirth, placeOfBirth, - birthName, - null, null)); - Mockito.when(zmrClient.searchDeSpecific(givenName, familyName, dateOfBirth, placeOfBirth, birthName)).thenReturn(zmrResultSpecific); + zmrResultSpecific.add(new RegisterResult(bpk1, pseudonym1, randomGivenName, randomFamilyName, randomDate, + randomPlaceOfBirth, randomBirthName,null, null)); + zmrResultSpecific.add(new RegisterResult(bpk2, pseudonym2, randomGivenName, randomFamilyName, randomDate, + randomPlaceOfBirth, randomBirthName,null, null)); + Mockito.when(zmrClient.searchDeSpecific(randomGivenName, randomFamilyName, randomDate, randomPlaceOfBirth, + randomBirthName)).thenReturn(zmrResultSpecific); Mockito.when(ernpClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(Collections.emptyList()); @@ -360,13 +349,10 @@ public class InitialSearchTaskFirstTest { handlers.add(de); task = new InitialSearchTask(handlers, ernpClient, zmrClient); - try { - task.execute(pendingReq1, executionContext); - Assert.fail("Wrong workflow, should not reach this point/ get a bpk"); - } catch (final TaskExecutionException e) { - Throwable origE = e.getOriginalException(); - Assert.assertTrue("Wrong exception", (origE.getCause() instanceof ManualFixNecessaryException)); - } + TaskExecutionException exception = assertThrows(TaskExecutionException.class, + () -> task.execute(pendingReq1, executionContext)); + Throwable origE = exception.getOriginalException(); + Assert.assertTrue("Wrong exception", (origE.getCause() instanceof ManualFixNecessaryException)); } /** @@ -384,12 +370,10 @@ public class InitialSearchTaskFirstTest { Mockito.when(zmrClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(Collections.emptyList()); ArrayList zmrResultSpecific = new ArrayList<>(); - zmrResultSpecific.add(new RegisterResult("bpkMax", IT_ST+randomIdentifier+"4", randomGivenName, randomFamilyName, - randomDate, null, null, - fakeTaxNumber, null)); - zmrResultSpecific.add(new RegisterResult("bpkMax1", IT_ST+randomIdentifier+"5", randomGivenName, randomFamilyName, - randomDate, null, null, - fakeTaxNumber, null)); + zmrResultSpecific.add(new RegisterResult("bpkMax", IT_ST+randomIdentifier+"4", randomGivenName, + randomFamilyName, randomDate, null, null, fakeTaxNumber, null)); + zmrResultSpecific.add(new RegisterResult("bpkMax1", IT_ST+randomIdentifier+"5", randomGivenName, + randomFamilyName, randomDate, null, null, fakeTaxNumber, null)); Mockito.when(zmrClient.searchItSpecific(fakeTaxNumber)).thenReturn(zmrResultSpecific); Mockito.when(ernpClient.searchWithPersonIdentifier(randomIdentifier)).thenReturn(Collections.emptyList()); @@ -424,13 +408,12 @@ public class InitialSearchTaskFirstTest { @NotNull private AuthenticationResponse buildDummyAuthResponseRandomPerson() throws URISyntaxException { - return buildDummyAuthResponse(randomGivenName, randomFamilyName, - DE_ST+randomIdentifier, randomDate); + return buildDummyAuthResponse(randomGivenName, randomFamilyName, DE_ST+randomIdentifier, randomDate); } private AuthenticationResponse buildDummyAuthResponseRandomPersonIT_Tax(String taxNumber) throws URISyntaxException { - return buildDummyAuthResponse(randomGivenName, randomFamilyName, - IT_ST+randomIdentifier, randomDate, taxNumber, null, null); + return buildDummyAuthResponse(randomGivenName, randomFamilyName, IT_ST+randomIdentifier, randomDate, + taxNumber, null, null); } @NotNull -- cgit v1.2.3