Skip to content

Commit 030f315

Browse files
chore: Update gapic-generator-python to v1.11.8 (googleapis#393)
* chore: Update gapic-generator-python to v1.11.7 PiperOrigin-RevId: 573230664 Source-Link: googleapis/googleapis@93beed3 Source-Link: https://github.com/googleapis/googleapis-gen/commit/f4a4edaa8057639fcf6adf9179872280d1a8f651 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiZjRhNGVkYWE4MDU3NjM5ZmNmNmFkZjkxNzk4NzIyODBkMWE4ZjY1MSJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * chore: Update gapic-generator-python to v1.11.8 PiperOrigin-RevId: 574178735 Source-Link: googleapis/googleapis@7307199 Source-Link: https://github.com/googleapis/googleapis-gen/commit/ce3af21b7c559a87c2befc076be0e3aeda3a26f0 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiY2UzYWYyMWI3YzU1OWE4N2MyYmVmYzA3NmJlMGUzYWVkYTNhMjZmMCJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
1 parent 38e6598 commit 030f315

4 files changed

Lines changed: 125 additions & 50 deletions

File tree

packages/google-analytics-data/samples/generated_samples/snippet_metadata_google.analytics.data.v1alpha.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
],
99
"language": "PYTHON",
1010
"name": "google-analytics-data",
11-
"version": "0.17.2"
11+
"version": "0.1.0"
1212
},
1313
"snippets": [
1414
{

packages/google-analytics-data/samples/generated_samples/snippet_metadata_google.analytics.data.v1beta.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
],
99
"language": "PYTHON",
1010
"name": "google-analytics-data",
11-
"version": "0.17.2"
11+
"version": "0.1.0"
1212
},
1313
"snippets": [
1414
{

packages/google-analytics-data/tests/unit/gapic/data_v1alpha/test_alpha_analytics_data.py

Lines changed: 96 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2137,8 +2137,9 @@ def test_run_funnel_report_rest(request_type):
21372137
# Wrap the value into a proper Response obj
21382138
response_value = Response()
21392139
response_value.status_code = 200
2140-
pb_return_value = analytics_data_api.RunFunnelReportResponse.pb(return_value)
2141-
json_return_value = json_format.MessageToJson(pb_return_value)
2140+
# Convert return value to protobuf type
2141+
return_value = analytics_data_api.RunFunnelReportResponse.pb(return_value)
2142+
json_return_value = json_format.MessageToJson(return_value)
21422143

21432144
response_value._content = json_return_value.encode("UTF-8")
21442145
req.return_value = response_value
@@ -2259,6 +2260,75 @@ def test_create_audience_list_rest(request_type):
22592260
"state": 1,
22602261
"begin_creating_time": {"seconds": 751, "nanos": 543},
22612262
}
2263+
# The version of a generated dependency at test runtime may differ from the version used during generation.
2264+
# Delete any fields which are not present in the current runtime dependency
2265+
# See https://github.com/googleapis/gapic-generator-python/issues/1748
2266+
2267+
# Determine if the message type is proto-plus or protobuf
2268+
test_field = analytics_data_api.CreateAudienceListRequest.meta.fields[
2269+
"audience_list"
2270+
]
2271+
2272+
def get_message_fields(field):
2273+
# Given a field which is a message (composite type), return a list with
2274+
# all the fields of the message.
2275+
# If the field is not a composite type, return an empty list.
2276+
message_fields = []
2277+
2278+
if hasattr(field, "message") and field.message:
2279+
is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR")
2280+
2281+
if is_field_type_proto_plus_type:
2282+
message_fields = field.message.meta.fields.values()
2283+
# Add `# pragma: NO COVER` because there may not be any `*_pb2` field types
2284+
else: # pragma: NO COVER
2285+
message_fields = field.message.DESCRIPTOR.fields
2286+
return message_fields
2287+
2288+
runtime_nested_fields = [
2289+
(field.name, nested_field.name)
2290+
for field in get_message_fields(test_field)
2291+
for nested_field in get_message_fields(field)
2292+
]
2293+
2294+
subfields_not_in_runtime = []
2295+
2296+
# For each item in the sample request, create a list of sub fields which are not present at runtime
2297+
# Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime
2298+
for field, value in request_init["audience_list"].items(): # pragma: NO COVER
2299+
result = None
2300+
is_repeated = False
2301+
# For repeated fields
2302+
if isinstance(value, list) and len(value):
2303+
is_repeated = True
2304+
result = value[0]
2305+
# For fields where the type is another message
2306+
if isinstance(value, dict):
2307+
result = value
2308+
2309+
if result and hasattr(result, "keys"):
2310+
for subfield in result.keys():
2311+
if (field, subfield) not in runtime_nested_fields:
2312+
subfields_not_in_runtime.append(
2313+
{
2314+
"field": field,
2315+
"subfield": subfield,
2316+
"is_repeated": is_repeated,
2317+
}
2318+
)
2319+
2320+
# Remove fields from the sample request which are not present in the runtime version of the dependency
2321+
# Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime
2322+
for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER
2323+
field = subfield_to_delete.get("field")
2324+
field_repeated = subfield_to_delete.get("is_repeated")
2325+
subfield = subfield_to_delete.get("subfield")
2326+
if subfield:
2327+
if field_repeated:
2328+
for i in range(0, len(request_init["audience_list"][field])):
2329+
del request_init["audience_list"][field][i][subfield]
2330+
else:
2331+
del request_init["audience_list"][field][subfield]
22622332
request = request_type(**request_init)
22632333

22642334
# Mock the http request call within the method and fake a response.
@@ -2441,14 +2511,6 @@ def test_create_audience_list_rest_bad_request(
24412511

24422512
# send a request that will satisfy transcoding
24432513
request_init = {"parent": "properties/sample1"}
2444-
request_init["audience_list"] = {
2445-
"name": "name_value",
2446-
"audience": "audience_value",
2447-
"audience_display_name": "audience_display_name_value",
2448-
"dimensions": [{"dimension_name": "dimension_name_value"}],
2449-
"state": 1,
2450-
"begin_creating_time": {"seconds": 751, "nanos": 543},
2451-
}
24522514
request = request_type(**request_init)
24532515

24542516
# Mock the http request call within the method and fake a BadRequest error.
@@ -2552,8 +2614,9 @@ def test_query_audience_list_rest(request_type):
25522614
# Wrap the value into a proper Response obj
25532615
response_value = Response()
25542616
response_value.status_code = 200
2555-
pb_return_value = analytics_data_api.QueryAudienceListResponse.pb(return_value)
2556-
json_return_value = json_format.MessageToJson(pb_return_value)
2617+
# Convert return value to protobuf type
2618+
return_value = analytics_data_api.QueryAudienceListResponse.pb(return_value)
2619+
json_return_value = json_format.MessageToJson(return_value)
25572620

25582621
response_value._content = json_return_value.encode("UTF-8")
25592622
req.return_value = response_value
@@ -2670,8 +2733,9 @@ def test_query_audience_list_rest_flattened():
26702733
# Wrap the value into a proper Response obj
26712734
response_value = Response()
26722735
response_value.status_code = 200
2673-
pb_return_value = analytics_data_api.QueryAudienceListResponse.pb(return_value)
2674-
json_return_value = json_format.MessageToJson(pb_return_value)
2736+
# Convert return value to protobuf type
2737+
return_value = analytics_data_api.QueryAudienceListResponse.pb(return_value)
2738+
json_return_value = json_format.MessageToJson(return_value)
26752739
response_value._content = json_return_value.encode("UTF-8")
26762740
req.return_value = response_value
26772741

@@ -2739,8 +2803,9 @@ def test_get_audience_list_rest(request_type):
27392803
# Wrap the value into a proper Response obj
27402804
response_value = Response()
27412805
response_value.status_code = 200
2742-
pb_return_value = analytics_data_api.AudienceList.pb(return_value)
2743-
json_return_value = json_format.MessageToJson(pb_return_value)
2806+
# Convert return value to protobuf type
2807+
return_value = analytics_data_api.AudienceList.pb(return_value)
2808+
json_return_value = json_format.MessageToJson(return_value)
27442809

27452810
response_value._content = json_return_value.encode("UTF-8")
27462811
req.return_value = response_value
@@ -2818,8 +2883,9 @@ def test_get_audience_list_rest_required_fields(
28182883
response_value = Response()
28192884
response_value.status_code = 200
28202885

2821-
pb_return_value = analytics_data_api.AudienceList.pb(return_value)
2822-
json_return_value = json_format.MessageToJson(pb_return_value)
2886+
# Convert return value to protobuf type
2887+
return_value = analytics_data_api.AudienceList.pb(return_value)
2888+
json_return_value = json_format.MessageToJson(return_value)
28232889

28242890
response_value._content = json_return_value.encode("UTF-8")
28252891
req.return_value = response_value
@@ -2944,8 +3010,9 @@ def test_get_audience_list_rest_flattened():
29443010
# Wrap the value into a proper Response obj
29453011
response_value = Response()
29463012
response_value.status_code = 200
2947-
pb_return_value = analytics_data_api.AudienceList.pb(return_value)
2948-
json_return_value = json_format.MessageToJson(pb_return_value)
3013+
# Convert return value to protobuf type
3014+
return_value = analytics_data_api.AudienceList.pb(return_value)
3015+
json_return_value = json_format.MessageToJson(return_value)
29493016
response_value._content = json_return_value.encode("UTF-8")
29503017
req.return_value = response_value
29513018

@@ -3009,8 +3076,9 @@ def test_list_audience_lists_rest(request_type):
30093076
# Wrap the value into a proper Response obj
30103077
response_value = Response()
30113078
response_value.status_code = 200
3012-
pb_return_value = analytics_data_api.ListAudienceListsResponse.pb(return_value)
3013-
json_return_value = json_format.MessageToJson(pb_return_value)
3079+
# Convert return value to protobuf type
3080+
return_value = analytics_data_api.ListAudienceListsResponse.pb(return_value)
3081+
json_return_value = json_format.MessageToJson(return_value)
30143082

30153083
response_value._content = json_return_value.encode("UTF-8")
30163084
req.return_value = response_value
@@ -3092,10 +3160,9 @@ def test_list_audience_lists_rest_required_fields(
30923160
response_value = Response()
30933161
response_value.status_code = 200
30943162

3095-
pb_return_value = analytics_data_api.ListAudienceListsResponse.pb(
3096-
return_value
3097-
)
3098-
json_return_value = json_format.MessageToJson(pb_return_value)
3163+
# Convert return value to protobuf type
3164+
return_value = analytics_data_api.ListAudienceListsResponse.pb(return_value)
3165+
json_return_value = json_format.MessageToJson(return_value)
30993166

31003167
response_value._content = json_return_value.encode("UTF-8")
31013168
req.return_value = response_value
@@ -3230,8 +3297,9 @@ def test_list_audience_lists_rest_flattened():
32303297
# Wrap the value into a proper Response obj
32313298
response_value = Response()
32323299
response_value.status_code = 200
3233-
pb_return_value = analytics_data_api.ListAudienceListsResponse.pb(return_value)
3234-
json_return_value = json_format.MessageToJson(pb_return_value)
3300+
# Convert return value to protobuf type
3301+
return_value = analytics_data_api.ListAudienceListsResponse.pb(return_value)
3302+
json_return_value = json_format.MessageToJson(return_value)
32353303
response_value._content = json_return_value.encode("UTF-8")
32363304
req.return_value = response_value
32373305

packages/google-analytics-data/tests/unit/gapic/data_v1beta/test_beta_analytics_data.py

Lines changed: 27 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1941,8 +1941,9 @@ def test_run_report_rest(request_type):
19411941
# Wrap the value into a proper Response obj
19421942
response_value = Response()
19431943
response_value.status_code = 200
1944-
pb_return_value = analytics_data_api.RunReportResponse.pb(return_value)
1945-
json_return_value = json_format.MessageToJson(pb_return_value)
1944+
# Convert return value to protobuf type
1945+
return_value = analytics_data_api.RunReportResponse.pb(return_value)
1946+
json_return_value = json_format.MessageToJson(return_value)
19461947

19471948
response_value._content = json_return_value.encode("UTF-8")
19481949
req.return_value = response_value
@@ -2068,8 +2069,9 @@ def test_run_pivot_report_rest(request_type):
20682069
# Wrap the value into a proper Response obj
20692070
response_value = Response()
20702071
response_value.status_code = 200
2071-
pb_return_value = analytics_data_api.RunPivotReportResponse.pb(return_value)
2072-
json_return_value = json_format.MessageToJson(pb_return_value)
2072+
# Convert return value to protobuf type
2073+
return_value = analytics_data_api.RunPivotReportResponse.pb(return_value)
2074+
json_return_value = json_format.MessageToJson(return_value)
20732075

20742076
response_value._content = json_return_value.encode("UTF-8")
20752077
req.return_value = response_value
@@ -2194,8 +2196,9 @@ def test_batch_run_reports_rest(request_type):
21942196
# Wrap the value into a proper Response obj
21952197
response_value = Response()
21962198
response_value.status_code = 200
2197-
pb_return_value = analytics_data_api.BatchRunReportsResponse.pb(return_value)
2198-
json_return_value = json_format.MessageToJson(pb_return_value)
2199+
# Convert return value to protobuf type
2200+
return_value = analytics_data_api.BatchRunReportsResponse.pb(return_value)
2201+
json_return_value = json_format.MessageToJson(return_value)
21992202

22002203
response_value._content = json_return_value.encode("UTF-8")
22012204
req.return_value = response_value
@@ -2320,10 +2323,9 @@ def test_batch_run_pivot_reports_rest(request_type):
23202323
# Wrap the value into a proper Response obj
23212324
response_value = Response()
23222325
response_value.status_code = 200
2323-
pb_return_value = analytics_data_api.BatchRunPivotReportsResponse.pb(
2324-
return_value
2325-
)
2326-
json_return_value = json_format.MessageToJson(pb_return_value)
2326+
# Convert return value to protobuf type
2327+
return_value = analytics_data_api.BatchRunPivotReportsResponse.pb(return_value)
2328+
json_return_value = json_format.MessageToJson(return_value)
23272329

23282330
response_value._content = json_return_value.encode("UTF-8")
23292331
req.return_value = response_value
@@ -2450,8 +2452,9 @@ def test_get_metadata_rest(request_type):
24502452
# Wrap the value into a proper Response obj
24512453
response_value = Response()
24522454
response_value.status_code = 200
2453-
pb_return_value = analytics_data_api.Metadata.pb(return_value)
2454-
json_return_value = json_format.MessageToJson(pb_return_value)
2455+
# Convert return value to protobuf type
2456+
return_value = analytics_data_api.Metadata.pb(return_value)
2457+
json_return_value = json_format.MessageToJson(return_value)
24552458

24562459
response_value._content = json_return_value.encode("UTF-8")
24572460
req.return_value = response_value
@@ -2526,8 +2529,9 @@ def test_get_metadata_rest_required_fields(
25262529
response_value = Response()
25272530
response_value.status_code = 200
25282531

2529-
pb_return_value = analytics_data_api.Metadata.pb(return_value)
2530-
json_return_value = json_format.MessageToJson(pb_return_value)
2532+
# Convert return value to protobuf type
2533+
return_value = analytics_data_api.Metadata.pb(return_value)
2534+
json_return_value = json_format.MessageToJson(return_value)
25312535

25322536
response_value._content = json_return_value.encode("UTF-8")
25332537
req.return_value = response_value
@@ -2652,8 +2656,9 @@ def test_get_metadata_rest_flattened():
26522656
# Wrap the value into a proper Response obj
26532657
response_value = Response()
26542658
response_value.status_code = 200
2655-
pb_return_value = analytics_data_api.Metadata.pb(return_value)
2656-
json_return_value = json_format.MessageToJson(pb_return_value)
2659+
# Convert return value to protobuf type
2660+
return_value = analytics_data_api.Metadata.pb(return_value)
2661+
json_return_value = json_format.MessageToJson(return_value)
26572662
response_value._content = json_return_value.encode("UTF-8")
26582663
req.return_value = response_value
26592664

@@ -2717,8 +2722,9 @@ def test_run_realtime_report_rest(request_type):
27172722
# Wrap the value into a proper Response obj
27182723
response_value = Response()
27192724
response_value.status_code = 200
2720-
pb_return_value = analytics_data_api.RunRealtimeReportResponse.pb(return_value)
2721-
json_return_value = json_format.MessageToJson(pb_return_value)
2725+
# Convert return value to protobuf type
2726+
return_value = analytics_data_api.RunRealtimeReportResponse.pb(return_value)
2727+
json_return_value = json_format.MessageToJson(return_value)
27222728

27232729
response_value._content = json_return_value.encode("UTF-8")
27242730
req.return_value = response_value
@@ -2844,8 +2850,9 @@ def test_check_compatibility_rest(request_type):
28442850
# Wrap the value into a proper Response obj
28452851
response_value = Response()
28462852
response_value.status_code = 200
2847-
pb_return_value = analytics_data_api.CheckCompatibilityResponse.pb(return_value)
2848-
json_return_value = json_format.MessageToJson(pb_return_value)
2853+
# Convert return value to protobuf type
2854+
return_value = analytics_data_api.CheckCompatibilityResponse.pb(return_value)
2855+
json_return_value = json_format.MessageToJson(return_value)
28492856

28502857
response_value._content = json_return_value.encode("UTF-8")
28512858
req.return_value = response_value

0 commit comments

Comments
 (0)