use of com.google.firestore.v1.Document in project qpp-conversion-tool by CMSgov.
the class QrdaDecoderEngineTest method topLevelNodeHasTemplateId.
@Test
void topLevelNodeHasTemplateId() {
Document document = new Document();
Element testElement = createGenericElement();
document.addContent(testElement);
addChildToParent(testElement, createFinishElement());
QrdaDecoderEngine objectUnderTest = new QrdaDecoderEngine(context);
Node node = objectUnderTest.decode(testElement);
assertThat(node.getType()).isEqualTo(TemplateId.IA_SECTION);
}
use of com.google.firestore.v1.Document in project qpp-conversion-tool by CMSgov.
the class QrdaDecoderEngineTest method topLevelNodeDoesntHaveTemplateId.
@Test
void topLevelNodeDoesntHaveTemplateId() {
Document document = new Document();
Element testElement = createGenericElement();
document.addContent(testElement);
Element secondLevelElement = createGenericElement();
addChildToParent(testElement, secondLevelElement);
addChildToParent(secondLevelElement, createFinishElement());
QrdaDecoderEngine objectUnderTest = new QrdaDecoderEngine(context);
Node node = objectUnderTest.decode(testElement);
assertThat(node.getType()).isEqualTo(TemplateId.PLACEHOLDER);
assertThat(node.getChildNodes().get(0).getType()).isEqualTo(TemplateId.IA_SECTION);
}
use of com.google.firestore.v1.Document in project beam by apache.
the class AnnotateTextIT method analyzesLanguage.
@Test
public void analyzesLanguage() {
Document doc = Document.newBuilder().setContent(TEST_STRING).setType(Document.Type.PLAIN_TEXT).build();
AnnotateTextRequest.Features features = AnnotateTextRequest.Features.newBuilder().setExtractSyntax(true).build();
PCollection<AnnotateTextResponse> responses = testPipeline.apply(Create.of(doc)).apply(AnnotateText.newBuilder().setFeatures(features).build());
PAssert.that(responses).satisfies(new VerifyTextAnnotationResult());
testPipeline.run().waitUntilFinish();
}
use of com.google.firestore.v1.Document in project beam by apache.
the class FirestoreV1FnListDocumentsTest method resumeFromLastReadValue.
@Override
public void resumeFromLastReadValue() throws Exception {
when(ff.getFirestoreStub(any())).thenReturn(stub);
when(ff.getRpcQos(any())).thenReturn(rpcQos);
when(rpcQos.newReadAttempt(any())).thenReturn(attempt);
when(attempt.awaitSafeToProceed(any())).thenReturn(true);
// First page of the response
ListDocumentsRequest request1 = ListDocumentsRequest.newBuilder().setParent(String.format("projects/%s/databases/(default)/document", projectId)).build();
ListDocumentsResponse response1 = ListDocumentsResponse.newBuilder().addDocuments(Document.newBuilder().setName("doc_1-1").putAllFields(ImmutableMap.of("foo", Value.newBuilder().setStringValue("bar").build())).build()).addDocuments(Document.newBuilder().setName("doc_1-2").putAllFields(ImmutableMap.of("foo", Value.newBuilder().setStringValue("bar").build())).build()).addDocuments(Document.newBuilder().setName("doc_1-3").putAllFields(ImmutableMap.of("foo", Value.newBuilder().setStringValue("bar").build())).build()).setNextPageToken("page2").build();
when(page1.getNextPageToken()).thenReturn(response1.getNextPageToken());
when(page1.getResponse()).thenReturn(response1);
when(page1.hasNextPage()).thenReturn(true);
when(callable.call(request1)).thenReturn(pagedResponse1);
doNothing().when(attempt).checkCanRetry(any(), eq(RETRYABLE_ERROR));
when(pagedResponse1.iteratePages()).thenAnswer(invocation -> new Iterable<ListDocumentsPage>() {
@Override
public Iterator<ListDocumentsPage> iterator() {
return new AbstractIterator<ListDocumentsPage>() {
private boolean first = true;
@Override
protected ListDocumentsPage computeNext() {
if (first) {
first = false;
return page1;
} else {
throw RETRYABLE_ERROR;
}
}
};
}
});
// Second page of the response
ListDocumentsRequest request2 = ListDocumentsRequest.newBuilder().setParent(String.format("projects/%s/databases/(default)/document", projectId)).setPageToken("page2").build();
ListDocumentsResponse response2 = ListDocumentsResponse.newBuilder().addDocuments(Document.newBuilder().setName("doc_2-1").putAllFields(ImmutableMap.of("foo", Value.newBuilder().setStringValue("bar").build())).build()).build();
when(page2.getResponse()).thenReturn(response2);
when(page2.hasNextPage()).thenReturn(false);
when(callable.call(request2)).thenReturn(pagedResponse2);
when(pagedResponse2.iteratePages()).thenReturn(ImmutableList.of(page2));
when(stub.listDocumentsPagedCallable()).thenReturn(callable);
when(ff.getFirestoreStub(any())).thenReturn(stub);
ArgumentCaptor<ListDocumentsResponse> responses = ArgumentCaptor.forClass(ListDocumentsResponse.class);
doNothing().when(processContext).output(responses.capture());
when(processContext.element()).thenReturn(request1);
ListDocumentsFn fn = new ListDocumentsFn(clock, ff, rpcQosOptions);
runFunction(fn);
List<ListDocumentsResponse> expected = newArrayList(response1, response2);
List<ListDocumentsResponse> allValues = responses.getAllValues();
assertEquals(expected, allValues);
}
use of com.google.firestore.v1.Document in project beam by apache.
the class FirestoreV1FnListDocumentsTest method endToEnd.
@Test
public void endToEnd() throws Exception {
// First page of the response
ListDocumentsRequest request1 = ListDocumentsRequest.newBuilder().setParent(String.format("projects/%s/databases/(default)/document", projectId)).build();
ListDocumentsResponse response1 = ListDocumentsResponse.newBuilder().addDocuments(Document.newBuilder().setName("doc_1-1").putAllFields(ImmutableMap.of("foo", Value.newBuilder().setStringValue("bar").build())).build()).addDocuments(Document.newBuilder().setName("doc_1-2").putAllFields(ImmutableMap.of("foo", Value.newBuilder().setStringValue("bar").build())).build()).addDocuments(Document.newBuilder().setName("doc_1-3").putAllFields(ImmutableMap.of("foo", Value.newBuilder().setStringValue("bar").build())).build()).setNextPageToken("page2").build();
when(page1.getNextPageToken()).thenReturn(response1.getNextPageToken());
when(page1.getResponse()).thenReturn(response1);
when(page1.hasNextPage()).thenReturn(true);
// Second page of the response
ListDocumentsResponse response2 = ListDocumentsResponse.newBuilder().addDocuments(Document.newBuilder().setName("doc_2-1").putAllFields(ImmutableMap.of("foo", Value.newBuilder().setStringValue("bar").build())).build()).build();
when(page2.getResponse()).thenReturn(response2);
when(page2.hasNextPage()).thenReturn(false);
when(pagedResponse1.iteratePages()).thenReturn(ImmutableList.of(page1, page2));
when(callable.call(request1)).thenReturn(pagedResponse1);
when(stub.listDocumentsPagedCallable()).thenReturn(callable);
when(ff.getFirestoreStub(any())).thenReturn(stub);
RpcQosOptions options = RpcQosOptions.defaultOptions();
when(ff.getRpcQos(any())).thenReturn(FirestoreStatefulComponentFactory.INSTANCE.getRpcQos(options));
ArgumentCaptor<ListDocumentsResponse> responses = ArgumentCaptor.forClass(ListDocumentsResponse.class);
doNothing().when(processContext).output(responses.capture());
when(processContext.element()).thenReturn(request1);
ListDocumentsFn fn = new ListDocumentsFn(clock, ff, options);
runFunction(fn);
List<ListDocumentsResponse> expected = newArrayList(response1, response2);
List<ListDocumentsResponse> allValues = responses.getAllValues();
assertEquals(expected, allValues);
}
Aggregations