Consolidate StoredVerificationCode constructors.
This commit is contained in:
parent
bf1dd791a5
commit
71bea759c6
|
@ -5,10 +5,12 @@
|
||||||
|
|
||||||
package org.whispersystems.textsecuregcm.auth;
|
package org.whispersystems.textsecuregcm.auth;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonCreator;
|
||||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
|
|
||||||
import org.whispersystems.textsecuregcm.util.Util;
|
import org.whispersystems.textsecuregcm.util.Util;
|
||||||
|
|
||||||
|
import javax.annotation.Nullable;
|
||||||
import java.security.MessageDigest;
|
import java.security.MessageDigest;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
@ -16,25 +18,25 @@ import java.util.concurrent.TimeUnit;
|
||||||
public class StoredVerificationCode {
|
public class StoredVerificationCode {
|
||||||
|
|
||||||
@JsonProperty
|
@JsonProperty
|
||||||
private String code;
|
private final String code;
|
||||||
|
|
||||||
@JsonProperty
|
@JsonProperty
|
||||||
private long timestamp;
|
private final long timestamp;
|
||||||
|
|
||||||
@JsonProperty
|
@JsonProperty
|
||||||
private String pushCode;
|
private final String pushCode;
|
||||||
|
|
||||||
@JsonProperty
|
@JsonProperty
|
||||||
private String twilioVerificationSid;
|
@Nullable
|
||||||
|
private final String twilioVerificationSid;
|
||||||
|
|
||||||
public StoredVerificationCode() {
|
@JsonCreator
|
||||||
}
|
public StoredVerificationCode(
|
||||||
|
@JsonProperty("code") final String code,
|
||||||
|
@JsonProperty("timestamp") final long timestamp,
|
||||||
|
@JsonProperty("pushCode") final String pushCode,
|
||||||
|
@JsonProperty("twilioVerificationSid") @Nullable final String twilioVerificationSid) {
|
||||||
|
|
||||||
public StoredVerificationCode(String code, long timestamp, String pushCode) {
|
|
||||||
this(code, timestamp, pushCode, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
public StoredVerificationCode(String code, long timestamp, String pushCode, String twilioVerificationSid) {
|
|
||||||
this.code = code;
|
this.code = code;
|
||||||
this.timestamp = timestamp;
|
this.timestamp = timestamp;
|
||||||
this.pushCode = pushCode;
|
this.pushCode = pushCode;
|
||||||
|
|
|
@ -184,7 +184,8 @@ public class AccountController {
|
||||||
String pushChallenge = generatePushChallenge();
|
String pushChallenge = generatePushChallenge();
|
||||||
StoredVerificationCode storedVerificationCode = new StoredVerificationCode(null,
|
StoredVerificationCode storedVerificationCode = new StoredVerificationCode(null,
|
||||||
System.currentTimeMillis(),
|
System.currentTimeMillis(),
|
||||||
pushChallenge);
|
pushChallenge,
|
||||||
|
null);
|
||||||
|
|
||||||
pendingAccounts.store(number, storedVerificationCode);
|
pendingAccounts.store(number, storedVerificationCode);
|
||||||
|
|
||||||
|
|
|
@ -131,6 +131,7 @@ public class DeviceController {
|
||||||
VerificationCode verificationCode = generateVerificationCode();
|
VerificationCode verificationCode = generateVerificationCode();
|
||||||
StoredVerificationCode storedVerificationCode = new StoredVerificationCode(verificationCode.getVerificationCode(),
|
StoredVerificationCode storedVerificationCode = new StoredVerificationCode(verificationCode.getVerificationCode(),
|
||||||
System.currentTimeMillis(),
|
System.currentTimeMillis(),
|
||||||
|
null,
|
||||||
null);
|
null);
|
||||||
|
|
||||||
pendingDevices.store(account.getNumber(), storedVerificationCode);
|
pendingDevices.store(account.getNumber(), storedVerificationCode);
|
||||||
|
|
|
@ -192,15 +192,15 @@ class AccountControllerTest {
|
||||||
when(senderRegLockAccount.getLastSeen()).thenReturn(System.currentTimeMillis());
|
when(senderRegLockAccount.getLastSeen()).thenReturn(System.currentTimeMillis());
|
||||||
when(senderRegLockAccount.getUuid()).thenReturn(SENDER_REG_LOCK_UUID);
|
when(senderRegLockAccount.getUuid()).thenReturn(SENDER_REG_LOCK_UUID);
|
||||||
|
|
||||||
when(pendingAccountsManager.getCodeForNumber(SENDER)).thenReturn(Optional.of(new StoredVerificationCode("1234", System.currentTimeMillis(), "1234-push")));
|
when(pendingAccountsManager.getCodeForNumber(SENDER)).thenReturn(Optional.of(new StoredVerificationCode("1234", System.currentTimeMillis(), "1234-push", null)));
|
||||||
when(pendingAccountsManager.getCodeForNumber(SENDER_OLD)).thenReturn(Optional.of(new StoredVerificationCode("1234", System.currentTimeMillis() - TimeUnit.MINUTES.toMillis(31), null)));
|
when(pendingAccountsManager.getCodeForNumber(SENDER_OLD)).thenReturn(Optional.of(new StoredVerificationCode("1234", System.currentTimeMillis() - TimeUnit.MINUTES.toMillis(31), null, null)));
|
||||||
when(pendingAccountsManager.getCodeForNumber(SENDER_PIN)).thenReturn(Optional.of(new StoredVerificationCode("333333", System.currentTimeMillis(), null)));
|
when(pendingAccountsManager.getCodeForNumber(SENDER_PIN)).thenReturn(Optional.of(new StoredVerificationCode("333333", System.currentTimeMillis(), null, null)));
|
||||||
when(pendingAccountsManager.getCodeForNumber(SENDER_REG_LOCK)).thenReturn(Optional.of(new StoredVerificationCode("666666", System.currentTimeMillis(), null)));
|
when(pendingAccountsManager.getCodeForNumber(SENDER_REG_LOCK)).thenReturn(Optional.of(new StoredVerificationCode("666666", System.currentTimeMillis(), null, null)));
|
||||||
when(pendingAccountsManager.getCodeForNumber(SENDER_OVER_PIN)).thenReturn(Optional.of(new StoredVerificationCode("444444", System.currentTimeMillis(), null)));
|
when(pendingAccountsManager.getCodeForNumber(SENDER_OVER_PIN)).thenReturn(Optional.of(new StoredVerificationCode("444444", System.currentTimeMillis(), null, null)));
|
||||||
when(pendingAccountsManager.getCodeForNumber(SENDER_OVER_PREFIX)).thenReturn(Optional.of(new StoredVerificationCode("777777", System.currentTimeMillis(), "1234-push")));
|
when(pendingAccountsManager.getCodeForNumber(SENDER_OVER_PREFIX)).thenReturn(Optional.of(new StoredVerificationCode("777777", System.currentTimeMillis(), "1234-push", null)));
|
||||||
when(pendingAccountsManager.getCodeForNumber(SENDER_PREAUTH)).thenReturn(Optional.of(new StoredVerificationCode("555555", System.currentTimeMillis(), "validchallenge")));
|
when(pendingAccountsManager.getCodeForNumber(SENDER_PREAUTH)).thenReturn(Optional.of(new StoredVerificationCode("555555", System.currentTimeMillis(), "validchallenge", null)));
|
||||||
when(pendingAccountsManager.getCodeForNumber(SENDER_HAS_STORAGE)).thenReturn(Optional.of(new StoredVerificationCode("666666", System.currentTimeMillis(), null)));
|
when(pendingAccountsManager.getCodeForNumber(SENDER_HAS_STORAGE)).thenReturn(Optional.of(new StoredVerificationCode("666666", System.currentTimeMillis(), null, null)));
|
||||||
when(pendingAccountsManager.getCodeForNumber(SENDER_TRANSFER)).thenReturn(Optional.of(new StoredVerificationCode("1234", System.currentTimeMillis(), null)));
|
when(pendingAccountsManager.getCodeForNumber(SENDER_TRANSFER)).thenReturn(Optional.of(new StoredVerificationCode("1234", System.currentTimeMillis(), null, null)));
|
||||||
|
|
||||||
when(accountsManager.get(eq(SENDER_PIN))).thenReturn(Optional.of(senderPinAccount));
|
when(accountsManager.get(eq(SENDER_PIN))).thenReturn(Optional.of(senderPinAccount));
|
||||||
when(accountsManager.get(eq(SENDER_REG_LOCK))).thenReturn(Optional.of(senderRegLockAccount));
|
when(accountsManager.get(eq(SENDER_REG_LOCK))).thenReturn(Optional.of(senderRegLockAccount));
|
||||||
|
@ -884,7 +884,7 @@ class AccountControllerTest {
|
||||||
final String number = "+12345678901";
|
final String number = "+12345678901";
|
||||||
final String challenge = "challenge";
|
final String challenge = "challenge";
|
||||||
|
|
||||||
when(pendingAccountsManager.getCodeForNumber(number)).thenReturn(Optional.of(new StoredVerificationCode("123456", System.currentTimeMillis(), challenge)));
|
when(pendingAccountsManager.getCodeForNumber(number)).thenReturn(Optional.of(new StoredVerificationCode("123456", System.currentTimeMillis(), challenge, null)));
|
||||||
|
|
||||||
Response response =
|
Response response =
|
||||||
resources.getJerseyTest()
|
resources.getJerseyTest()
|
||||||
|
|
|
@ -118,8 +118,8 @@ public class DeviceControllerTest {
|
||||||
when(account.isSenderKeySupported()).thenReturn(true);
|
when(account.isSenderKeySupported()).thenReturn(true);
|
||||||
when(account.isAnnouncementGroupSupported()).thenReturn(true);
|
when(account.isAnnouncementGroupSupported()).thenReturn(true);
|
||||||
|
|
||||||
when(pendingDevicesManager.getCodeForNumber(AuthHelper.VALID_NUMBER)).thenReturn(Optional.of(new StoredVerificationCode("5678901", System.currentTimeMillis(), null)));
|
when(pendingDevicesManager.getCodeForNumber(AuthHelper.VALID_NUMBER)).thenReturn(Optional.of(new StoredVerificationCode("5678901", System.currentTimeMillis(), null, null)));
|
||||||
when(pendingDevicesManager.getCodeForNumber(AuthHelper.VALID_NUMBER_TWO)).thenReturn(Optional.of(new StoredVerificationCode("1112223", System.currentTimeMillis() - TimeUnit.MINUTES.toMillis(31), null)));
|
when(pendingDevicesManager.getCodeForNumber(AuthHelper.VALID_NUMBER_TWO)).thenReturn(Optional.of(new StoredVerificationCode("1112223", System.currentTimeMillis() - TimeUnit.MINUTES.toMillis(31), null, null)));
|
||||||
when(accountsManager.get(AuthHelper.VALID_NUMBER)).thenReturn(Optional.of(account));
|
when(accountsManager.get(AuthHelper.VALID_NUMBER)).thenReturn(Optional.of(account));
|
||||||
when(accountsManager.get(AuthHelper.VALID_NUMBER_TWO)).thenReturn(Optional.of(maxedAccount));
|
when(accountsManager.get(AuthHelper.VALID_NUMBER_TWO)).thenReturn(Optional.of(maxedAccount));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue