InterleavedBufferAttribute.tests.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. /**
  2. * @author simonThiele / https://github.com/simonThiele
  3. * @author TristanVALCKE / https://github.com/Itee
  4. */
  5. /* global QUnit */
  6. import { InterleavedBuffer } from '../../../../src/core/InterleavedBuffer';
  7. import { InterleavedBufferAttribute } from '../../../../src/core/InterleavedBufferAttribute';
  8. export default QUnit.module( 'Core', () => {
  9. QUnit.module( 'InterleavedBufferAttribute', () => {
  10. // INSTANCING
  11. QUnit.todo( "Instancing", ( assert ) => {
  12. assert.ok( false, "everything's gonna be alright" );
  13. } );
  14. // PROPERTIES
  15. QUnit.test( "count", ( assert ) => {
  16. var buffer = new InterleavedBuffer( new Float32Array( [ 1, 2, 3, 7, 8, 9 ] ), 3 );
  17. var instance = new InterleavedBufferAttribute( buffer, 2, 0 );
  18. assert.ok( instance.count === 2, "count is calculated via array length / stride" );
  19. } );
  20. QUnit.todo( "array", ( assert ) => {
  21. assert.ok( false, "everything's gonna be alright" );
  22. } );
  23. // PUBLIC STUFF
  24. // setY, setZ and setW are calculated in the same way so not QUnit.testing this
  25. // TODO: ( you can't be sure that will be the case in future, or a mistake was introduce in one off them ! )
  26. QUnit.test( "setX", ( assert ) => {
  27. var buffer = new InterleavedBuffer( new Float32Array( [ 1, 2, 3, 7, 8, 9 ] ), 3 );
  28. var instance = new InterleavedBufferAttribute( buffer, 2, 0 );
  29. instance.setX( 0, 123 );
  30. instance.setX( 1, 321 );
  31. assert.ok( instance.data.array[ 0 ] === 123 &&
  32. instance.data.array[ 3 ] === 321, "x was calculated correct based on index and default offset" );
  33. var buffer = new InterleavedBuffer( new Float32Array( [ 1, 2, 3, 7, 8, 9 ] ), 3 );
  34. var instance = new InterleavedBufferAttribute( buffer, 2, 1 );
  35. instance.setX( 0, 123 );
  36. instance.setX( 1, 321 );
  37. // the offset was defined as 1, so go one step futher in the array
  38. assert.ok( instance.data.array[ 1 ] === 123 &&
  39. instance.data.array[ 4 ] === 321, "x was calculated correct based on index and default offset" );
  40. } );
  41. QUnit.todo( "setY", ( assert ) => {
  42. assert.ok( false, "everything's gonna be alright" );
  43. } );
  44. QUnit.todo( "setZ", ( assert ) => {
  45. assert.ok( false, "everything's gonna be alright" );
  46. } );
  47. QUnit.todo( "setW", ( assert ) => {
  48. assert.ok( false, "everything's gonna be alright" );
  49. } );
  50. QUnit.todo( "getX", ( assert ) => {
  51. assert.ok( false, "everything's gonna be alright" );
  52. } );
  53. QUnit.todo( "getY", ( assert ) => {
  54. assert.ok( false, "everything's gonna be alright" );
  55. } );
  56. QUnit.todo( "getZ", ( assert ) => {
  57. assert.ok( false, "everything's gonna be alright" );
  58. } );
  59. QUnit.todo( "getW", ( assert ) => {
  60. assert.ok( false, "everything's gonna be alright" );
  61. } );
  62. QUnit.todo( "setXY", ( assert ) => {
  63. assert.ok( false, "everything's gonna be alright" );
  64. } );
  65. QUnit.todo( "setXYZ", ( assert ) => {
  66. assert.ok( false, "everything's gonna be alright" );
  67. } );
  68. QUnit.todo( "setXYZW", ( assert ) => {
  69. assert.ok( false, "everything's gonna be alright" );
  70. } );
  71. } );
  72. } );
粤ICP备19079148号