Skip to content

Commit 11936cc

Browse files
Add ReadTime test
1 parent 6571240 commit 11936cc

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

firebase-firestore/src/test/java/com/google/firebase/firestore/remote/RemoteSerializerTest.java

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import static com.google.firebase.firestore.testutil.TestUtil.ref;
2929
import static com.google.firebase.firestore.testutil.TestUtil.setMutation;
3030
import static com.google.firebase.firestore.testutil.TestUtil.verifyMutation;
31+
import static com.google.firebase.firestore.testutil.TestUtil.version;
3132
import static com.google.firebase.firestore.testutil.TestUtil.wrap;
3233
import static java.util.Arrays.asList;
3334
import static org.junit.Assert.assertEquals;
@@ -1040,6 +1041,35 @@ public void testEncodesResumeTokens() {
10401041
serializer.decodeQueryTarget(serializer.encodeQueryTarget(q.toTarget())), q.toTarget());
10411042
}
10421043

1044+
@Test
1045+
public void testEncodesReadTime() {
1046+
Query q = Query.atPath(ResourcePath.fromString("docs"));
1047+
TargetData targetData =
1048+
new TargetData(q.toTarget(), 1, 2, QueryPurpose.LISTEN)
1049+
.withResumeToken(ByteString.EMPTY, version(4000000));
1050+
Target actual = serializer.encodeTarget(targetData);
1051+
1052+
StructuredQuery.Builder structuredQueryBuilder =
1053+
StructuredQuery.newBuilder()
1054+
.addFrom(CollectionSelector.newBuilder().setCollectionId("docs"))
1055+
.addOrderBy(defaultKeyOrder());
1056+
1057+
QueryTarget.Builder queryBuilder =
1058+
QueryTarget.newBuilder()
1059+
.setParent("projects/p/databases/d/documents")
1060+
.setStructuredQuery(structuredQueryBuilder);
1061+
Target expected =
1062+
Target.newBuilder()
1063+
.setQuery(queryBuilder)
1064+
.setTargetId(1)
1065+
.setReadTime(Timestamp.newBuilder().setSeconds(4))
1066+
.build();
1067+
1068+
assertEquals(expected, actual);
1069+
assertEquals(
1070+
serializer.decodeQueryTarget(serializer.encodeQueryTarget(q.toTarget())), q.toTarget());
1071+
}
1072+
10431073
/**
10441074
* Wraps the given query in TargetData. This is useful because the APIs we're testing accept
10451075
* TargetData, but for the most part we're just testing variations on Query.

0 commit comments

Comments
 (0)