47 lines
1.4 KiB
TypeScript
47 lines
1.4 KiB
TypeScript
import {afterEach, describe, expect, it, vi} from 'vitest'
|
|
import {applyScaling} from './applyScaling'
|
|
import {Vector3} from "@babylonjs/core";
|
|
|
|
describe('applyScaling', () => {
|
|
afterEach(() => {
|
|
vi.restoreAllMocks();
|
|
})
|
|
it('should copy scaling', () => {
|
|
const oldMesh = {
|
|
scaling: {
|
|
clone: () => 'cloned'
|
|
}
|
|
}
|
|
const newMesh = {
|
|
scaling: null
|
|
}
|
|
applyScaling(oldMesh as any, newMesh as any, true, 0)
|
|
expect(newMesh.scaling).toBe('cloned')
|
|
})
|
|
it('scaling to be set to 1,1,1 if snap passed as null', () => {
|
|
const spy = vi.spyOn(Vector3, 'One');
|
|
//expect(spy).toHaveBeenCalledTimes(1);
|
|
const oldMesh = {
|
|
scaling: {}
|
|
}
|
|
const newMesh = {
|
|
scaling: null
|
|
}
|
|
applyScaling(oldMesh as any, newMesh as any, false, null)
|
|
expect(newMesh.scaling.x).toBe(1);
|
|
expect(newMesh.scaling.y).toBe(1);
|
|
expect(newMesh.scaling.z).toBe(1);
|
|
})
|
|
it('scaling to be set to 2,2,2 snap passed as Vector3(2,2,2)', () => {
|
|
const oldMesh = {
|
|
scaling: {}
|
|
}
|
|
const newMesh = {
|
|
scaling: new Vector3()
|
|
}
|
|
applyScaling(oldMesh as any, newMesh as any, false, 2)
|
|
expect(newMesh.scaling.x).toBe(2);
|
|
expect(newMesh.scaling.y).toBe(2);
|
|
expect(newMesh.scaling.z).toBe(2);
|
|
})
|
|
}); |