You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
121 lines
2.9 KiB
121 lines
2.9 KiB
/* global QUnit */
|
|
|
|
import { InterleavedBuffer } from '../../../../src/core/InterleavedBuffer.js';
|
|
import { InterleavedBufferAttribute } from '../../../../src/core/InterleavedBufferAttribute.js';
|
|
|
|
export default QUnit.module( 'Core', () => {
|
|
|
|
QUnit.module( 'InterleavedBufferAttribute', () => {
|
|
|
|
// INSTANCING
|
|
QUnit.todo( 'Instancing', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
// PROPERTIES
|
|
QUnit.test( 'count', ( assert ) => {
|
|
|
|
var buffer = new InterleavedBuffer( new Float32Array( [ 1, 2, 3, 7, 8, 9 ] ), 3 );
|
|
var instance = new InterleavedBufferAttribute( buffer, 2, 0 );
|
|
|
|
assert.ok( instance.count === 2, 'count is calculated via array length / stride' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'array', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
// PUBLIC STUFF
|
|
// setY, setZ and setW are calculated in the same way so not QUnit.testing this
|
|
// TODO: ( you can't be sure that will be the case in future, or a mistake was introduce in one off them ! )
|
|
QUnit.test( 'setX', ( assert ) => {
|
|
|
|
var buffer = new InterleavedBuffer( new Float32Array( [ 1, 2, 3, 7, 8, 9 ] ), 3 );
|
|
var instance = new InterleavedBufferAttribute( buffer, 2, 0 );
|
|
|
|
instance.setX( 0, 123 );
|
|
instance.setX( 1, 321 );
|
|
|
|
assert.ok( instance.data.array[ 0 ] === 123 &&
|
|
instance.data.array[ 3 ] === 321, 'x was calculated correct based on index and default offset' );
|
|
|
|
var buffer = new InterleavedBuffer( new Float32Array( [ 1, 2, 3, 7, 8, 9 ] ), 3 );
|
|
var instance = new InterleavedBufferAttribute( buffer, 2, 1 );
|
|
|
|
instance.setX( 0, 123 );
|
|
instance.setX( 1, 321 );
|
|
|
|
// the offset was defined as 1, so go one step futher in the array
|
|
assert.ok( instance.data.array[ 1 ] === 123 &&
|
|
instance.data.array[ 4 ] === 321, 'x was calculated correct based on index and default offset' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'setY', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'setZ', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'setW', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'getX', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'getY', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'getZ', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'getW', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'setXY', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'setXYZ', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
QUnit.todo( 'setXYZW', ( assert ) => {
|
|
|
|
assert.ok( false, 'everything\'s gonna be alright' );
|
|
|
|
} );
|
|
|
|
} );
|
|
|
|
} );
|
|
|