dawproject_rs/api/
integer_parameter.rs

1#![allow(unused)]
2use super::{add_one_get, fake_rng};
3
4use {
5    fake::{Dummy, Fake, Faker},
6    serde::{Deserialize, Serialize},
7};
8
9#[derive(Debug, Deserialize, Serialize, Clone, Dummy)]
10pub struct IntegerParameter {
11    #[serde(rename = "@id")]
12    #[serde(skip_serializing_if = "Option::is_none")]
13    id: Option<String>,
14    #[serde(rename = "@name")]
15    #[serde(skip_serializing_if = "Option::is_none")]
16    name: Option<String>,
17    #[serde(rename = "@color")]
18    #[serde(skip_serializing_if = "Option::is_none")]
19    color: Option<String>,
20    #[serde(rename = "@comment")]
21    #[serde(skip_serializing_if = "Option::is_none")]
22    comment: Option<String>,
23    #[serde(rename = "@parameterID")]
24    #[serde(skip_serializing_if = "Option::is_none")]
25    parameter_id: Option<i32>,
26    #[serde(rename = "@max")]
27    #[serde(skip_serializing_if = "Option::is_none")]
28    max: Option<i32>,
29    #[serde(rename = "@min")]
30    #[serde(skip_serializing_if = "Option::is_none")]
31    min: Option<i32>,
32    #[serde(rename = "@value")]
33    #[serde(skip_serializing_if = "Option::is_none")]
34    value: Option<i32>,
35}
36
37impl IntegerParameter {
38    pub fn new_test() -> Self {
39        Self {
40            id: Some(format!("id_{}", add_one_get())),
41            name: None,
42            color: None,
43            comment: None,
44            parameter_id: None,
45            max: None,
46            min: None,
47            value: None,
48        }
49    }
50
51    pub fn new_fake() -> Self {
52        let o: Self = Faker.fake_with_rng(&mut fake_rng());
53        o
54    }
55}
56
57#[cfg(test)]
58mod tests {
59    use {super::IntegerParameter, quick_xml::se::to_string, std::error::Error};
60
61    #[test]
62    pub fn se_test() -> Result<(), Box<dyn Error>> {
63        let mut o = IntegerParameter::new_fake();
64
65        match to_string(&o) {
66            Ok(o) => println!("{}", o),
67            Err(err) => return Err(err.into()),
68        }
69
70        Ok(())
71    }
72}