Added assert_matrix_eq to allow high max_relative for tests
This commit is contained in:
@@ -146,7 +146,9 @@ impl PartialEq for Matrix {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
for col_idx in 0..self.matrix[row_idx].len() {
|
for col_idx in 0..self.matrix[row_idx].len() {
|
||||||
if !relative_eq!(self.matrix[row_idx][col_idx], _rhs.matrix[row_idx][col_idx]) {
|
if !relative_eq!(
|
||||||
|
self.matrix[row_idx][col_idx],
|
||||||
|
_rhs.matrix[row_idx][col_idx]) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -535,6 +537,24 @@ mod tests {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn assert_matrix_eq(_lhs: &Matrix, _rhs: &Matrix, max_relative: f32) -> bool {
|
||||||
|
if _lhs.matrix.len() != _rhs.matrix.len() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
for row_idx in 0.._lhs.matrix.len() {
|
||||||
|
if _lhs.matrix[row_idx].len() != _rhs.matrix[row_idx].len() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
for col_idx in 0.._lhs.matrix[row_idx].len() {
|
||||||
|
assert_relative_eq!( _lhs.matrix[row_idx][col_idx],
|
||||||
|
_rhs.matrix[row_idx][col_idx],
|
||||||
|
max_relative = max_relative);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
true
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn inverse() {
|
fn inverse() {
|
||||||
let m = Matrix::from_array([
|
let m = Matrix::from_array([
|
||||||
@@ -558,6 +578,6 @@ mod tests {
|
|||||||
[-0.52256, -0.81392, -0.30075, 0.30639],
|
[-0.52256, -0.81392, -0.30075, 0.30639],
|
||||||
]);
|
]);
|
||||||
|
|
||||||
assert_eq!(expected, b);
|
assert_matrix_eq(&expected, &b, 0.0001);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user