use ValueError when vector/matrix multiplications sizes are not supported, was using TypeError for mat*vec and ValueError for vec*mat.
This commit is contained in:
@@ -1497,7 +1497,7 @@ int column_vector_multiplication(float r_vec[MAX_DIMENSIONS], VectorObject *vec,
|
||||
vec_cpy[3] = 1.0f;
|
||||
}
|
||||
else {
|
||||
PyErr_SetString(PyExc_TypeError,
|
||||
PyErr_SetString(PyExc_ValueError,
|
||||
"matrix * vector: "
|
||||
"len(matrix.col) and len(vector) must be the same, "
|
||||
"except for 4x4 matrix * 3D vector.");
|
||||
|
||||
@@ -111,8 +111,8 @@ class MatrixTesting(unittest.TestCase):
|
||||
|
||||
vec = Vector((1, 2))
|
||||
|
||||
self.assertRaises(TypeError, mat1.__mul__, vec)
|
||||
self.assertRaises(ValueError, vec.__mul__, mat1) # Why are these different?!
|
||||
self.assertRaises(ValueError, mat1.__mul__, vec)
|
||||
self.assertRaises(ValueError, vec.__mul__, mat1)
|
||||
|
||||
mat2 = Matrix(((1, 2),
|
||||
(-2, 3)))
|
||||
|
||||
Reference in New Issue
Block a user