calculations_demo 0.1.2

A crate containing many different useful math functions
Documentation
//! # my_crate
//!
//! `my_crate` is a collection of utilities to make performing certain
//! calculations more convenient.

// helps users using my_crate to access all functions at the root level
pub use self::addition::sum;
pub use self::multiplication::product;

/// Contains addition functions
pub mod addition {
    /// Adds one to the given number.
    ///
    /// # Examples
    /// ```
    /// let arg1 = 5;
    /// let arg2 = 12;
    /// let result = my_crate::sum(arg1, arg2);
    ///
    /// assert_eq!(17, result);
    /// ```
    pub fn sum(num1: i32, num2: i32) -> i32 {
        num1 + num2
    }
}

/// Contains multiplication functions
pub mod multiplication {
    /// Multiplies two numbers
    ///
    /// # Examples
    /// ```
    /// let arg1 = 5;
    /// let arg2 = 2;
    /// let result = my_crate::product(arg1, arg2);
    /// assert_eq!(10, result);
    /// ```
    pub fn product(num1: i32, num2: i32) -> i32 {
        num1 * num2
    }
}

#[cfg(test)]
mod tests {
    use crate::addition::*;
    use crate::multiplication::*;

    #[test]
    fn can_sum() {
        let result = sum(5, 12);
        assert_eq!(17, result);
    }

    #[test]
    fn can_multiply() {
        let result = product(5, 2);
        assert_eq!(10, result);
    }
}