enhancedmath
Version:
This package contains some enhanced mathematical operations
56 lines (55 loc) • 1.57 kB
JavaScript
import { describe, test, expect } from 'vitest';
import inverse from '../Matrix/inverse';
describe('Matrix Inverse', () => {
test('should return undefined for non-square matrix', () => {
const matrix = [
[ ],
[ ],
[ ],
];
const result = inverse(matrix);
expect(result).toBeUndefined();
});
test('should return identity matrix for identity matrix input', () => {
const matrix = [
[ ],
[ ],
];
const result = inverse(matrix);
expect(result).toEqual(matrix);
});
test('should return inverse for 2x2 matrix', () => {
const matrix = [
[ ],
[ ],
];
const expectedInverse = [
[ ],
[-0.2, 0.4],
];
const result = inverse(matrix);
expect(result).toEqual(expectedInverse);
});
test('should return inverse for 3x3 matrix', () => {
const matrix = [
[ ],
[ ],
[ ],
];
const expectedInverse = [
[ ],
[-0.2, 0.3, 1],
[ ],
];
const result = inverse(matrix);
expect(result).toEqual(expectedInverse);
});
test('should return undefined for singular matrix (det = 0)', () => {
const matrix = [
[ ],
[ ],
];
const result = inverse(matrix);
expect(result).toBeUndefined();
});
});