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
27use gax::error::Error;
28use std::sync::Arc;
29
30pub(crate) mod dynamic;
31
32/// Defines the trait used to implement [super::client::FleetRouting].
33///
34/// Application developers may need to implement this trait to mock
35/// `client::FleetRouting`.  In other use-cases, application developers only
36/// use `client::FleetRouting` and need not be concerned with this trait or
37/// its implementations.
38///
39/// Services gain new RPCs routinely. Consequently, this trait gains new methods
40/// too. To avoid breaking applications the trait provides a default
41/// implementation of each method. Most of these implementations just return an
42/// error.
43pub trait FleetRouting: std::fmt::Debug + Send + Sync {
44    /// Implements [super::client::FleetRouting::optimize_tours].
45    fn optimize_tours(
46        &self,
47        _req: crate::model::OptimizeToursRequest,
48        _options: gax::options::RequestOptions,
49    ) -> impl std::future::Future<
50        Output = crate::Result<gax::response::Response<crate::model::OptimizeToursResponse>>,
51    > + Send {
52        std::future::ready::<
53            crate::Result<gax::response::Response<crate::model::OptimizeToursResponse>>,
54        >(Err(Error::other("unimplemented")))
55    }
56
57    /// Implements [super::client::FleetRouting::batch_optimize_tours].
58    fn batch_optimize_tours(
59        &self,
60        _req: crate::model::BatchOptimizeToursRequest,
61        _options: gax::options::RequestOptions,
62    ) -> impl std::future::Future<
63        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
64    > + Send {
65        std::future::ready::<crate::Result<gax::response::Response<longrunning::model::Operation>>>(
66            Err(Error::other("unimplemented")),
67        )
68    }
69
70    /// Implements [super::client::FleetRouting::get_operation].
71    fn get_operation(
72        &self,
73        _req: longrunning::model::GetOperationRequest,
74        _options: gax::options::RequestOptions,
75    ) -> impl std::future::Future<
76        Output = crate::Result<gax::response::Response<longrunning::model::Operation>>,
77    > + Send {
78        std::future::ready::<crate::Result<gax::response::Response<longrunning::model::Operation>>>(
79            Err(Error::other("unimplemented")),
80        )
81    }
82
83    /// Returns the polling error policy.
84    ///
85    /// When mocking, this method is typically irrelevant. Do not try to verify
86    /// it is called by your mocks.
87    fn get_polling_error_policy(
88        &self,
89        _options: &gax::options::RequestOptions,
90    ) -> Arc<dyn gax::polling_error_policy::PollingErrorPolicy> {
91        Arc::new(gax::polling_error_policy::Aip194Strict)
92    }
93
94    /// Returns the polling backoff policy.
95    ///
96    /// When mocking, this method is typically irrelevant. Do not try to verify
97    /// it is called by your mocks.
98    fn get_polling_backoff_policy(
99        &self,
100        _options: &gax::options::RequestOptions,
101    ) -> Arc<dyn gax::polling_backoff_policy::PollingBackoffPolicy> {
102        Arc::new(gax::exponential_backoff::ExponentialBackoff::default())
103    }
104}