Skip to main content

fluent_assertions/assertions/
bool_assertion.rs

1use super::Assertion;
2
3/// Specific assertions for booleans
4impl Assertion<bool> {
5    /// Asserts that the value is true
6    ///
7    /// # Examples
8    ///
9    /// ```
10    /// use fluent_assertions::*;
11    /// true.should().be_true();
12    /// ```
13    #[track_caller]
14    pub fn be_true(self) -> Self {
15        assert!(self.value, "Expected true, but got false");
16        self
17    }
18
19    /// Asserts that the value is false
20    ///
21    /// # Examples
22    ///
23    /// ```
24    /// use fluent_assertions::*;
25    /// false.should().be_false();
26    /// ```
27    #[track_caller]
28    pub fn be_false(self) -> Self {
29        assert!(!self.value, "Expected false, but got true");
30        self
31    }
32}
33
34#[cfg(test)]
35mod tests {
36    use crate::assertions::*;
37
38    #[test]
39    fn test_bool_assertions() {
40        let the_boolean = false;
41        the_boolean.should().be_false();
42
43        let the_boolean = true;
44        the_boolean.should().be_true();
45
46        let the_boolean = false;
47        the_boolean.should().be(false);
48    }
49}