From 75a4f0014f80f4f23ad602b0620fdb656ea2803e Mon Sep 17 00:00:00 2001 From: Takashi Matsuo Date: Thu, 14 May 2020 19:12:35 +0000 Subject: [PATCH] [vision] testing: re-enable test_async_detect_document fixes #3753 also made the data PDF to be smaller. --- vision/cloud-client/detect/detect_test.py | 5 ++--- .../document/custom_0773375000_title_only.pdf | Bin 0 -> 24451 bytes 2 files changed, 2 insertions(+), 3 deletions(-) create mode 100644 vision/cloud-client/detect/resources/cloud-samples-data/vision/document/custom_0773375000_title_only.pdf diff --git a/vision/cloud-client/detect/detect_test.py b/vision/cloud-client/detect/detect_test.py index a60611346afb..1424812b113c 100644 --- a/vision/cloud-client/detect/detect_test.py +++ b/vision/cloud-client/detect/detect_test.py @@ -16,7 +16,6 @@ import uuid from google.cloud import storage -import pytest import detect @@ -209,7 +208,6 @@ def test_detect_crop_hints_uri(capsys): assert 'bounds: ' in out -@pytest.mark.skip("It's constantly failing.") def test_async_detect_document(capsys): storage_client = storage.Client() bucket = storage_client.get_bucket(BUCKET) @@ -219,7 +217,8 @@ def test_async_detect_document(capsys): assert len(list(bucket.list_blobs(prefix=OUTPUT_PREFIX))) == 0 - uri = 'gs://{}/vision/document/custom_0773375000.pdf'.format(ASSET_BUCKET) + uri = 'gs://{}/vision/document/custom_0773375000_title_only.pdf'.format( + ASSET_BUCKET) detect.async_detect_document( gcs_source_uri=uri, gcs_destination_uri=GCS_DESTINATION_URI) diff --git a/vision/cloud-client/detect/resources/cloud-samples-data/vision/document/custom_0773375000_title_only.pdf b/vision/cloud-client/detect/resources/cloud-samples-data/vision/document/custom_0773375000_title_only.pdf new file mode 100644 index 0000000000000000000000000000000000000000..514ca6b1bf9acd6a8726b9578d9b8c129148b1a1 GIT binary patch literal 24451 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