Skip to content

Commit e65d826

Browse files
authored
test(generator/rust): use google.protobuf.Empty in golden files (#167)
1 parent 7e37818 commit e65d826

File tree

2 files changed

+40
-0
lines changed

2 files changed

+40
-0
lines changed

generator/testdata/rust/gclient/golden/src/lib.rs

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,35 @@ impl SecretManagerService {
219219
Ok(response)
220220
}
221221

222+
/// Deletes a [Secret][google.cloud.secretmanager.v1.Secret].
223+
pub async fn delete_secret(
224+
&self,
225+
req: crate::model::DeleteSecretRequest,
226+
) -> Result<gax_placeholder::Empty, Box<dyn std::error::Error>> {
227+
let query_parameters = [gax::query_parameter::format("etag", &req.etag)?];
228+
let client = self.client.inner.clone();
229+
let res = client
230+
.http_client
231+
.delete(format!("{}/v1/{}", self.base_path, req.name,))
232+
.query(&[("alt", "json")])
233+
.query(
234+
&query_parameters
235+
.into_iter()
236+
.flatten()
237+
.collect::<Vec<(&str, String)>>(),
238+
)
239+
.bearer_auth(&client.token)
240+
.send()
241+
.await?;
242+
if !res.status().is_success() {
243+
return Err(
244+
"sorry the api you are looking for is not available, please try again".into(),
245+
);
246+
}
247+
let response = res.json::<gax_placeholder::Empty>().await?;
248+
Ok(response)
249+
}
250+
222251
/// Lists [SecretVersions][google.cloud.secretmanager.v1.SecretVersion]. This
223252
/// call does not return secret data.
224253
pub async fn list_secret_versions(

generator/testdata/rust/gclient/protos/service.proto

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,17 @@ service SecretManagerService {
110110
option (google.api.method_signature) = "secret,update_mask";
111111
}
112112

113+
// Deletes a [Secret][google.cloud.secretmanager.v1.Secret].
114+
rpc DeleteSecret(DeleteSecretRequest) returns (google.protobuf.Empty) {
115+
option (google.api.http) = {
116+
delete: "/v1/{name=projects/*/secrets/*}"
117+
additional_bindings {
118+
delete: "/v1/{name=projects/*/locations/*/secrets/*}"
119+
}
120+
};
121+
option (google.api.method_signature) = "name";
122+
}
123+
113124
// Lists [SecretVersions][google.cloud.secretmanager.v1.SecretVersion]. This
114125
// call does not return secret data.
115126
rpc ListSecretVersions(ListSecretVersionsRequest)

0 commit comments

Comments
 (0)