1
0
Fork 0

chore(plugin-mirror): Changes for v3. See #2856

This commit is contained in:
Joost De Cock 2022-09-27 11:57:31 +02:00
parent 3212e5eedc
commit 026d090351

View file

@ -7,7 +7,7 @@ const expect = chai.expect
describe('Mirror Plugin Tests', () => { describe('Mirror Plugin Tests', () => {
const part = { const part = {
name: 'test', name: 'test',
draft: ({ points, Point, macro, paths, Path }) => { draft: ({ points, Point, macro, paths, Path, part }) => {
points.mirrorA = new Point(-100, -100) points.mirrorA = new Point(-100, -100)
points.mirrorB = new Point(100, 100) points.mirrorB = new Point(100, 100)
points.a = new Point(10, 20) points.a = new Point(10, 20)
@ -23,58 +23,61 @@ describe('Mirror Plugin Tests', () => {
macro('mirror', settings) macro('mirror', settings)
macro('mirror', { ...settings, prefix: 'test' }) macro('mirror', { ...settings, prefix: 'test' })
macro('mirror', { ...settings, clone: false }) macro('mirror', { ...settings, clone: false })
return part
}, },
plugins: [plugin],
} }
const Pattern = new Design({ plugins: [plugin], parts: [part] }) const Pattern = new Design({ parts: [part] })
const pattern = new Pattern() const pattern = new Pattern()
pattern.draft() pattern.draft()
it('Should mirror points', () => { it('Should mirror points', () => {
expect(pattern.parts.test.points.mirroredA.x).to.equal(20) expect(pattern.parts[0].test.points.mirroredA.x).to.equal(20)
expect(pattern.parts.test.points.mirroredA.y).to.equal(10) expect(pattern.parts[0].test.points.mirroredA.y).to.equal(10)
expect(pattern.parts.test.points.mirroredB.x).to.equal(40) expect(pattern.parts[0].test.points.mirroredB.x).to.equal(40)
expect(pattern.parts.test.points.mirroredB.y).to.equal(30) expect(pattern.parts[0].test.points.mirroredB.y).to.equal(30)
}) })
it('Should mirror points with custom prefix', () => { it('Should mirror points with custom prefix', () => {
expect(pattern.parts.test.points.testA.x).to.equal(20) expect(pattern.parts[0].test.points.testA.x).to.equal(20)
expect(pattern.parts.test.points.testA.y).to.equal(10) expect(pattern.parts[0].test.points.testA.y).to.equal(10)
expect(pattern.parts.test.points.testB.x).to.equal(40) expect(pattern.parts[0].test.points.testB.x).to.equal(40)
expect(pattern.parts.test.points.testB.y).to.equal(30) expect(pattern.parts[0].test.points.testB.y).to.equal(30)
}) })
it('Should mirror points without cloning them', () => { it('Should mirror points without cloning them', () => {
expect(pattern.parts.test.points.a.x).to.equal(20) expect(pattern.parts[0].test.points.a.x).to.equal(20)
expect(pattern.parts.test.points.a.y).to.equal(10) expect(pattern.parts[0].test.points.a.y).to.equal(10)
expect(pattern.parts.test.points.b.x).to.equal(40) expect(pattern.parts[0].test.points.b.x).to.equal(40)
expect(pattern.parts.test.points.b.y).to.equal(30) expect(pattern.parts[0].test.points.b.y).to.equal(30)
}) })
it('Should mirror paths', () => { it('Should mirror paths', () => {
expect(pattern.parts.test.paths.mirroredTest.ops[0].to.x).to.equal(2) expect(pattern.parts[0].test.paths.mirroredTest.ops[0].to.x).to.equal(2)
expect(pattern.parts.test.paths.mirroredTest.ops[0].to.y).to.equal(1) expect(pattern.parts[0].test.paths.mirroredTest.ops[0].to.y).to.equal(1)
expect(pattern.parts.test.paths.mirroredTest.ops[1].cp1.x).to.equal(20) expect(pattern.parts[0].test.paths.mirroredTest.ops[1].cp1.x).to.equal(20)
expect(pattern.parts.test.paths.mirroredTest.ops[1].cp1.y).to.equal(10) expect(pattern.parts[0].test.paths.mirroredTest.ops[1].cp1.y).to.equal(10)
expect(pattern.parts.test.paths.mirroredTest.ops[1].cp2.x).to.equal(40) expect(pattern.parts[0].test.paths.mirroredTest.ops[1].cp2.x).to.equal(40)
expect(pattern.parts.test.paths.mirroredTest.ops[1].cp2.y).to.equal(30) expect(pattern.parts[0].test.paths.mirroredTest.ops[1].cp2.y).to.equal(30)
expect(pattern.parts.test.paths.mirroredTest.ops[1].to.x).to.equal(60) expect(pattern.parts[0].test.paths.mirroredTest.ops[1].to.x).to.equal(60)
expect(pattern.parts.test.paths.mirroredTest.ops[1].to.y).to.equal(50) expect(pattern.parts[0].test.paths.mirroredTest.ops[1].to.y).to.equal(50)
}) })
it('Should mirror paths with custom prefix', () => { it('Should mirror paths with custom prefix', () => {
expect(pattern.parts.test.paths.testTest.ops[0].to.x).to.equal(2) expect(pattern.parts[0].test.paths.testTest.ops[0].to.x).to.equal(2)
expect(pattern.parts.test.paths.testTest.ops[0].to.y).to.equal(1) expect(pattern.parts[0].test.paths.testTest.ops[0].to.y).to.equal(1)
expect(pattern.parts.test.paths.testTest.ops[1].cp1.x).to.equal(20) expect(pattern.parts[0].test.paths.testTest.ops[1].cp1.x).to.equal(20)
expect(pattern.parts.test.paths.testTest.ops[1].cp1.y).to.equal(10) expect(pattern.parts[0].test.paths.testTest.ops[1].cp1.y).to.equal(10)
expect(pattern.parts.test.paths.testTest.ops[1].cp2.x).to.equal(40) expect(pattern.parts[0].test.paths.testTest.ops[1].cp2.x).to.equal(40)
expect(pattern.parts.test.paths.testTest.ops[1].cp2.y).to.equal(30) expect(pattern.parts[0].test.paths.testTest.ops[1].cp2.y).to.equal(30)
expect(pattern.parts.test.paths.testTest.ops[1].to.x).to.equal(60) expect(pattern.parts[0].test.paths.testTest.ops[1].to.x).to.equal(60)
expect(pattern.parts.test.paths.testTest.ops[1].to.y).to.equal(50) expect(pattern.parts[0].test.paths.testTest.ops[1].to.y).to.equal(50)
}) })
it('Should mirror paths without cloning them', () => { it('Should mirror paths without cloning them', () => {
expect(pattern.parts.test.paths.test.ops[0].to.x).to.equal(2) expect(pattern.parts[0].test.paths.test.ops[0].to.x).to.equal(2)
expect(pattern.parts.test.paths.test.ops[0].to.y).to.equal(1) expect(pattern.parts[0].test.paths.test.ops[0].to.y).to.equal(1)
expect(pattern.parts.test.paths.test.ops[1].cp1.x).to.equal(20) expect(pattern.parts[0].test.paths.test.ops[1].cp1.x).to.equal(20)
expect(pattern.parts.test.paths.test.ops[1].cp1.y).to.equal(10) expect(pattern.parts[0].test.paths.test.ops[1].cp1.y).to.equal(10)
expect(pattern.parts.test.paths.test.ops[1].cp2.x).to.equal(40) expect(pattern.parts[0].test.paths.test.ops[1].cp2.x).to.equal(40)
expect(pattern.parts.test.paths.test.ops[1].cp2.y).to.equal(30) expect(pattern.parts[0].test.paths.test.ops[1].cp2.y).to.equal(30)
expect(pattern.parts.test.paths.test.ops[1].to.x).to.equal(60) expect(pattern.parts[0].test.paths.test.ops[1].to.x).to.equal(60)
expect(pattern.parts.test.paths.test.ops[1].to.y).to.equal(50) expect(pattern.parts[0].test.paths.test.ops[1].to.y).to.equal(50)
}) })
}) })