GeometrySpec.js 823 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. import {
  2. pointsOnLine
  3. } from 'lib/util/Geometry';
  4. describe('util/Geometry', function() {
  5. describe('#pointsOnLine', function() {
  6. var p = { x: 0, y: 0 },
  7. q = { x: 100, y: 100 },
  8. z = { x: 5, y: 5 },
  9. zfuzz = { x: 5, y: 10 };
  10. it('should work', function() {
  11. expect(pointsOnLine(p, q, z)).to.be.true;
  12. expect(pointsOnLine(q, p, z)).to.be.true;
  13. expect(pointsOnLine(p, z, q)).to.be.true;
  14. // match fuzzy
  15. expect(pointsOnLine(q, p, zfuzz)).to.be.true;
  16. // match non-fuzzy
  17. expect(pointsOnLine(q, p, zfuzz, 0)).to.be.false;
  18. });
  19. it('should be null safe', function() {
  20. expect(pointsOnLine(p, q, null)).to.be.false;
  21. expect(pointsOnLine(p, null, z)).to.be.false;
  22. expect(pointsOnLine(null, q, z)).to.be.false;
  23. });
  24. });
  25. });