use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[cfg_attr(test, derive(Default))]
pub struct DedicatedDatabaseSpecificationPricing {
#[serde(rename = "storageOverageRate")]
pub storage_overage_rate: f64,
#[serde(rename = "bandwidthOverageRate")]
pub bandwidth_overage_rate: f64,
#[serde(rename = "replicaRate")]
pub replica_rate: f64,
#[serde(rename = "pitrRate")]
pub pitr_rate: f64,
}
impl DedicatedDatabaseSpecificationPricing {
pub fn storage_overage_rate(&self) -> &f64 {
&self.storage_overage_rate
}
pub fn bandwidth_overage_rate(&self) -> &f64 {
&self.bandwidth_overage_rate
}
pub fn replica_rate(&self) -> &f64 {
&self.replica_rate
}
pub fn pitr_rate(&self) -> &f64 {
&self.pitr_rate
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_dedicated_database_specification_pricing_creation() {
let _model = <DedicatedDatabaseSpecificationPricing as Default>::default();
let _ = _model.storage_overage_rate();
let _ = _model.bandwidth_overage_rate();
let _ = _model.replica_rate();
let _ = _model.pitr_rate();
}
#[test]
fn test_dedicated_database_specification_pricing_serialization() {
let model = <DedicatedDatabaseSpecificationPricing as Default>::default();
let json = serde_json::to_string(&model);
assert!(json.is_ok());
let deserialized: Result<DedicatedDatabaseSpecificationPricing, _> = serde_json::from_str(&json.unwrap());
assert!(deserialized.is_ok());
}
}