diff options
Diffstat (limited to 'src/tests/matrix_test_parse.rs')
-rw-r--r-- | src/tests/matrix_test_parse.rs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/tests/matrix_test_parse.rs b/src/tests/matrix_test_parse.rs new file mode 100644 index 0000000..a31851a --- /dev/null +++ b/src/tests/matrix_test_parse.rs @@ -0,0 +1,22 @@ +use std::str::FromStr; + +use crate::{matrix::Matrix, error::ParseMatrixError}; + +#[test] +pub fn test_matrix_init_from_string() -> Result<(), ParseMatrixError> { + let data_target = vec![vec![1, 2, 3], vec![4, 5, 6], vec![7, 8, 9]]; + let target = Matrix::new(data_target); + let test = Matrix::from_str("1,2,3\n4,5,6\n7,8,9")?; + assert_eq!(target, test); + Ok(()) +} +#[test] +pub fn test_matrix_parse_malformed() -> () { + let malformed = "1,23,\n,567,\n\n5"; + let m = Matrix::from_str(malformed); + match m { + Ok(_) => panic!("This malformed matrix string should not have succeeded"), + Err(_) => (), + } +} + |