{"version":3,"sources":["https://lively-kernel.org/lively4/lively4-active-expression-proxies/test/graphics-test.js"],"names":["expect","Point","rect","pt","Grid","describe","it","snap","to","equal","p1","p2","p3","subPt","x","y","addPt","eqPt","r1","dist","containsPoint"],"mappings":"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","file":"graphics-test.js","sourcesContent":["import {expect} from 'src/external/chai.js';\nimport {Point, rect, pt} from 'src/client/graphics.js'\nimport {Grid} from 'src/client/morphic/snapping.js';\n\n\ndescribe('graphics', () => {\n\n\n  it('Grid should snap values', () => {\n    expect(Grid.snap(1, 100, 20)).to.equal(0);\n  });\n\n  it('Grid should snap negative values', () => {\n    expect(Grid.snap(-1, 100, 20)).to.equal(0);\n    expect(Grid.snap(-98, 100, 20)).to.equal(-100);\n    expect(Grid.snap(-102, 100, 20)).to.equal(-100);\n  });\n\n  it('Grid should not snap values above snap size', () => {\n    expect(Grid.snap(21, 100, 20)).to.equal(21);\n  });\n\n  it('Grid should round up while snapping', () => {\n    expect(Grid.snap(198, 100, 20)).to.equal(200);\n  });\n\n\n\n  it('subPt should subtract points', () => {\n    var p1 = new Point(10,7)\n    var p2 = new Point(4,4)\n    var p3 = p1.subPt(p2)\n    \n    expect(p3.x).to.equal(6);\n    expect(p3.y).to.equal(3);\n  });\n  \n  it('addPt should subtract points', () => {\n    var p1 = new Point(10,7)\n    var p2 = new Point(4,4)\n    var p3 = p1.addPt(p2)\n    \n    expect(p3.x).to.equal(14);\n    expect(p3.y).to.equal(11);\n  });\n  \n  it('eqPt should compare points', () => {\n    var p1 = new Point(10,7)\n    var p2 = new Point(4,4)\n    var p3 = new Point(10,7)\n    \n    expect(p1.eqPt(p1)).to.equal(true);\n    expect(p1.eqPt(p2)).to.equal(false);\n    expect(p1.eqPt(p3)).to.equal(true);\n  });\n\n  it('rect should create a recangle', () => {\n    var r1 = rect(10,5,50, 100)\n    expect(r1.x).to.equal(10);\n  });\n\n  it('dist should compute distance', () => {\n    var p1 = new Point(0,0)\n    var p2 = new Point(10,0)\n    var p3 = new Point(0,10)\n    \n    expect(p1.dist(p1)).to.equal(0);\n    expect(p1.dist(p2)).to.equal(10);\n    expect(p1.dist(p3)).to.equal(10);\n  });\n\n  \n  it('rect containsPoint', () => {\n    var r1 = rect(10,5,50, 100)\n    expect(r1.containsPoint(pt(11,6))).to.equal(true);\n    expect(r1.containsPoint(pt(0,6))).to.equal(false);\n\n  });\n});"]}