google_cloud_optimization_v1/stub.rs
1// Copyright 2025 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// https://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15// Code generated by sidekick. DO NOT EDIT.
16
17//! Traits to mock the clients in this library.
18//!
19//! Application developers may need to mock the clients in this library to test
20//! how their application works with different (and sometimes hard to trigger)
21//! client and service behavior. Such test can define mocks implementing the
22//! trait(s) defined in this module, initialize the client with an instance of
23//! this mock in their tests, and verify their application responds as expected.
24
25#![allow(rustdoc::broken_intra_doc_links)]
26
27pub(crate) mod dynamic;
28
29/// Defines the trait used to implement [super::client::FleetRouting].
30///
31/// Application developers may need to implement this trait to mock
32/// `client::FleetRouting`. In other use-cases, application developers only
33/// use `client::FleetRouting` and need not be concerned with this trait or
34/// its implementations.
35///
36/// Services gain new RPCs routinely. Consequently, this trait gains new methods
37/// too. To avoid breaking applications the trait provides a default
38/// implementation of each method. Most of these implementations just return an
39/// error.
40pub trait FleetRouting: std::fmt::Debug + Send + Sync {
41 /// Implements [super::client::FleetRouting::optimize_tours].
42 fn optimize_tours(
43 &self,
44 _req: crate::model::OptimizeToursRequest,
45 _options: gax::options::RequestOptions,
46 ) -> impl std::future::Future<
47 Output = crate::Result<gax::response::Response<crate::model::OptimizeToursResponse>>,
48 > + Send {
49 gaxi::unimplemented::unimplemented_stub()
50 }
51
52 /// Implements [super::client::FleetRouting::batch_optimize_tours].
53 fn batch_optimize_tours(
54 &self,
55 _req: crate::model::BatchOptimizeToursRequest,
56 _options: gax::options::RequestOptions,
57 ) -> impl std::future::Future<
58 Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
59 > + Send {
60 gaxi::unimplemented::unimplemented_stub()
61 }
62
63 /// Implements [super::client::FleetRouting::get_operation].
64 fn get_operation(
65 &self,
66 _req: longrunning::model::GetOperationRequest,
67 _options: gax::options::RequestOptions,
68 ) -> impl std::future::Future<
69 Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
70 > + Send {
71 gaxi::unimplemented::unimplemented_stub()
72 }
73
74 /// Returns the polling error policy.
75 ///
76 /// When mocking, this method is typically irrelevant. Do not try to verify
77 /// it is called by your mocks.
78 fn get_polling_error_policy(
79 &self,
80 _options: &gax::options::RequestOptions,
81 ) -> std::sync::Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
82 std::sync::Arc::new(gax::polling_error_policy::Aip194Strict)
83 }
84
85 /// Returns the polling backoff policy.
86 ///
87 /// When mocking, this method is typically irrelevant. Do not try to verify
88 /// it is called by your mocks.
89 fn get_polling_backoff_policy(
90 &self,
91 _options: &gax::options::RequestOptions,
92 ) -> std::sync::Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
93 std::sync::Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
94 }
95}