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

/* 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' );
} );
} );
} );