Respect the 206 paged response from the server group logs endpoint.

Prevent the deduplicate message logic firing and log it if it does.
This commit is contained in:
Alan Evans
2020-10-09 17:45:45 -03:00
parent 07b0d8cf6e
commit 054c705fe2
6 changed files with 206 additions and 11 deletions

View File

@@ -0,0 +1,49 @@
package org.whispersystems.signalservice.internal.push;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import java.util.Arrays;
import java.util.Collection;
import static org.junit.Assert.assertEquals;
@RunWith(Parameterized.class)
public final class ContentRange_parse_Test {
@Parameterized.Parameter(0)
public String input;
@Parameterized.Parameter(1)
public int expectedRangeStart;
@Parameterized.Parameter(2)
public int expectedRangeEnd;
@Parameterized.Parameter(3)
public int expectedSize;
@Parameterized.Parameters(name = "Content-Range: \"{0}\"")
public static Collection<Object[]> data() {
return Arrays.asList(new Object[][]{
{ "versions 1-2/3", 1, 2, 3 },
{ "versions 23-45/67", 23, 45, 67 },
});
}
@Test
public void rangeStart() {
assertEquals(expectedRangeStart, ContentRange.parse(input).get().getRangeStart());
}
@Test
public void rangeEnd() {
assertEquals(expectedRangeEnd, ContentRange.parse(input).get().getRangeEnd());
}
@Test
public void totalSize() {
assertEquals(expectedSize, ContentRange.parse(input).get().getTotalSize());
}
}

View File

@@ -0,0 +1,34 @@
package org.whispersystems.signalservice.internal.push;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import java.util.Arrays;
import java.util.Collection;
import static org.junit.Assert.assertFalse;
@RunWith(Parameterized.class)
public final class ContentRange_parse_withInvalidStrings_Test {
@Parameterized.Parameter(0)
public String input;
@Parameterized.Parameters(name = "Content-Range: \"{0}\"")
public static Collection<Object[]> data() {
return Arrays.asList(new Object[][]{
{ null },
{ "" },
{ "23-45/67" },
{ "ersions 23-45/67" },
{ "versions 23-45" },
{ "versions a-b/c" }
});
}
@Test
public void parse_should_be_absent() {
assertFalse(ContentRange.parse(input).isPresent());
}
}