mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-25 11:20:47 +01:00
committed by
Greyson Parrelli
parent
cf24b22de9
commit
040d05a0a6
@@ -5,9 +5,9 @@
|
||||
|
||||
package org.thoughtcrime.securesms.service
|
||||
|
||||
import org.junit.Assert
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Assert.assertTrue
|
||||
import org.junit.Test
|
||||
import org.thoughtcrime.securesms.BaseUnitTest
|
||||
import org.thoughtcrime.securesms.testutil.MockRandom
|
||||
import java.time.Duration
|
||||
import java.time.LocalDateTime
|
||||
@@ -15,14 +15,14 @@ import java.util.concurrent.TimeUnit
|
||||
import kotlin.time.Duration.Companion.days
|
||||
import kotlin.time.Duration.Companion.minutes
|
||||
|
||||
class BackListenerTest : BaseUnitTest() {
|
||||
class BackListenerTest {
|
||||
|
||||
@Test
|
||||
fun testBackupJitterExactlyWithinJitterWindow() {
|
||||
val jitterWindowSeconds = Math.toIntExact(TimeUnit.MINUTES.toSeconds(10))
|
||||
val now = LocalDateTime.of(2024, 6, 7, 2, 55)
|
||||
val next = MessageBackupListener.getNextDailyBackupTimeFromNowWithJitter(now, 3, 0, jitterWindowSeconds)
|
||||
Assert.assertEquals(8, next.dayOfMonth)
|
||||
assertEquals(8, next.dayOfMonth)
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -30,7 +30,7 @@ class BackListenerTest : BaseUnitTest() {
|
||||
val jitterWindowSeconds = Math.toIntExact(TimeUnit.MINUTES.toSeconds(10))
|
||||
val now = LocalDateTime.of(2024, 6, 7, 2, 58)
|
||||
val next = MessageBackupListener.getNextDailyBackupTimeFromNowWithJitter(now, 3, 0, jitterWindowSeconds)
|
||||
Assert.assertEquals(8, next.dayOfMonth)
|
||||
assertEquals(8, next.dayOfMonth)
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -38,7 +38,7 @@ class BackListenerTest : BaseUnitTest() {
|
||||
val jitterWindowSeconds = Math.toIntExact(TimeUnit.MINUTES.toSeconds(10))
|
||||
val now = LocalDateTime.of(2024, 6, 7, 2, 54, 59)
|
||||
val next = MessageBackupListener.getNextDailyBackupTimeFromNowWithJitter(now, 3, 0, jitterWindowSeconds)
|
||||
Assert.assertEquals(7, next.dayOfMonth)
|
||||
assertEquals(7, next.dayOfMonth)
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -46,7 +46,7 @@ class BackListenerTest : BaseUnitTest() {
|
||||
val jitterWindowSeconds = Math.toIntExact(TimeUnit.MINUTES.toSeconds(10))
|
||||
val now = LocalDateTime.of(2024, 6, 7, 3, 15, 0)
|
||||
val next = MessageBackupListener.getNextDailyBackupTimeFromNowWithJitter(now, 3, 0, jitterWindowSeconds)
|
||||
Assert.assertEquals(8, next.dayOfMonth)
|
||||
assertEquals(8, next.dayOfMonth)
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -56,6 +56,6 @@ class BackListenerTest : BaseUnitTest() {
|
||||
val now: LocalDateTime = LocalDateTime.of(2024, 6, 27, 23, 57, 0)
|
||||
val next: LocalDateTime = MessageBackupListener.getNextDailyBackupTimeFromNowWithJitter(now, 0, 0, jitterWindowSeconds, mockRandom)
|
||||
|
||||
Assert.assertTrue(Duration.between(now, next).toSeconds() > (1.days.inWholeSeconds - jitterWindowSeconds))
|
||||
assertTrue(Duration.between(now, next).toSeconds() > (1.days.inWholeSeconds - jitterWindowSeconds))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
|
||||
package org.thoughtcrime.securesms.service;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.thoughtcrime.securesms.BaseUnitTest;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.Parameterized;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
@@ -15,15 +15,22 @@ import java.util.Optional;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.mockito.ArgumentMatchers.anyBoolean;
|
||||
import static org.mockito.ArgumentMatchers.contains;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
/**
|
||||
* Tests {@link VerificationCodeParser}
|
||||
*/
|
||||
public class VerificationCodeParserTest extends BaseUnitTest {
|
||||
@RunWith(Parameterized.class)
|
||||
public class VerificationCodeParserTest {
|
||||
|
||||
private final String input;
|
||||
private final String expectedOutput;
|
||||
|
||||
public VerificationCodeParserTest(String input, String expectedOutput) {
|
||||
this.input = input;
|
||||
this.expectedOutput = expectedOutput;
|
||||
}
|
||||
|
||||
@Parameterized.Parameters(name = "{index}: test with input={0} and expectedOutput={1}")
|
||||
public static Collection<String[]> challenges() {
|
||||
return Arrays.asList(new String[][]{
|
||||
{"Your TextSecure verification code: 337-337", "337337"},
|
||||
@@ -95,19 +102,10 @@ public class VerificationCodeParserTest extends BaseUnitTest {
|
||||
});
|
||||
}
|
||||
|
||||
@Before
|
||||
@Override
|
||||
public void setUp() throws Exception {
|
||||
super.setUp();
|
||||
when(sharedPreferences.getBoolean(contains("pref_verifying"), anyBoolean())).thenReturn(true);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChallenges() {
|
||||
for (String[] challenge : challenges()) {
|
||||
Optional<String> result = VerificationCodeParser.parse(challenge[0]);
|
||||
assertTrue(result.isPresent());
|
||||
assertEquals(challenge[1], result.get());
|
||||
}
|
||||
Optional<String> result = VerificationCodeParser.parse(input);
|
||||
assertTrue(result.isPresent());
|
||||
assertEquals(expectedOutput, result.get());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user