diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/controllers/VoiceVerificationController.java b/service/src/main/java/org/whispersystems/textsecuregcm/controllers/VoiceVerificationController.java
index 3c16666c6..c4f73fa25 100644
--- a/service/src/main/java/org/whispersystems/textsecuregcm/controllers/VoiceVerificationController.java
+++ b/service/src/main/java/org/whispersystems/textsecuregcm/controllers/VoiceVerificationController.java
@@ -23,32 +23,34 @@ import org.whispersystems.textsecuregcm.util.Util;
@Path("/v1/voice/")
public class VoiceVerificationController {
- private static final String PLAY_TWIML = "\n" +
- "\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " \n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " \n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- " %s\n" +
- "";
+ private static final String PLAY_TWIML = """
+
+
+ %s
+ %s
+ %s
+ %s
+ %s
+ %s
+ %s
+
+ %s
+ %s
+ %s
+ %s
+ %s
+ %s
+ %s
+
+ %s
+ %s
+ %s
+ %s
+ %s
+ %s
+ %s
+
+ """;
private static final String DEFAULT_LOCALE = "en-US";
diff --git a/service/src/test/java/org/whispersystems/textsecuregcm/configuration/dynamic/DynamicConfigurationTest.java b/service/src/test/java/org/whispersystems/textsecuregcm/configuration/dynamic/DynamicConfigurationTest.java
index f8718e24b..c405e8ac3 100644
--- a/service/src/test/java/org/whispersystems/textsecuregcm/configuration/dynamic/DynamicConfigurationTest.java
+++ b/service/src/test/java/org/whispersystems/textsecuregcm/configuration/dynamic/DynamicConfigurationTest.java
@@ -38,18 +38,19 @@ class DynamicConfigurationTest {
}
{
- final String experimentConfigYaml =
- "experiments:\n" +
- " percentageOnly:\n" +
- " enrollmentPercentage: 12\n" +
- " uuidsAndPercentage:\n" +
- " enrolledUuids:\n" +
- " - 717b1c09-ed0b-4120-bb0e-f4697534b8e1\n" +
- " - 279f264c-56d7-4bbf-b9da-de718ff90903\n" +
- " enrollmentPercentage: 77\n" +
- " uuidsOnly:\n" +
- " enrolledUuids:\n" +
- " - 71618739-114c-4b1f-bb0d-6478a44eb600";
+ final String experimentConfigYaml = """
+ experiments:
+ percentageOnly:
+ enrollmentPercentage: 12
+ uuidsAndPercentage:
+ enrolledUuids:
+ - 717b1c09-ed0b-4120-bb0e-f4697534b8e1
+ - 279f264c-56d7-4bbf-b9da-de718ff90903
+ enrollmentPercentage: 77
+ uuidsOnly:
+ enrolledUuids:
+ - 71618739-114c-4b1f-bb0d-6478a44eb600
+ """;
final DynamicConfiguration config =
DynamicConfigurationManager.parseConfiguration(experimentConfigYaml, DynamicConfiguration.class).orElseThrow();
@@ -86,27 +87,28 @@ class DynamicConfigurationTest {
}
{
- final String experimentConfigYaml =
- "preRegistrationExperiments:\n" +
- " percentageOnly:\n" +
- " enrollmentPercentage: 17\n" +
- " e164sCountryCodesAndPercentage:\n" +
- " enrolledE164s:\n" +
- " - +120255551212\n" +
- " - +3655323174\n" +
- " excludedE164s:\n" +
- " - +120255551213\n" +
- " - +3655323175\n" +
- " enrollmentPercentage: 46\n" +
- " excludedCountryCodes:\n" +
- " - 47\n" +
- " includedCountryCodes:\n" +
- " - 56\n" +
- " e164sAndExcludedCodes:\n" +
- " enrolledE164s:\n" +
- " - +120255551212\n" +
- " excludedCountryCodes:\n" +
- " - 47";
+ final String experimentConfigYaml = """
+ preRegistrationExperiments:
+ percentageOnly:
+ enrollmentPercentage: 17
+ e164sCountryCodesAndPercentage:
+ enrolledE164s:
+ - +120255551212
+ - +3655323174
+ excludedE164s:
+ - +120255551213
+ - +3655323175
+ enrollmentPercentage: 46
+ excludedCountryCodes:
+ - 47
+ includedCountryCodes:
+ - 56
+ e164sAndExcludedCodes:
+ enrolledE164s:
+ - +120255551212
+ excludedCountryCodes:
+ - 47
+ """;
final DynamicConfiguration config =
DynamicConfigurationManager.parseConfiguration(experimentConfigYaml, DynamicConfiguration.class).orElseThrow();
@@ -167,18 +169,17 @@ class DynamicConfigurationTest {
}
{
- final String remoteDeprecationConfig =
- "remoteDeprecation:\n" +
- " minimumVersions:\n" +
- " IOS: 1.2.3\n" +
- " ANDROID: 4.5.6\n" +
-
- " versionsPendingDeprecation:\n" +
- " DESKTOP: 7.8.9\n" +
-
- " blockedVersions:\n" +
- " DESKTOP:\n" +
- " - 1.4.0-beta.2";
+ final String remoteDeprecationConfig = """
+ remoteDeprecation:
+ minimumVersions:
+ IOS: 1.2.3
+ ANDROID: 4.5.6
+ versionsPendingDeprecation:
+ DESKTOP: 7.8.9
+ blockedVersions:
+ DESKTOP:
+ - 1.4.0-beta.2
+ """;
final DynamicConfiguration config =
DynamicConfigurationManager.parseConfiguration(remoteDeprecationConfig, DynamicConfiguration.class).orElseThrow();
@@ -207,9 +208,10 @@ class DynamicConfigurationTest {
}
{
- final String messageRateConfigYaml =
- "messageRate:\n" +
- " enforceUnsealedSenderRateLimit: true";
+ final String messageRateConfigYaml = """
+ messageRate:
+ enforceUnsealedSenderRateLimit: true
+ """;
final DynamicConfiguration emptyConfig =
DynamicConfigurationManager.parseConfiguration(messageRateConfigYaml, DynamicConfiguration.class).orElseThrow();
@@ -229,9 +231,10 @@ class DynamicConfigurationTest {
}
{
- final String featureFlagYaml =
- "featureFlags:\n"
- + " - testFlag";
+ final String featureFlagYaml = """
+ featureFlags:
+ - testFlag
+ """;
final DynamicConfiguration emptyConfig =
DynamicConfigurationManager.parseConfiguration(featureFlagYaml, DynamicConfiguration.class).orElseThrow();
@@ -251,11 +254,12 @@ class DynamicConfigurationTest {
}
{
- final String twilioConfigYaml =
- "twilio:\n"
- + " numbers:\n"
- + " - 2135551212\n"
- + " - 2135551313";
+ final String twilioConfigYaml = """
+ twilio:
+ numbers:
+ - 2135551212
+ - 2135551313
+ """;
final DynamicTwilioConfiguration config =
DynamicConfigurationManager.parseConfiguration(twilioConfigYaml, DynamicConfiguration.class).orElseThrow()
@@ -276,10 +280,11 @@ class DynamicConfigurationTest {
}
{
- final String paymentsConfigYaml =
- "payments:\n"
- + " disallowedPrefixes:\n"
- + " - +44";
+ final String paymentsConfigYaml = """
+ payments:
+ disallowedPrefixes:
+ - +44
+ """;
final DynamicPaymentsConfiguration config =
DynamicConfigurationManager.parseConfiguration(paymentsConfigYaml, DynamicConfiguration.class).orElseThrow()
@@ -300,10 +305,11 @@ class DynamicConfigurationTest {
}
{
- final String signupCaptchaConfig =
- "signupCaptcha:\n"
- + " countryCodes:\n"
- + " - 1";
+ final String signupCaptchaConfig = """
+ signupCaptcha:
+ countryCodes:
+ - 1
+ """;
final DynamicSignupCaptchaConfiguration config =
DynamicConfigurationManager.parseConfiguration(signupCaptchaConfig, DynamicConfiguration.class).orElseThrow()
@@ -325,11 +331,12 @@ class DynamicConfigurationTest {
}
{
- final String limitsConfig =
- "limits:\n"
- + " unsealedSenderNumber:\n"
- + " maxCardinality: 99\n"
- + " ttl: PT23H";
+ final String limitsConfig = """
+ limits:
+ unsealedSenderNumber:
+ maxCardinality: 99
+ ttl: PT23H
+ """;
final CardinalityRateLimitConfiguration unsealedSenderNumber =
DynamicConfigurationManager.parseConfiguration(limitsConfig, DynamicConfiguration.class).orElseThrow()
@@ -353,13 +360,14 @@ class DynamicConfigurationTest {
}
{
- final String rateLimitChallengeConfig =
- "rateLimitChallenge:\n"
- + " preKeyLimitEnforced: true\n"
- + " clientSupportedVersions:\n"
- + " IOS: 5.1.0\n"
- + " ANDROID: 5.2.0\n"
- + " DESKTOP: 5.0.0";
+ final String rateLimitChallengeConfig = """
+ rateLimitChallenge:
+ preKeyLimitEnforced: true
+ clientSupportedVersions:
+ IOS: 5.1.0
+ ANDROID: 5.2.0
+ DESKTOP: 5.0.0
+ """;
DynamicRateLimitChallengeConfiguration rateLimitChallengeConfiguration =
DynamicConfigurationManager.parseConfiguration(rateLimitChallengeConfig, DynamicConfiguration.class).orElseThrow()
@@ -386,9 +394,10 @@ class DynamicConfigurationTest {
}
{
- final String directoryReconcilerConfig =
- "directoryReconciler:\n"
- + " enabled: false";
+ final String directoryReconcilerConfig = """
+ directoryReconciler:
+ enabled: false
+ """;
DynamicDirectoryReconcilerConfiguration directoryReconcilerConfiguration =
DynamicConfigurationManager.parseConfiguration(directoryReconcilerConfig, DynamicConfiguration.class).orElseThrow()
diff --git a/service/src/test/java/org/whispersystems/textsecuregcm/controllers/ChallengeControllerTest.java b/service/src/test/java/org/whispersystems/textsecuregcm/controllers/ChallengeControllerTest.java
index 066ed832b..279967924 100644
--- a/service/src/test/java/org/whispersystems/textsecuregcm/controllers/ChallengeControllerTest.java
+++ b/service/src/test/java/org/whispersystems/textsecuregcm/controllers/ChallengeControllerTest.java
@@ -56,10 +56,12 @@ class ChallengeControllerTest {
@Test
void testHandlePushChallenge() throws RateLimitExceededException {
- final String pushChallengeJson = "{\n"
- + " \"type\": \"rateLimitPushChallenge\",\n"
- + " \"challenge\": \"Hello I am a push challenge token\"\n"
- + "}";
+ final String pushChallengeJson = """
+ {
+ "type": "rateLimitPushChallenge",
+ "challenge": "Hello I am a push challenge token"
+ }
+ """;
final Response response = EXTENSION.target("/v1/challenge")
.request()
@@ -72,10 +74,12 @@ class ChallengeControllerTest {
@Test
void testHandlePushChallengeRateLimited() throws RateLimitExceededException {
- final String pushChallengeJson = "{\n"
- + " \"type\": \"rateLimitPushChallenge\",\n"
- + " \"challenge\": \"Hello I am a push challenge token\"\n"
- + "}";
+ final String pushChallengeJson = """
+ {
+ "type": "rateLimitPushChallenge",
+ "challenge": "Hello I am a push challenge token"
+ }
+ """;
final Duration retryAfter = Duration.ofMinutes(17);
doThrow(new RateLimitExceededException(retryAfter)).when(rateLimitChallengeManager).answerPushChallenge(any(), any());
@@ -91,11 +95,13 @@ class ChallengeControllerTest {
@Test
void testHandleRecaptcha() throws RateLimitExceededException {
- final String recaptchaChallengeJson = "{\n"
- + " \"type\": \"recaptcha\",\n"
- + " \"token\": \"A server-generated token\",\n"
- + " \"captcha\": \"The value of the solved captcha token\"\n"
- + "}";
+ final String recaptchaChallengeJson = """
+ {
+ "type": "recaptcha",
+ "token": "A server-generated token",
+ "captcha": "The value of the solved captcha token"
+ }
+ """;
final Response response = EXTENSION.target("/v1/challenge")
.request()
@@ -109,11 +115,13 @@ class ChallengeControllerTest {
@Test
void testHandleRecaptchaRateLimited() throws RateLimitExceededException {
- final String recaptchaChallengeJson = "{\n"
- + " \"type\": \"recaptcha\",\n"
- + " \"token\": \"A server-generated token\",\n"
- + " \"captcha\": \"The value of the solved captcha token\"\n"
- + "}";
+ final String recaptchaChallengeJson = """
+ {
+ "type": "recaptcha",
+ "token": "A server-generated token",
+ "captcha": "The value of the solved captcha token"
+ }
+ """;
final Duration retryAfter = Duration.ofMinutes(17);
doThrow(new RateLimitExceededException(retryAfter)).when(rateLimitChallengeManager).answerRecaptchaChallenge(any(), any(), any());
@@ -130,11 +138,13 @@ class ChallengeControllerTest {
@Test
void testHandleRecaptchaNoForwardedFor() {
- final String recaptchaChallengeJson = "{\n"
- + " \"type\": \"recaptcha\",\n"
- + " \"token\": \"A server-generated token\",\n"
- + " \"captcha\": \"The value of the solved captcha token\"\n"
- + "}";
+ final String recaptchaChallengeJson = """
+ {
+ "type": "recaptcha",
+ "token": "A server-generated token",
+ "captcha": "The value of the solved captcha token"
+ }
+ """;
final Response response = EXTENSION.target("/v1/challenge")
.request()
@@ -147,9 +157,11 @@ class ChallengeControllerTest {
@Test
void testHandleUnrecognizedAnswer() {
- final String unrecognizedJson = "{\n"
- + " \"type\": \"unrecognized\"\n"
- + "}";
+ final String unrecognizedJson = """
+ {
+ "type": "unrecognized"
+ }
+ """;
final Response response = EXTENSION.target("/v1/challenge")
.request()
@@ -187,9 +199,11 @@ class ChallengeControllerTest {
@Test
void testValidationError() {
- final String unrecognizedJson = "{\n"
- + " \"type\": \"rateLimitPushChallenge\"\n"
- + "}";
+ final String unrecognizedJson = """
+ {
+ "type": "rateLimitPushChallenge"
+ }
+ """;
final Response response = EXTENSION.target("/v1/challenge")
.request()
diff --git a/service/src/test/java/org/whispersystems/textsecuregcm/entities/AnswerChallengeRequestTest.java b/service/src/test/java/org/whispersystems/textsecuregcm/entities/AnswerChallengeRequestTest.java
index faadfb519..9ff2d12eb 100644
--- a/service/src/test/java/org/whispersystems/textsecuregcm/entities/AnswerChallengeRequestTest.java
+++ b/service/src/test/java/org/whispersystems/textsecuregcm/entities/AnswerChallengeRequestTest.java
@@ -17,10 +17,12 @@ class AnswerChallengeRequestTest {
@Test
void parse() throws JsonProcessingException {
{
- final String pushChallengeJson = "{\n"
- + " \"type\": \"rateLimitPushChallenge\",\n"
- + " \"challenge\": \"Hello I am a push challenge token\"\n"
- + "}";
+ final String pushChallengeJson = """
+ {
+ "type": "rateLimitPushChallenge",
+ "challenge": "Hello I am a push challenge token"
+ }
+ """;
final AnswerChallengeRequest answerChallengeRequest =
SystemMapper.getMapper().readValue(pushChallengeJson, AnswerChallengeRequest.class);
@@ -31,11 +33,13 @@ class AnswerChallengeRequestTest {
}
{
- final String recaptchaChallengeJson = "{\n"
- + " \"type\": \"recaptcha\",\n"
- + " \"token\": \"A server-generated token\",\n"
- + " \"captcha\": \"The value of the solved captcha token\"\n"
- + "}";
+ final String recaptchaChallengeJson = """
+ {
+ "type": "recaptcha",
+ "token": "A server-generated token",
+ "captcha": "The value of the solved captcha token"
+ }
+ """;
final AnswerChallengeRequest answerChallengeRequest =
SystemMapper.getMapper().readValue(recaptchaChallengeJson, AnswerChallengeRequest.class);
@@ -50,11 +54,13 @@ class AnswerChallengeRequestTest {
}
{
- final String unrecognizedTypeJson = "{\n"
- + " \"type\": \"unrecognized\",\n"
- + " \"token\": \"A server-generated token\",\n"
- + " \"captcha\": \"The value of the solved captcha token\"\n"
- + "}";
+ final String unrecognizedTypeJson = """
+ {
+ "type": "unrecognized",
+ "token": "A server-generated token",
+ "captcha": "The value of the solved captcha token"
+ }
+ """;
assertThrows(InvalidTypeIdException.class,
() -> SystemMapper.getMapper().readValue(unrecognizedTypeJson, AnswerChallengeRequest.class));
diff --git a/service/src/test/java/org/whispersystems/textsecuregcm/metrics/OperatingSystemMemoryGaugeTest.java b/service/src/test/java/org/whispersystems/textsecuregcm/metrics/OperatingSystemMemoryGaugeTest.java
index a2321cddb..fae450d22 100644
--- a/service/src/test/java/org/whispersystems/textsecuregcm/metrics/OperatingSystemMemoryGaugeTest.java
+++ b/service/src/test/java/org/whispersystems/textsecuregcm/metrics/OperatingSystemMemoryGaugeTest.java
@@ -18,59 +18,61 @@ import static org.junit.Assert.*;
public class OperatingSystemMemoryGaugeTest {
private static final String MEMINFO =
- "MemTotal: 16052208 kB\n" +
- "MemFree: 4568468 kB\n" +
- "MemAvailable: 7702848 kB\n" +
- "Buffers: 636372 kB\n" +
- "Cached: 5019116 kB\n" +
- "SwapCached: 6692 kB\n" +
- "Active: 7746436 kB\n" +
- "Inactive: 2729876 kB\n" +
- "Active(anon): 5580980 kB\n" +
- "Inactive(anon): 1648108 kB\n" +
- "Active(file): 2165456 kB\n" +
- "Inactive(file): 1081768 kB\n" +
- "Unevictable: 443948 kB\n" +
- "Mlocked: 4924 kB\n" +
- "SwapTotal: 1003516 kB\n" +
- "SwapFree: 935932 kB\n" +
- "Dirty: 28308 kB\n" +
- "Writeback: 0 kB\n" +
- "AnonPages: 5258396 kB\n" +
- "Mapped: 1530740 kB\n" +
- "Shmem: 2419340 kB\n" +
- "KReclaimable: 229392 kB\n" +
- "Slab: 408156 kB\n" +
- "SReclaimable: 229392 kB\n" +
- "SUnreclaim: 178764 kB\n" +
- "KernelStack: 17360 kB\n" +
- "PageTables: 50436 kB\n" +
- "NFS_Unstable: 0 kB\n" +
- "Bounce: 0 kB\n" +
- "WritebackTmp: 0 kB\n" +
- "CommitLimit: 9029620 kB\n" +
- "Committed_AS: 16681884 kB\n" +
- "VmallocTotal: 34359738367 kB\n" +
- "VmallocUsed: 41944 kB\n" +
- "VmallocChunk: 0 kB\n" +
- "Percpu: 4240 kB\n" +
- "HardwareCorrupted: 0 kB\n" +
- "AnonHugePages: 0 kB\n" +
- "ShmemHugePages: 0 kB\n" +
- "ShmemPmdMapped: 0 kB\n" +
- "FileHugePages: 0 kB\n" +
- "FilePmdMapped: 0 kB\n" +
- "CmaTotal: 0 kB\n" +
- "CmaFree: 0 kB\n" +
- "HugePages_Total: 0\n" +
- "HugePages_Free: 7\n" +
- "HugePages_Rsvd: 0\n" +
- "HugePages_Surp: 0\n" +
- "Hugepagesize: 2048 kB\n" +
- "Hugetlb: 0 kB\n" +
- "DirectMap4k: 481804 kB\n" +
- "DirectMap2M: 14901248 kB\n" +
- "DirectMap1G: 2097152 kB\n";
+ """
+ MemTotal: 16052208 kB
+ MemFree: 4568468 kB
+ MemAvailable: 7702848 kB
+ Buffers: 636372 kB
+ Cached: 5019116 kB
+ SwapCached: 6692 kB
+ Active: 7746436 kB
+ Inactive: 2729876 kB
+ Active(anon): 5580980 kB
+ Inactive(anon): 1648108 kB
+ Active(file): 2165456 kB
+ Inactive(file): 1081768 kB
+ Unevictable: 443948 kB
+ Mlocked: 4924 kB
+ SwapTotal: 1003516 kB
+ SwapFree: 935932 kB
+ Dirty: 28308 kB
+ Writeback: 0 kB
+ AnonPages: 5258396 kB
+ Mapped: 1530740 kB
+ Shmem: 2419340 kB
+ KReclaimable: 229392 kB
+ Slab: 408156 kB
+ SReclaimable: 229392 kB
+ SUnreclaim: 178764 kB
+ KernelStack: 17360 kB
+ PageTables: 50436 kB
+ NFS_Unstable: 0 kB
+ Bounce: 0 kB
+ WritebackTmp: 0 kB
+ CommitLimit: 9029620 kB
+ Committed_AS: 16681884 kB
+ VmallocTotal: 34359738367 kB
+ VmallocUsed: 41944 kB
+ VmallocChunk: 0 kB
+ Percpu: 4240 kB
+ HardwareCorrupted: 0 kB
+ AnonHugePages: 0 kB
+ ShmemHugePages: 0 kB
+ ShmemPmdMapped: 0 kB
+ FileHugePages: 0 kB
+ FilePmdMapped: 0 kB
+ CmaTotal: 0 kB
+ CmaFree: 0 kB
+ HugePages_Total: 0
+ HugePages_Free: 7
+ HugePages_Rsvd: 0
+ HugePages_Surp: 0
+ Hugepagesize: 2048 kB
+ Hugetlb: 0 kB
+ DirectMap4k: 481804 kB
+ DirectMap2M: 14901248 kB
+ DirectMap1G: 2097152 kB
+ """;
@Test
@Parameters(method = "argumentsForTestGetValue")
diff --git a/service/src/test/java/org/whispersystems/textsecuregcm/securebackup/SecureBackupClientTest.java b/service/src/test/java/org/whispersystems/textsecuregcm/securebackup/SecureBackupClientTest.java
index 7d9976cd4..7d3909fae 100644
--- a/service/src/test/java/org/whispersystems/textsecuregcm/securebackup/SecureBackupClientTest.java
+++ b/service/src/test/java/org/whispersystems/textsecuregcm/securebackup/SecureBackupClientTest.java
@@ -55,22 +55,23 @@ public class SecureBackupClientTest {
config.setUri("http://localhost:" + wireMockRule.port());
// This is a randomly-generated, throwaway certificate that's not actually connected to anything
- config.setBackupCaCertificate(
- "-----BEGIN CERTIFICATE-----\n" +
- "MIICZDCCAc2gAwIBAgIBADANBgkqhkiG9w0BAQ0FADBPMQswCQYDVQQGEwJ1czEL\n" +
- "MAkGA1UECAwCVVMxHjAcBgNVBAoMFVNpZ25hbCBNZXNzZW5nZXIsIExMQzETMBEG\n" +
- "A1UEAwwKc2lnbmFsLm9yZzAeFw0yMDEyMjMyMjQ3NTlaFw0zMDEyMjEyMjQ3NTla\n" +
- "ME8xCzAJBgNVBAYTAnVzMQswCQYDVQQIDAJVUzEeMBwGA1UECgwVU2lnbmFsIE1l\n" +
- "c3NlbmdlciwgTExDMRMwEQYDVQQDDApzaWduYWwub3JnMIGfMA0GCSqGSIb3DQEB\n" +
- "AQUAA4GNADCBiQKBgQCfSLcZNHYqbxSsgWp4JvbPRHjQTrlsrKrgD2q7f/OY6O3Y\n" +
- "/X0QNcNSOJpliN8rmzwslfsrXHO3q1diGRw4xHogUJZ/7NQrHiP/zhN0VTDh49pD\n" +
- "ZpjXVyUbayLS/6qM5arKxBspzEFBb5v8cF6bPr76SO/rpGXiI0j6yJKX6fRiKwID\n" +
- "AQABo1AwTjAdBgNVHQ4EFgQU6Jrs/Fmj0z4dA3wvdq/WqA4P49IwHwYDVR0jBBgw\n" +
- "FoAU6Jrs/Fmj0z4dA3wvdq/WqA4P49IwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0B\n" +
- "AQ0FAAOBgQB+5d5+NtzLILfrc9QmJdIO1YeDP64JmFwTER0kEUouRsb9UwknVWZa\n" +
- "y7MTM4NoBV1k0zb5LAk89SIDPr/maW5AsLtEomzjnEiomjoMBUdNe3YCgQReoLnr\n" +
- "R/QaUNbrCjTGYfBsjGbIzmkWPUyTec2ZdRyJ8JiVl386+6CZkxnndQ==\n" +
- "-----END CERTIFICATE-----");
+ config.setBackupCaCertificate("""
+ -----BEGIN CERTIFICATE-----
+ MIICZDCCAc2gAwIBAgIBADANBgkqhkiG9w0BAQ0FADBPMQswCQYDVQQGEwJ1czEL
+ MAkGA1UECAwCVVMxHjAcBgNVBAoMFVNpZ25hbCBNZXNzZW5nZXIsIExMQzETMBEG
+ A1UEAwwKc2lnbmFsLm9yZzAeFw0yMDEyMjMyMjQ3NTlaFw0zMDEyMjEyMjQ3NTla
+ ME8xCzAJBgNVBAYTAnVzMQswCQYDVQQIDAJVUzEeMBwGA1UECgwVU2lnbmFsIE1l
+ c3NlbmdlciwgTExDMRMwEQYDVQQDDApzaWduYWwub3JnMIGfMA0GCSqGSIb3DQEB
+ AQUAA4GNADCBiQKBgQCfSLcZNHYqbxSsgWp4JvbPRHjQTrlsrKrgD2q7f/OY6O3Y
+ /X0QNcNSOJpliN8rmzwslfsrXHO3q1diGRw4xHogUJZ/7NQrHiP/zhN0VTDh49pD
+ ZpjXVyUbayLS/6qM5arKxBspzEFBb5v8cF6bPr76SO/rpGXiI0j6yJKX6fRiKwID
+ AQABo1AwTjAdBgNVHQ4EFgQU6Jrs/Fmj0z4dA3wvdq/WqA4P49IwHwYDVR0jBBgw
+ FoAU6Jrs/Fmj0z4dA3wvdq/WqA4P49IwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0B
+ AQ0FAAOBgQB+5d5+NtzLILfrc9QmJdIO1YeDP64JmFwTER0kEUouRsb9UwknVWZa
+ y7MTM4NoBV1k0zb5LAk89SIDPr/maW5AsLtEomzjnEiomjoMBUdNe3YCgQReoLnr
+ R/QaUNbrCjTGYfBsjGbIzmkWPUyTec2ZdRyJ8JiVl386+6CZkxnndQ==
+ -----END CERTIFICATE-----
+ """);
secureStorageClient = new SecureBackupClient(credentialGenerator, httpExecutor, config);
}
diff --git a/service/src/test/java/org/whispersystems/textsecuregcm/securestorage/SecureStorageClientTest.java b/service/src/test/java/org/whispersystems/textsecuregcm/securestorage/SecureStorageClientTest.java
index 9b4ea87a7..ae8070da8 100644
--- a/service/src/test/java/org/whispersystems/textsecuregcm/securestorage/SecureStorageClientTest.java
+++ b/service/src/test/java/org/whispersystems/textsecuregcm/securestorage/SecureStorageClientTest.java
@@ -55,22 +55,23 @@ public class SecureStorageClientTest {
config.setUri("http://localhost:" + wireMockRule.port());
// This is a randomly-generated, throwaway certificate that's not actually connected to anything
- config.setStorageCaCertificate(
- "-----BEGIN CERTIFICATE-----\n" +
- "MIICZDCCAc2gAwIBAgIBADANBgkqhkiG9w0BAQ0FADBPMQswCQYDVQQGEwJ1czEL\n" +
- "MAkGA1UECAwCVVMxHjAcBgNVBAoMFVNpZ25hbCBNZXNzZW5nZXIsIExMQzETMBEG\n" +
- "A1UEAwwKc2lnbmFsLm9yZzAeFw0yMDEyMjMyMjQ3NTlaFw0zMDEyMjEyMjQ3NTla\n" +
- "ME8xCzAJBgNVBAYTAnVzMQswCQYDVQQIDAJVUzEeMBwGA1UECgwVU2lnbmFsIE1l\n" +
- "c3NlbmdlciwgTExDMRMwEQYDVQQDDApzaWduYWwub3JnMIGfMA0GCSqGSIb3DQEB\n" +
- "AQUAA4GNADCBiQKBgQCfSLcZNHYqbxSsgWp4JvbPRHjQTrlsrKrgD2q7f/OY6O3Y\n" +
- "/X0QNcNSOJpliN8rmzwslfsrXHO3q1diGRw4xHogUJZ/7NQrHiP/zhN0VTDh49pD\n" +
- "ZpjXVyUbayLS/6qM5arKxBspzEFBb5v8cF6bPr76SO/rpGXiI0j6yJKX6fRiKwID\n" +
- "AQABo1AwTjAdBgNVHQ4EFgQU6Jrs/Fmj0z4dA3wvdq/WqA4P49IwHwYDVR0jBBgw\n" +
- "FoAU6Jrs/Fmj0z4dA3wvdq/WqA4P49IwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0B\n" +
- "AQ0FAAOBgQB+5d5+NtzLILfrc9QmJdIO1YeDP64JmFwTER0kEUouRsb9UwknVWZa\n" +
- "y7MTM4NoBV1k0zb5LAk89SIDPr/maW5AsLtEomzjnEiomjoMBUdNe3YCgQReoLnr\n" +
- "R/QaUNbrCjTGYfBsjGbIzmkWPUyTec2ZdRyJ8JiVl386+6CZkxnndQ==\n" +
- "-----END CERTIFICATE-----");
+ config.setStorageCaCertificate("""
+ -----BEGIN CERTIFICATE-----
+ MIICZDCCAc2gAwIBAgIBADANBgkqhkiG9w0BAQ0FADBPMQswCQYDVQQGEwJ1czEL
+ MAkGA1UECAwCVVMxHjAcBgNVBAoMFVNpZ25hbCBNZXNzZW5nZXIsIExMQzETMBEG
+ A1UEAwwKc2lnbmFsLm9yZzAeFw0yMDEyMjMyMjQ3NTlaFw0zMDEyMjEyMjQ3NTla
+ ME8xCzAJBgNVBAYTAnVzMQswCQYDVQQIDAJVUzEeMBwGA1UECgwVU2lnbmFsIE1l
+ c3NlbmdlciwgTExDMRMwEQYDVQQDDApzaWduYWwub3JnMIGfMA0GCSqGSIb3DQEB
+ AQUAA4GNADCBiQKBgQCfSLcZNHYqbxSsgWp4JvbPRHjQTrlsrKrgD2q7f/OY6O3Y
+ /X0QNcNSOJpliN8rmzwslfsrXHO3q1diGRw4xHogUJZ/7NQrHiP/zhN0VTDh49pD
+ ZpjXVyUbayLS/6qM5arKxBspzEFBb5v8cF6bPr76SO/rpGXiI0j6yJKX6fRiKwID
+ AQABo1AwTjAdBgNVHQ4EFgQU6Jrs/Fmj0z4dA3wvdq/WqA4P49IwHwYDVR0jBBgw
+ FoAU6Jrs/Fmj0z4dA3wvdq/WqA4P49IwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0B
+ AQ0FAAOBgQB+5d5+NtzLILfrc9QmJdIO1YeDP64JmFwTER0kEUouRsb9UwknVWZa
+ y7MTM4NoBV1k0zb5LAk89SIDPr/maW5AsLtEomzjnEiomjoMBUdNe3YCgQReoLnr
+ R/QaUNbrCjTGYfBsjGbIzmkWPUyTec2ZdRyJ8JiVl386+6CZkxnndQ==
+ -----END CERTIFICATE-----
+ """);
secureStorageClient = new SecureStorageClient(credentialGenerator, httpExecutor, config);
}