@@ -4608,6 +4608,8 @@ public void testGetResolvesToPersistentCacheWhenOfflineAndNoListeners()
4608
4608
}
4609
4609
}
4610
4610
4611
+
4612
+
4611
4613
@ Test
4612
4614
public void testGetResolvesToCacheWhenOnlineAndParentListener ()
4613
4615
throws DatabaseException , InterruptedException {
@@ -4620,8 +4622,7 @@ public void testGetResolvesToCacheWhenOnlineAndParentListener()
4620
4622
FirebaseDatabase readDb = FirebaseDatabase .getInstance (readApp );
4621
4623
long val = 34 ;
4622
4624
DatabaseReference writeNode = writeDb .getReference ().push ();
4623
- String writeKey = writeNode .getKey ();
4624
- DatabaseReference readNode = readDb .getReference ().child (writeKey );
4625
+ DatabaseReference readNode = IntegrationTestHelpers .translateReference (writeNode , readDb );
4625
4626
4626
4627
try {
4627
4628
await (writeNode .setValue (val ));
@@ -4631,13 +4632,13 @@ public void testGetResolvesToCacheWhenOnlineAndParentListener()
4631
4632
topLevelNode ,
4632
4633
events -> {
4633
4634
assertEquals (1 , events .size ());
4634
- DataSnapshot childNode = events .get (0 ). getSnapshot (). child ( writeKey );
4635
+ DataSnapshot childNode = IntegrationTestHelpers . referenceAtPath ( writeNode , events .get (0 ));
4635
4636
assertEquals (val , childNode .getValue ());
4636
4637
return true ;
4637
4638
});
4638
4639
readFuture .timedGet ();
4639
- DataSnapshot snapshot = null ;
4640
- snapshot = await ( readNode . get ()) ;
4640
+ DataSnapshot snapshot = await ( readNode . get ()) ;
4641
+ ;
4641
4642
assertEquals (val , Objects .requireNonNull (snapshot .getValue ()));
4642
4643
} catch (TestFailure | TimeoutException | ExecutionException e ) {
4643
4644
e .printStackTrace ();
@@ -4656,10 +4657,9 @@ public void testGetResolvesToCacheWhenOnlineAndSameLevelListener()
4656
4657
FirebaseDatabase writeDb = FirebaseDatabase .getInstance (writeApp );
4657
4658
FirebaseDatabase readDb = FirebaseDatabase .getInstance (readApp );
4658
4659
long val = 34 ;
4659
- String writeKey = Objects .requireNonNull (writeDb .getReference ().push ().getKey ());
4660
- DatabaseReference writeNode = writeDb .getReference ().child (writeKey );
4660
+ DatabaseReference writeNode = writeDb .getReference ().push ();
4661
4661
await (writeNode .setValue (val ));
4662
- DatabaseReference readNode = readDb . getReference (). child ( writeKey );
4662
+ DatabaseReference readNode = IntegrationTestHelpers . translateReference ( writeNode , readDb );
4663
4663
new ReadFuture (
4664
4664
readNode ,
4665
4665
events -> {
@@ -4747,14 +4747,7 @@ public void onCancelled(@NonNull DatabaseError error) {
4747
4747
4748
4748
try {
4749
4749
await (childWriteNode .setValue (val ));
4750
- new ReadFuture (
4751
- childReadNode ,
4752
- events -> {
4753
- assertEquals (1 , events .size ());
4754
- assertEquals (val , events .get (0 ).getSnapshot ().getValue ());
4755
- return true ;
4756
- })
4757
- .timedGet ();
4750
+ ReadFuture .untilEquals (childReadNode , val ).timedGet ();
4758
4751
childReadNode .addValueEventListener (listener );
4759
4752
DatabaseReference parentReadNode = readDb .getReference ().child (parentNodeKey );
4760
4753
IntegrationTestHelpers .waitFor (semaphore );
0 commit comments