7878import static org .junit .Assert .assertThrows ;
7979import static org .junit .Assume .assumeFalse ;
8080
81+ import org .junit .Ignore ;
8182import com .google .api .gax .rpc .ApiException ;
8283import com .google .api .gax .rpc .StatusCode ;
8384import com .google .cloud .Timestamp ;
@@ -2773,7 +2774,6 @@ public void testSubquery() throws Exception {
27732774 List <PipelineResult > results = firestore
27742775 .pipeline ()
27752776 .collection (collection .getPath ())
2776-
27772777 .select (sub .toArrayExpression ().as ("sub_docs" ))
27782778 .limit (1 )
27792779 .execute ()
@@ -2946,7 +2946,7 @@ public void testArraySubqueryInWhereStage() throws Exception {
29462946 if ("doc1" .equals (doc .getKey ())) {
29472947 docRef .collection (subCollName ).document ("sub1" ).set (map ("val" , "target_val" , "parent_id" , "1" )).get (5 ,
29482948 java .util .concurrent .TimeUnit .SECONDS );
2949-
2949+
29502950
29512951 } else {
29522952 docRef .collection (subCollName ).document ("sub1" ).set (map ("val" , "other_val" , "parent_id" , "2" )).get (5 ,
@@ -2990,10 +2990,11 @@ public void testSingleLookupScalarSubquery() throws Exception {
29902990 .collection (collection .document ("doc1" ).collection ("users" ).getPath ())
29912991 .where (com .google .cloud .firestore .pipeline .expressions .Expression .field ("name" )
29922992 .equal (com .google .cloud .firestore .pipeline .expressions .Expression .variable ("uname" )))
2993- .select (com .google .cloud .firestore .pipeline .expressions .Expression .currentDocument ( ).as ("profile " ));
2993+ .select (com .google .cloud .firestore .pipeline .expressions .Expression .field ( "name" ).as ("name " ));
29942994
29952995 List <PipelineResult > results = firestore
29962996 .pipeline ()
2997+
29972998 .collection (collection .getPath ())
29982999 .define (com .google .cloud .firestore .pipeline .expressions .Expression .constant ("Alice" ).as ("uname" ))
29993000 .select (userProfileSub .toScalarExpression ().as ("user_info" ))
@@ -3003,9 +3004,10 @@ public void testSingleLookupScalarSubquery() throws Exception {
30033004 .getResults ();
30043005
30053006 assertThat (data (results )).containsExactly (
3006- map ("user_info" , map ( "name" , " Alice") ));
3007+ map ("user_info" , " Alice" ));
30073008 }
30083009
3010+ @ Ignore ("Pending for backend support" )
30093011 @ Test
30103012 public void testMissingSubcollectionReturnsEmptyArray () throws Exception {
30113013 Map <String , Map <String , Object >> testDocs = map (
@@ -3016,20 +3018,19 @@ public void testMissingSubcollectionReturnsEmptyArray() throws Exception {
30163018 // Notably NO subcollections are added
30173019 }
30183020
3019- Pipeline missingSub = firestore .pipeline ()
3020- .collection (collection .document ("doc1" ).collection ("does_not_exist" ).getPath ())
3021+ Pipeline missingSub = Pipeline .subcollection ("does_not_exist" )
30213022 .select (com .google .cloud .firestore .pipeline .expressions .Expression .variable ("p" ).as ("sub_p" ));
30223023
3023-
3024-
3024+
3025+
30253026
30263027 List <PipelineResult > results = firestore
30273028 .pipeline ()
30283029 .collection (collection .getPath ())
3029- .define (com .google .cloud .firestore .pipeline .expressions .Expression .currentDocument ( ).as ("p" ))
3030+ .define (com .google .cloud .firestore .pipeline .expressions .Expression .variable ( "parentDoc" ).as ("p" ))
30303031 .select (missingSub .toArrayExpression ().as ("missing_data" ))
30313032 .limit (1 )
3032-
3033+
30333034 .execute ()
30343035 .get ()
30353036 .getResults ();
0 commit comments