dbc_rs/version/builder/
build.rs

1use super::VersionBuilder;
2use crate::{Result, Version};
3
4impl VersionBuilder {
5    /// Builds the `Version` from this builder.
6    ///
7    /// # Errors
8    ///
9    /// This method currently always succeeds (returns empty version if not set).
10    pub fn build(self) -> Result<Version> {
11        match self.version {
12            Some(v) => Ok(Version::new(v.into())),
13            None => Ok(Version::new("".to_string().into())),
14        }
15    }
16}
17
18#[cfg(test)]
19mod tests {
20    use super::VersionBuilder;
21
22    #[test]
23    fn test_version_builder_missing_version() {
24        let result = VersionBuilder::new().build();
25        assert!(result.is_ok());
26    }
27
28    #[test]
29    fn test_version_builder_empty_string() {
30        let version = VersionBuilder::new().version("").build().unwrap();
31        assert_eq!(version.as_str(), "");
32    }
33}