UNPKG

math-base-geometry

Version:

utils for math geometry

45 lines (43 loc) 1.8 kB
function triangle(expect, twoDimensional) { const triangle = twoDimensional.Triangle; describe('Triangle', () => { describe("Area", () => { describe("Area computed with Base and Height", () => { context("Base=12 Height=15.2", () => { it("Should return 91.19999999999999", () => { expect(triangle.areaBaseHeight(12, 15.2)).to.equal(91.19999999999999); }); }) }); describe("Area computed with Heron formula", () => { context("A=3 B=4 C=5", () => { it("Should return 6", () => { expect(triangle.areaHeron(3, 4, 5)).to.equal(6); }); }); }); describe("Area computed knowing 2 sides and an angle", () => { context("A=7 B=10 angle=25", () => { it("Should return between 14.01, 14.99(JS floating point problems)", () => { expect(triangle.areaTwoSides(7, 10, 25)).to.be.closeTo(14.01, 14.99); }); }); }); }); describe("Perimeter", () => { context("A=1 B=6 C=3", () => { it("Should return 10", () => { expect(triangle.perimeter(1, 6, 3)).to.equal(10); }) }) }); describe("Base", () => { context("area=100 side=12 gamma=45 degree", () => { it("Should return between 23.01, 23.99 (JS floating point problems)", () => { expect(triangle.base(100, 12, 45)).to.be.closeTo(23.01, 23.99); }) }) }); }); } module.exports = { test: triangle };