Skip to content

Commit bcba9a9

Browse files
committed
Added phone hashes to bulk V2 identity map test
1 parent cdc9329 commit bcba9a9

File tree

1 file changed

+22
-5
lines changed

1 file changed

+22
-5
lines changed

src/test/java/suite/operator/TestData.java

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,18 @@
55
import app.component.Operator;
66
import com.fasterxml.jackson.core.JsonProcessingException;
77
import com.fasterxml.jackson.databind.ObjectMapper;
8-
import com.fasterxml.jackson.databind.node.ObjectNode;
98
import com.uid2.client.DecryptionStatus;
109
import org.junit.jupiter.params.provider.Arguments;
1110

1211
import java.util.*;
1312
import java.util.stream.Collectors;
14-
import java.util.stream.IntStream;
1513
import java.util.stream.Stream;
1614

1715
import static org.junit.jupiter.api.Named.named;
1816

1917
public final class TestData {
2018
public static final int RAW_UID2_LENGTH = 44;
19+
private static final Random RANDOM = new Random();
2120

2221
private TestData() {
2322
}
@@ -329,16 +328,20 @@ public static Set<Arguments> identityMapBatchEmailArgs() {
329328

330329
public static Set<Arguments> identityMapBigBatchArgs() throws JsonProcessingException {
331330
ObjectMapper mapper = new ObjectMapper();
332-
Random random = new Random();
333331
Set<Operator> operators = AppsMap.getApps(Operator.class);
334332

335333
List<String> emails = new ArrayList<>();
336334
List<String> phones = new ArrayList<>();
335+
List<String> emailHashes = new ArrayList<>();
336+
List<String> phoneHashes = new ArrayList<>();
337337
for (int i = 0; i < 10_000; i++) {
338-
emails.add("email_" + Math.abs(random.nextLong()) + "@example.com");
338+
emails.add("email_" + Math.abs(RANDOM.nextLong()) + "@example.com");
339339

340340
// Phone numbers with 15 digits are technically valid but are not used in any country
341-
phones.add("+" + String.format("%015d", Math.abs(random.nextLong() % 1_000_000_000_000_000L)));
341+
phones.add("+" + String.format("%015d", Math.abs(RANDOM.nextLong() % 1_000_000_000_000_000L)));
342+
343+
emailHashes.add(fakeRandomHash());
344+
phoneHashes.add(fakeRandomHash());
342345
}
343346

344347
var emailsJson = mapper.createObjectNode().putPOJO("email", emails).put("policy", 1);
@@ -347,14 +350,28 @@ public static Set<Arguments> identityMapBigBatchArgs() throws JsonProcessingExce
347350
var phonesJson = mapper.createObjectNode().putPOJO("phone", phones).put("policy", 1);
348351
String phonesPayload = mapper.writeValueAsString(phonesJson);
349352

353+
var emailHashesJson = mapper.createObjectNode().putPOJO("email_hash", emailHashes).put("policy", 1);
354+
String emailHashesPayload = mapper.writeValueAsString(emailHashesJson);
355+
356+
var phoneHashesJson = mapper.createObjectNode().putPOJO("phone_hash", phoneHashes).put("policy", 1);
357+
String phoneHashesPayload = mapper.writeValueAsString(phoneHashesJson);
358+
350359
Set<Arguments> args = new HashSet<>();
351360
for (Operator operator : operators) {
352361
args.add(Arguments.of("10k emails", operator, operator.getName(), emailsPayload, emails));
353362
args.add(Arguments.of("10k phones", operator, operator.getName(), phonesPayload, phones));
363+
args.add(Arguments.of("10k email hashes", operator, operator.getName(), emailHashesPayload, emailHashes));
364+
args.add(Arguments.of("10k phone hashes", operator, operator.getName(), phoneHashesPayload, phoneHashes));
354365
}
355366
return args;
356367
}
357368

369+
private static String fakeRandomHash() {
370+
byte[] randomBytes = new byte[32];
371+
RANDOM.nextBytes(randomBytes);
372+
return Base64.getEncoder().encodeToString(randomBytes);
373+
}
374+
358375
public static Set<Arguments> identityMapBatchEmailArgsBadPolicy() {
359376
Set<Operator> operators = getPublicOperators();
360377
Set<List<String>> inputs = Set.of(

0 commit comments

Comments
 (0)