From 5e6cd5249e411982cff7eff281872174c0ef368f Mon Sep 17 00:00:00 2001 From: wu-hui Date: Sat, 28 Dec 2024 15:57:34 -0500 Subject: [PATCH] Proto update sync and add query spec tests back --- packages/firestore/src/local/local_serializer.ts | 4 +++- packages/firestore/src/protos/firestore_proto_api.ts | 2 +- .../firestore/src/protos/google/firestore/v1/firestore.proto | 2 +- packages/firestore/src/protos/protos.json | 4 ++-- packages/firestore/src/remote/serializer.ts | 4 ++-- packages/firestore/test/unit/specs/describe_spec.ts | 2 +- 6 files changed, 10 insertions(+), 8 deletions(-) diff --git a/packages/firestore/src/local/local_serializer.ts b/packages/firestore/src/local/local_serializer.ts index 69709639ef1..5c9a9cb70e8 100644 --- a/packages/firestore/src/local/local_serializer.ts +++ b/packages/firestore/src/local/local_serializer.ts @@ -331,7 +331,9 @@ export function toDbTarget( function isPipelineQueryTarget( dbQuery: DbQuery ): dbQuery is PublicPipelineQueryTarget { - return (dbQuery as PublicPipelineQueryTarget).pipeline !== undefined; + return ( + (dbQuery as PublicPipelineQueryTarget).structuredPipeline !== undefined + ); } /** diff --git a/packages/firestore/src/protos/firestore_proto_api.ts b/packages/firestore/src/protos/firestore_proto_api.ts index 926c4422cc5..d20cd2df4f9 100644 --- a/packages/firestore/src/protos/firestore_proto_api.ts +++ b/packages/firestore/src/protos/firestore_proto_api.ts @@ -357,7 +357,7 @@ export declare namespace firestoreV1ApiClientInterfaces { structuredQuery?: StructuredQuery; } interface PipelineQueryTarget { - pipeline?: StructuredPipeline; + structuredPipeline?: StructuredPipeline; } interface ReadOnly { readTime?: string; diff --git a/packages/firestore/src/protos/google/firestore/v1/firestore.proto b/packages/firestore/src/protos/google/firestore/v1/firestore.proto index 09605a1b708..be914ccdfce 100644 --- a/packages/firestore/src/protos/google/firestore/v1/firestore.proto +++ b/packages/firestore/src/protos/google/firestore/v1/firestore.proto @@ -918,7 +918,7 @@ message Target { // The pipeline to run. oneof pipeline_type { // A pipelined operation in structured format. - StructuredPipeline pipeline = 1; + StructuredPipeline structured_pipeline = 1; } } diff --git a/packages/firestore/src/protos/protos.json b/packages/firestore/src/protos/protos.json index c489388e1be..15093c0f981 100644 --- a/packages/firestore/src/protos/protos.json +++ b/packages/firestore/src/protos/protos.json @@ -2421,12 +2421,12 @@ "oneofs": { "pipelineType": { "oneof": [ - "pipeline" + "structuredPipeline" ] } }, "fields": { - "pipeline": { + "structuredPipeline": { "type": "StructuredPipeline", "id": 1 } diff --git a/packages/firestore/src/remote/serializer.ts b/packages/firestore/src/remote/serializer.ts index 73836c70dbe..b2630742dc2 100644 --- a/packages/firestore/src/remote/serializer.ts +++ b/packages/firestore/src/remote/serializer.ts @@ -1098,7 +1098,7 @@ export function fromPipelineTarget( target: ProtoPipelineQueryTarget, serializer: JsonProtoSerializer ): CorePipeline { - const pipeline = target.pipeline; + const pipeline = target.structuredPipeline; hardAssert( (pipeline?.pipeline?.stages ?? []).length > 0, 'Deserializing pipeline without any stages.' @@ -1114,7 +1114,7 @@ export function toPipelineTarget( target: CorePipeline ): ProtoPipelineQueryTarget { return { - pipeline: { + structuredPipeline: { pipeline: { stages: target.stages.map(s => s._toProto(serializer)) } diff --git a/packages/firestore/test/unit/specs/describe_spec.ts b/packages/firestore/test/unit/specs/describe_spec.ts index 87c90de683b..5e0d098e2ba 100644 --- a/packages/firestore/test/unit/specs/describe_spec.ts +++ b/packages/firestore/test/unit/specs/describe_spec.ts @@ -187,7 +187,7 @@ export function specTest( ? [true, false] : [false]; for (const usePersistence of persistenceModes) { - const convertToPipelines = [true]; + const convertToPipelines = [false, true]; for (const convertToPipeline of convertToPipelines) { const runner = getTestRunner(tags, usePersistence, convertToPipeline); const timeout = getTestTimeout(tags);