SpotLight.tests.js 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. /**
  2. * @author TristanVALCKE / https://github.com/Itee
  3. * @author moraxy / https://github.com/moraxy
  4. */
  5. /* global QUnit */
  6. import { runStdLightTests } from '../../qunit-utils';
  7. import { SpotLight } from '../../../../src/lights/SpotLight';
  8. export default QUnit.module( 'Lights', () => {
  9. QUnit.module( 'SpotLight', ( hooks ) => {
  10. var lights = undefined;
  11. hooks.beforeEach( function () {
  12. const parameters = {
  13. color: 0xaaaaaa,
  14. intensity: 0.5,
  15. distance: 100,
  16. angle: 0.8,
  17. penumbra: 8,
  18. decay: 2
  19. };
  20. lights = [
  21. new SpotLight( parameters.color ),
  22. new SpotLight( parameters.color, parameters.intensity ),
  23. new SpotLight( parameters.color, parameters.intensity, parameters.distance ),
  24. new SpotLight( parameters.color, parameters.intensity, parameters.distance, parameters.angle ),
  25. new SpotLight( parameters.color, parameters.intensity, parameters.distance, parameters.angle, parameters.penumbra ),
  26. new SpotLight( parameters.color, parameters.intensity, parameters.distance, parameters.angle, parameters.penumbra, parameters.decay ),
  27. ];
  28. } );
  29. // INHERITANCE
  30. QUnit.todo( "Extending", ( assert ) => {
  31. assert.ok( false, "everything's gonna be alright" );
  32. } );
  33. // INSTANCING
  34. QUnit.todo( "Instancing", ( assert ) => {
  35. assert.ok( false, "everything's gonna be alright" );
  36. } );
  37. // PROPERTIES
  38. QUnit.test( "power", ( assert ) => {
  39. var a = new SpotLight( 0xaaaaaa );
  40. a.intensity = 100;
  41. assert.numEqual( a.power, 100 * Math.PI, "Correct power for an intensity of 100" );
  42. a.intensity = 40;
  43. assert.numEqual( a.power, 40 * Math.PI, "Correct power for an intensity of 40" );
  44. a.power = 100;
  45. assert.numEqual( a.intensity, 100 / Math.PI, "Correct intensity for a power of 100" );
  46. } );
  47. // PUBLIC STUFF
  48. QUnit.todo( "isSpotLight", ( assert ) => {
  49. assert.ok( false, "everything's gonna be alright" );
  50. } );
  51. QUnit.todo( "copy", ( assert ) => {
  52. assert.ok( false, "everything's gonna be alright" );
  53. } );
  54. // OTHERS
  55. QUnit.test( 'Standard light tests', ( assert ) => {
  56. runStdLightTests( assert, lights );
  57. } );
  58. } );
  59. } );