Skip to content

Commit 48eb4c9

Browse files
chore: Update gapic-generator-python to v1.11.9 (#454)
* chore: Update gapic-generator-python to v1.11.7 PiperOrigin-RevId: 573230664 Source-Link: googleapis/googleapis@93beed3 Source-Link: googleapis/googleapis-gen@f4a4eda Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiZjRhNGVkYWE4MDU3NjM5ZmNmNmFkZjkxNzk4NzIyODBkMWE4ZjY1MSJ9 * 🦉 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: googleapis/googleapis-gen@ce3af21 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiY2UzYWYyMWI3YzU1OWE4N2MyYmVmYzA3NmJlMGUzYWVkYTNhMjZmMCJ9 * 🦉 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.9 PiperOrigin-RevId: 574520922 Source-Link: googleapis/googleapis@5183984 Source-Link: googleapis/googleapis-gen@a59af19 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiYTU5YWYxOWQ0YWM2NTA5ZmFlZGYxY2MzOTAyOTE0MWI2YTViODk2OCJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * remove obsolete rst files --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com> Co-authored-by: Anthonios Partheniou <[email protected]>
1 parent f1f7fad commit 48eb4c9

File tree

6 files changed

+190
-75
lines changed

6 files changed

+190
-75
lines changed

docs/index.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ API Reference
1919

2020
client
2121
util
22-
errorreporting_v1beta1/services
23-
errorreporting_v1beta1/types
22+
errorreporting_v1beta1/services_
23+
errorreporting_v1beta1/types_
2424

2525

2626
Changelog

tests/unit/gapic/errorreporting_v1beta1/test_error_group_service.py

Lines changed: 85 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1239,8 +1239,9 @@ def test_get_group_rest(request_type):
12391239
# Wrap the value into a proper Response obj
12401240
response_value = Response()
12411241
response_value.status_code = 200
1242-
pb_return_value = common.ErrorGroup.pb(return_value)
1243-
json_return_value = json_format.MessageToJson(pb_return_value)
1242+
# Convert return value to protobuf type
1243+
return_value = common.ErrorGroup.pb(return_value)
1244+
json_return_value = json_format.MessageToJson(return_value)
12441245

12451246
response_value._content = json_return_value.encode("UTF-8")
12461247
req.return_value = response_value
@@ -1317,8 +1318,9 @@ def test_get_group_rest_required_fields(
13171318
response_value = Response()
13181319
response_value.status_code = 200
13191320

1320-
pb_return_value = common.ErrorGroup.pb(return_value)
1321-
json_return_value = json_format.MessageToJson(pb_return_value)
1321+
# Convert return value to protobuf type
1322+
return_value = common.ErrorGroup.pb(return_value)
1323+
json_return_value = json_format.MessageToJson(return_value)
13221324

13231325
response_value._content = json_return_value.encode("UTF-8")
13241326
req.return_value = response_value
@@ -1441,8 +1443,9 @@ def test_get_group_rest_flattened():
14411443
# Wrap the value into a proper Response obj
14421444
response_value = Response()
14431445
response_value.status_code = 200
1444-
pb_return_value = common.ErrorGroup.pb(return_value)
1445-
json_return_value = json_format.MessageToJson(pb_return_value)
1446+
# Convert return value to protobuf type
1447+
return_value = common.ErrorGroup.pb(return_value)
1448+
json_return_value = json_format.MessageToJson(return_value)
14461449
response_value._content = json_return_value.encode("UTF-8")
14471450
req.return_value = response_value
14481451

@@ -1500,6 +1503,73 @@ def test_update_group_rest(request_type):
15001503
"tracking_issues": [{"url": "url_value"}],
15011504
"resolution_status": 1,
15021505
}
1506+
# The version of a generated dependency at test runtime may differ from the version used during generation.
1507+
# Delete any fields which are not present in the current runtime dependency
1508+
# See https://github.com/googleapis/gapic-generator-python/issues/1748
1509+
1510+
# Determine if the message type is proto-plus or protobuf
1511+
test_field = error_group_service.UpdateGroupRequest.meta.fields["group"]
1512+
1513+
def get_message_fields(field):
1514+
# Given a field which is a message (composite type), return a list with
1515+
# all the fields of the message.
1516+
# If the field is not a composite type, return an empty list.
1517+
message_fields = []
1518+
1519+
if hasattr(field, "message") and field.message:
1520+
is_field_type_proto_plus_type = not hasattr(field.message, "DESCRIPTOR")
1521+
1522+
if is_field_type_proto_plus_type:
1523+
message_fields = field.message.meta.fields.values()
1524+
# Add `# pragma: NO COVER` because there may not be any `*_pb2` field types
1525+
else: # pragma: NO COVER
1526+
message_fields = field.message.DESCRIPTOR.fields
1527+
return message_fields
1528+
1529+
runtime_nested_fields = [
1530+
(field.name, nested_field.name)
1531+
for field in get_message_fields(test_field)
1532+
for nested_field in get_message_fields(field)
1533+
]
1534+
1535+
subfields_not_in_runtime = []
1536+
1537+
# For each item in the sample request, create a list of sub fields which are not present at runtime
1538+
# Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime
1539+
for field, value in request_init["group"].items(): # pragma: NO COVER
1540+
result = None
1541+
is_repeated = False
1542+
# For repeated fields
1543+
if isinstance(value, list) and len(value):
1544+
is_repeated = True
1545+
result = value[0]
1546+
# For fields where the type is another message
1547+
if isinstance(value, dict):
1548+
result = value
1549+
1550+
if result and hasattr(result, "keys"):
1551+
for subfield in result.keys():
1552+
if (field, subfield) not in runtime_nested_fields:
1553+
subfields_not_in_runtime.append(
1554+
{
1555+
"field": field,
1556+
"subfield": subfield,
1557+
"is_repeated": is_repeated,
1558+
}
1559+
)
1560+
1561+
# Remove fields from the sample request which are not present in the runtime version of the dependency
1562+
# Add `# pragma: NO COVER` because this test code will not run if all subfields are present at runtime
1563+
for subfield_to_delete in subfields_not_in_runtime: # pragma: NO COVER
1564+
field = subfield_to_delete.get("field")
1565+
field_repeated = subfield_to_delete.get("is_repeated")
1566+
subfield = subfield_to_delete.get("subfield")
1567+
if subfield:
1568+
if field_repeated:
1569+
for i in range(0, len(request_init["group"][field])):
1570+
del request_init["group"][field][i][subfield]
1571+
else:
1572+
del request_init["group"][field][subfield]
15031573
request = request_type(**request_init)
15041574

15051575
# Mock the http request call within the method and fake a response.
@@ -1514,8 +1584,9 @@ def test_update_group_rest(request_type):
15141584
# Wrap the value into a proper Response obj
15151585
response_value = Response()
15161586
response_value.status_code = 200
1517-
pb_return_value = common.ErrorGroup.pb(return_value)
1518-
json_return_value = json_format.MessageToJson(pb_return_value)
1587+
# Convert return value to protobuf type
1588+
return_value = common.ErrorGroup.pb(return_value)
1589+
json_return_value = json_format.MessageToJson(return_value)
15191590

15201591
response_value._content = json_return_value.encode("UTF-8")
15211592
req.return_value = response_value
@@ -1588,8 +1659,9 @@ def test_update_group_rest_required_fields(
15881659
response_value = Response()
15891660
response_value.status_code = 200
15901661

1591-
pb_return_value = common.ErrorGroup.pb(return_value)
1592-
json_return_value = json_format.MessageToJson(pb_return_value)
1662+
# Convert return value to protobuf type
1663+
return_value = common.ErrorGroup.pb(return_value)
1664+
json_return_value = json_format.MessageToJson(return_value)
15931665

15941666
response_value._content = json_return_value.encode("UTF-8")
15951667
req.return_value = response_value
@@ -1675,12 +1747,6 @@ def test_update_group_rest_bad_request(
16751747

16761748
# send a request that will satisfy transcoding
16771749
request_init = {"group": {"name": "projects/sample1/groups/sample2"}}
1678-
request_init["group"] = {
1679-
"name": "projects/sample1/groups/sample2",
1680-
"group_id": "group_id_value",
1681-
"tracking_issues": [{"url": "url_value"}],
1682-
"resolution_status": 1,
1683-
}
16841750
request = request_type(**request_init)
16851751

16861752
# Mock the http request call within the method and fake a BadRequest error.
@@ -1718,8 +1784,9 @@ def test_update_group_rest_flattened():
17181784
# Wrap the value into a proper Response obj
17191785
response_value = Response()
17201786
response_value.status_code = 200
1721-
pb_return_value = common.ErrorGroup.pb(return_value)
1722-
json_return_value = json_format.MessageToJson(pb_return_value)
1787+
# Convert return value to protobuf type
1788+
return_value = common.ErrorGroup.pb(return_value)
1789+
json_return_value = json_format.MessageToJson(return_value)
17231790
response_value._content = json_return_value.encode("UTF-8")
17241791
req.return_value = response_value
17251792

tests/unit/gapic/errorreporting_v1beta1/test_error_stats_service.py

Lines changed: 27 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1874,8 +1874,9 @@ def test_list_group_stats_rest(request_type):
18741874
# Wrap the value into a proper Response obj
18751875
response_value = Response()
18761876
response_value.status_code = 200
1877-
pb_return_value = error_stats_service.ListGroupStatsResponse.pb(return_value)
1878-
json_return_value = json_format.MessageToJson(pb_return_value)
1877+
# Convert return value to protobuf type
1878+
return_value = error_stats_service.ListGroupStatsResponse.pb(return_value)
1879+
json_return_value = json_format.MessageToJson(return_value)
18791880

18801881
response_value._content = json_return_value.encode("UTF-8")
18811882
req.return_value = response_value
@@ -1964,10 +1965,9 @@ def test_list_group_stats_rest_required_fields(
19641965
response_value = Response()
19651966
response_value.status_code = 200
19661967

1967-
pb_return_value = error_stats_service.ListGroupStatsResponse.pb(
1968-
return_value
1969-
)
1970-
json_return_value = json_format.MessageToJson(pb_return_value)
1968+
# Convert return value to protobuf type
1969+
return_value = error_stats_service.ListGroupStatsResponse.pb(return_value)
1970+
json_return_value = json_format.MessageToJson(return_value)
19711971

19721972
response_value._content = json_return_value.encode("UTF-8")
19731973
req.return_value = response_value
@@ -2110,8 +2110,9 @@ def test_list_group_stats_rest_flattened():
21102110
# Wrap the value into a proper Response obj
21112111
response_value = Response()
21122112
response_value.status_code = 200
2113-
pb_return_value = error_stats_service.ListGroupStatsResponse.pb(return_value)
2114-
json_return_value = json_format.MessageToJson(pb_return_value)
2113+
# Convert return value to protobuf type
2114+
return_value = error_stats_service.ListGroupStatsResponse.pb(return_value)
2115+
json_return_value = json_format.MessageToJson(return_value)
21152116
response_value._content = json_return_value.encode("UTF-8")
21162117
req.return_value = response_value
21172118

@@ -2235,8 +2236,9 @@ def test_list_events_rest(request_type):
22352236
# Wrap the value into a proper Response obj
22362237
response_value = Response()
22372238
response_value.status_code = 200
2238-
pb_return_value = error_stats_service.ListEventsResponse.pb(return_value)
2239-
json_return_value = json_format.MessageToJson(pb_return_value)
2239+
# Convert return value to protobuf type
2240+
return_value = error_stats_service.ListEventsResponse.pb(return_value)
2241+
json_return_value = json_format.MessageToJson(return_value)
22402242

22412243
response_value._content = json_return_value.encode("UTF-8")
22422244
req.return_value = response_value
@@ -2328,8 +2330,9 @@ def test_list_events_rest_required_fields(
23282330
response_value = Response()
23292331
response_value.status_code = 200
23302332

2331-
pb_return_value = error_stats_service.ListEventsResponse.pb(return_value)
2332-
json_return_value = json_format.MessageToJson(pb_return_value)
2333+
# Convert return value to protobuf type
2334+
return_value = error_stats_service.ListEventsResponse.pb(return_value)
2335+
json_return_value = json_format.MessageToJson(return_value)
23332336

23342337
response_value._content = json_return_value.encode("UTF-8")
23352338
req.return_value = response_value
@@ -2477,8 +2480,9 @@ def test_list_events_rest_flattened():
24772480
# Wrap the value into a proper Response obj
24782481
response_value = Response()
24792482
response_value.status_code = 200
2480-
pb_return_value = error_stats_service.ListEventsResponse.pb(return_value)
2481-
json_return_value = json_format.MessageToJson(pb_return_value)
2483+
# Convert return value to protobuf type
2484+
return_value = error_stats_service.ListEventsResponse.pb(return_value)
2485+
json_return_value = json_format.MessageToJson(return_value)
24822486
response_value._content = json_return_value.encode("UTF-8")
24832487
req.return_value = response_value
24842488

@@ -2598,8 +2602,9 @@ def test_delete_events_rest(request_type):
25982602
# Wrap the value into a proper Response obj
25992603
response_value = Response()
26002604
response_value.status_code = 200
2601-
pb_return_value = error_stats_service.DeleteEventsResponse.pb(return_value)
2602-
json_return_value = json_format.MessageToJson(pb_return_value)
2605+
# Convert return value to protobuf type
2606+
return_value = error_stats_service.DeleteEventsResponse.pb(return_value)
2607+
json_return_value = json_format.MessageToJson(return_value)
26032608

26042609
response_value._content = json_return_value.encode("UTF-8")
26052610
req.return_value = response_value
@@ -2673,8 +2678,9 @@ def test_delete_events_rest_required_fields(
26732678
response_value = Response()
26742679
response_value.status_code = 200
26752680

2676-
pb_return_value = error_stats_service.DeleteEventsResponse.pb(return_value)
2677-
json_return_value = json_format.MessageToJson(pb_return_value)
2681+
# Convert return value to protobuf type
2682+
return_value = error_stats_service.DeleteEventsResponse.pb(return_value)
2683+
json_return_value = json_format.MessageToJson(return_value)
26782684

26792685
response_value._content = json_return_value.encode("UTF-8")
26802686
req.return_value = response_value
@@ -2799,8 +2805,9 @@ def test_delete_events_rest_flattened():
27992805
# Wrap the value into a proper Response obj
28002806
response_value = Response()
28012807
response_value.status_code = 200
2802-
pb_return_value = error_stats_service.DeleteEventsResponse.pb(return_value)
2803-
json_return_value = json_format.MessageToJson(pb_return_value)
2808+
# Convert return value to protobuf type
2809+
return_value = error_stats_service.DeleteEventsResponse.pb(return_value)
2810+
json_return_value = json_format.MessageToJson(return_value)
28042811
response_value._content = json_return_value.encode("UTF-8")
28052812
req.return_value = response_value
28062813

0 commit comments

Comments
 (0)