mirror of
https://github.com/liabru/matter-js.git
synced 2025-03-14 00:38:41 -04:00
Body.nextGroup unit tests
This commit is contained in:
parent
112ec0034d
commit
329487609c
1 changed files with 86 additions and 0 deletions
|
@ -150,4 +150,90 @@ describe('Body.create', () => {
|
|||
assertXY(result.vertices[2], 340.9248627604002, 439.7481614149658);
|
||||
assertXY(result.vertices[3], 342.28094012193526, 437.0721468056014);
|
||||
});
|
||||
});
|
||||
|
||||
describe('Body.nextGroup', () => {
|
||||
it('should calculate and set the valid next group id if colliding', () => {
|
||||
jest.isolateModules(() => {
|
||||
// Arrange
|
||||
const Body = require("../../../src/body/Body");
|
||||
const isNonColliding = false;
|
||||
|
||||
// Act
|
||||
const result = Body.nextGroup(isNonColliding);
|
||||
|
||||
// Assert
|
||||
expect(result).toEqual(1);
|
||||
expect(Body._nextCollidingGroupId).toEqual(2);
|
||||
expect(Body._nextNonCollidingGroupId).toEqual(-1);
|
||||
});
|
||||
});
|
||||
|
||||
it('should calculate and set the valid next group id three times if colliding', () => {
|
||||
jest.isolateModules(() => {
|
||||
// Arrange
|
||||
const Body = require("../../../src/body/Body");
|
||||
const isNonColliding = false;
|
||||
|
||||
// Act
|
||||
let result = Body.nextGroup(isNonColliding);
|
||||
result = Body.nextGroup(isNonColliding);
|
||||
result = Body.nextGroup(isNonColliding);
|
||||
|
||||
// Assert
|
||||
expect(result).toEqual(3);
|
||||
expect(Body._nextCollidingGroupId).toEqual(4);
|
||||
expect(Body._nextNonCollidingGroupId).toEqual(-1);
|
||||
});
|
||||
});
|
||||
|
||||
it('should calculate and set the valid next group id if colliding is undefined', () => {
|
||||
jest.isolateModules(() => {
|
||||
// Arrange
|
||||
const Body = require("../../../src/body/Body");
|
||||
const isNonColliding = undefined;
|
||||
|
||||
// Act
|
||||
const result = Body.nextGroup(isNonColliding);
|
||||
|
||||
// Assert
|
||||
expect(result).toEqual(1);
|
||||
expect(Body._nextCollidingGroupId).toEqual(2);
|
||||
expect(Body._nextNonCollidingGroupId).toEqual(-1);
|
||||
});
|
||||
});
|
||||
|
||||
it('should calculate and set the valid next group id if non colliding', () => {
|
||||
jest.isolateModules(() => {
|
||||
// Arrange
|
||||
const Body = require("../../../src/body/Body");
|
||||
const isNonColliding = true;
|
||||
|
||||
// Act
|
||||
const result = Body.nextGroup(isNonColliding);
|
||||
|
||||
// Assert
|
||||
expect(result).toEqual(-1);
|
||||
expect(Body._nextCollidingGroupId).toEqual(1);
|
||||
expect(Body._nextNonCollidingGroupId).toEqual(-2);
|
||||
});
|
||||
});
|
||||
|
||||
it('should calculate and set the valid next group id three times if colliding', () => {
|
||||
jest.isolateModules(() => {
|
||||
// Arrange
|
||||
const Body = require("../../../src/body/Body");
|
||||
const isNonColliding = true;
|
||||
|
||||
// Act
|
||||
let result = Body.nextGroup(isNonColliding);
|
||||
result = Body.nextGroup(isNonColliding);
|
||||
result = Body.nextGroup(isNonColliding);
|
||||
|
||||
// Assert
|
||||
expect(result).toEqual(-3);
|
||||
expect(Body._nextCollidingGroupId).toEqual(1);
|
||||
expect(Body._nextNonCollidingGroupId).toEqual(-4);
|
||||
});
|
||||
});
|
||||
});
|
Loading…
Add table
Reference in a new issue