8000 [healthcare] fix: fix broken tests for healthcare API (#3253) · signalarun/python-docs-samples@f8a1d3f · GitHub
[go: up one dir, main page]

Skip to content

Commit f8a1d3f

Browse files
author
Takashi Matsuo
authored
[healthcare] fix: fix broken tests for healthcare API (GoogleCloudPlatform#3253)
* [healthcare] fix: fix broken tests for healthcare API fixes GoogleCloudPlatform#3120 * use uuid for the resource names * add retries around list_messages calls
1 parent ff791ec commit f8a1d3f

File tree

4 files changed

+53
-35
lines changed

4 files changed

+53
-35
lines changed

healthcare/api-client/hl7v2/hl7v2_messages.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ def list_hl7v2_messages(
190190
hl7v2_messages_parent, hl7v2_store_id)
191191

192192
hl7v2_messages = client.projects().locations().datasets().hl7V2Stores(
193-
).messages().list(parent=hl7v2_message_path).execute().get('messages', [])
193+
).messages().list(parent=hl7v2_message_path).execute().get('hl7V2Messages', [])
194194

195195
for hl7v2_message in hl7v2_messages:
196196
print(hl7v2_message)

healthcare/api-client/hl7v2/hl7v2_messages_test.py

Lines changed: 47 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,10 @@
1414

1515
import os
1616
import pytest
17-
import re
1817
import sys
19-
import time
18+
import uuid
19+
20+
from gcp_devrel.testing import eventually_consistent
2021

2122
# Add datasets for bootstrapping datasets for testing
2223
sys.path.append(os.path.join(os.path.dirname(__file__), '..', 'datasets')) # noqa
@@ -28,8 +29,8 @@
2829
project_id = os.environ['GOOGLE_CLOUD_PROJECT']
2930
service_account_json = os.environ['GOOGLE_APPLICATION_CREDENTIALS']
3031

31-
dataset_id = 'test_dataset_{}'.format(int(time.time()))
32-
hl7v2_store_id = 'test_hl7v2_store-{}'.format(int(time.time()))
32+
dataset_id = 'test_dataset_{}'.format(uuid.uuid4())
33+
hl7v2_store_id = 'test_hl7v2_store-{}'.format(uuid.uuid4())
3334
hl7v2_message_file = 'resources/hl7-sample-ingest.json'
3435
label_key = 'PROCESSED'
3536
label_value = 'TRUE'
@@ -81,15 +82,20 @@ def test_CRUD_hl7v2_message(test_dataset, test_hl7v2_store, capsys):
8182
hl7v2_store_id,
8283
hl7v2_message_file)
8384

84-
hl7v2_messages_list = hl7v2_messages.list_hl7v2_messages(
85-
service_account_json,
86-
project_id,
87-
cloud_region,
88-
dataset_id,
89-
hl7v2_store_id)
90-
91-
hl7v2_messages_list_to_str = str(hl7v2_messages_list).split('/', 9)[9]
92-
hl7v2_message_id = re.sub('\']', '', hl7v2_messages_list_to_str)
85+
hl7v2_message_id = ""
86+
@eventually_consistent.call
87+
def _():
88+
hl7v2_messages_list = hl7v2_messages.list_hl7v2_messages(
89+
service_account_json,
90+
project_id,
91+
cloud_region,
92+
dataset_id,
93+
hl7v2_store_id)
94+
95+
assert len(hl7v2_messages_list) > 0
96+
hl7v2_message_name = hl7v2_messages_list[0].get('name')
97+
nonlocal hl7v2_message_id
98+
hl7v2_message_id = hl7v2_message_name.split('/', 9)[9]
9399

94100
hl7v2_messages.get_hl7v2_message(
95101
service_account_json,
@@ -124,15 +130,20 @@ def test_ingest_hl7v2_message(test_dataset, test_hl7v2_store, capsys):
124130
hl7v2_store_id,
125131
hl7v2_message_file)
126132

127-
hl7v2_messages_list = hl7v2_messages.list_hl7v2_messages(
128-
service_account_json,
129-
project_id,
130-
cloud_region,
131-
dataset_id,
132-
hl7v2_store_id)
133-
134-
hl7v2_messages_list_to_str = str(hl7v2_messages_list).split('/', 9)[9]
135-
hl7v2_message_id = re.sub('\']', '', hl7v2_messages_list_to_str)
133+
hl7v2_message_id = ""
134+
@eventually_consistent.call
135+
def _():
136+
hl7v2_messages_list = hl7v2_messages.list_hl7v2_messages(
137+
service_account_json,
138+
project_id,
139+
cloud_region,
140+
dataset_id,
141+
hl7v2_store_id)
142+
143+
assert len(hl7v2_messages_list) > 0
144+
hl7v2_message_name = hl7v2_messages_list[0].get('name')
145+
nonlocal hl7v2_message_id
146+
hl7v2_message_id = hl7v2_message_name.split('/', 9)[9]
136147

137148
hl7v2_messages.get_hl7v2_message(
138149
service_account_json,
@@ -167,15 +178,20 @@ def test_patch_hl7v2_message(test_dataset, test_hl7v2_store, capsys):
167178
hl7v2_store_id,
168179
hl7v2_message_file)
169180

170-
hl7v2_messages_list = hl7v2_messages.list_hl7v2_messages(
171-
service_account_json,
172-
project_id,
173-
cloud_region,
174-
dataset_id,
175-
hl7v2_store_id)
176-
177-
hl7v2_messages_list_to_str = str(hl7v2_messages_list).split('/', 9)[9]
178-
hl7v2_message_id = re.sub('\']', '', hl7v2_messages_list_to_str)
181+
hl7v2_message_id = ""
182+
@eventually_consistent.call
183+
def _():
184+
hl7v2_messages_list = hl7v2_messages.list_hl7v2_messages(
185+
service_account_json,
186+
project_id,
187+
cloud_region,
188< 2364 span class="diff-text-marker">+
dataset_id,
189+
hl7v2_store_id)
190+
191+
assert len(hl7v2_messages_list) > 0
192+
hl7v2_message_name = hl7v2_messages_list[0].get('name')
193+
nonlocal hl7v2_message_id
194+
hl7v2_message_id = hl7v2_message_name.split('/', 9)[9]
179195

180196
hl7v2_messages.patch_hl7v2_message(
181197
service_account_json,

healthcare/api-client/hl7v2/hl7v2_stores_test.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
import os
1616
import pytest
1717
import sys
18-
import time
18+
import uuid
1919

2020
# Add datasets for bootstrapping datasets for testing
2121
sys.path.append(os.path.join(os.path.dirname(__file__), '..', 'datasets')) # noqa
@@ -26,8 +26,8 @@
2626
project_id = os.environ['GOOGLE_CLOUD_PROJECT']
2727
service_account_json = os.environ['GOOGLE_APPLICATION_CREDENTIALS']
2828

29-
dataset_id = 'test_dataset_{}'.format(int(time.time()))
30-
hl7v2_store_id = 'test_hl7v2_store-{}'.format(int(time.time()))
29+
dataset_id = 'test_dataset_{}'.format(uuid.uuid4())
30+
hl7v2_store_id = 'test_hl7v2_store-{}'.format(uuid.uuid4())
3131

3232

3333
@pytest.fixture(scope='module')
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
11
pytest==5.3.2
2+
gcp-devrel-py-tools==0.0.15
3+
google-cloud-core

0 commit comments

Comments
 (0)
0