diff options
author | Pierre-Henri Symoneaux <pierre-henri.symoneaux@nokia.com> | 2017-06-07 15:47:40 +0200 |
---|---|---|
committer | Pierre-Henri Symoneaux <pierre-henri.symoneaux@nokia.com> | 2017-06-07 15:47:40 +0200 |
commit | f3d6a0b92b7ff7bac744ead80b58b328d39c8b13 (patch) | |
tree | 7d150caf46fe2dffb7e740e26eb2440b2bc1946c | |
parent | 38aaa2d7dd1d8e641d5ddefcfc2283d95ed68306 (diff) |
Added a few UT
-rw-r--r-- | src/cell.rs | 11 | ||||
-rw-r--r-- | src/row.rs | 54 |
2 files changed, 65 insertions, 0 deletions
diff --git a/src/cell.rs b/src/cell.rs index 16ab37e..af70a9d 100644 --- a/src/cell.rs +++ b/src/cell.rs @@ -384,4 +384,15 @@ mod tests { assert_eq!(cell.style.len(), 0); assert_eq!(cell.align, Alignment::LEFT); } + + #[test] + fn default_empty_cell() { + let cell = Cell::default(); + assert_eq!(cell.align, Alignment::LEFT); + assert!(cell.style.is_empty()); + assert_eq!(cell.get_content(), ""); + assert_eq!(cell.to_string(), ""); + assert_eq!(cell.get_height(), 1); + assert_eq!(cell.get_width(), 0); + } } @@ -248,3 +248,57 @@ macro_rules! row { ($style:ident => $($content:expr), *) => ($crate::row::Row::new(vec![$(cell!($style -> $content)), *])); ($($content:tt)*) => ($crate::row::Row::new(row!((); $($content)*))); } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn row_default_empty() { + let row1 = Row::default(); + assert_eq!(row1.len(), 0); + assert!(row1.is_empty()); + } + + #[test] + fn get_add_set_cell() { + let mut row = Row::from(vec!["foo", "bar", "foobar"]); + assert_eq!(row.len(), 3); + assert!(row.get_mut_cell(12).is_none()); + let c1 = row.get_mut_cell(0).unwrap().clone(); + assert_eq!(c1.get_content(), "foo"); + + let c1 = Cell::from(&"baz"); + assert!(row.set_cell(c1.clone(), 0).is_ok()); + assert_eq!(row.get_cell(0).unwrap().get_content(), "baz"); + + row.add_cell(c1.clone()); + assert_eq!(row.len(), 4); + assert_eq!(row.get_cell(3).unwrap().get_content(), "baz"); + } + + #[test] + fn insert_cell() { + let mut row = Row::from(vec!["foo", "bar", "foobar"]); + assert_eq!(row.len(), 3); + let cell = Cell::new("baz"); + row.insert_cell(1000, cell.clone()); + assert_eq!(row.len(), 4); + assert_eq!(row.get_cell(3).unwrap().get_content(), "baz"); + row.insert_cell(1, cell.clone()); + assert_eq!(row.len(), 5); + assert_eq!(row.get_cell(1).unwrap().get_content(), "baz"); + } + + #[test] + fn remove_cell() { + let mut row = Row::from(vec!["foo", "bar", "foobar"]); + assert_eq!(row.len(), 3); + row.remove_cell(1000); + assert_eq!(row.len(), 3); + row.remove_cell(1); + assert_eq!(row.len(), 2); + assert_eq!(row.get_cell(0).unwrap().get_content(), "foo"); + assert_eq!(row.get_cell(1).unwrap().get_content(), "foobar"); + } +}
\ No newline at end of file |