import chai from 'chai' import { Design } from '@freesewing/core' import { plugin } from './dist/index.mjs' const expect = chai.expect const Pattern = new Design() const pattern = new Pattern().use(plugin) pattern.draft().render() describe('Buttons Plugin Test', () => { for (const snippet of ['button', 'buttonhole', 'snap-stud', 'snap-socket']) { it(`Should add the ${snippet} snippet to defs`, () => { expect(pattern.svg.defs.indexOf(``)).to.not.equal(-1) }) } it('Draws a button on an anchor point', () => { let pattern = new Pattern() pattern.use(plugin) pattern.parts.test = new pattern.Part() let { Point, snippets, Snippet } = pattern.parts.test.shorthand() snippets.button = new Snippet('button', new Point(10,20)) pattern.render() let c = pattern.svg expect(c.layout.test.svg).to.contain(' { let pattern = new Pattern() pattern.use(plugin) pattern.parts.test = new pattern.Part() let { Point, snippets, Snippet } = pattern.parts.test.shorthand() snippets.button = new Snippet('buttonhole', new Point(10,20)) pattern.render() let c = pattern.svg expect(c.layout.test.svg).to.contain(' { let pattern = new Pattern() pattern.use(plugin) pattern.parts.test = new pattern.Part() let { Point, snippets, Snippet } = pattern.parts.test.shorthand() snippets.button = new Snippet('buttonhole-start', new Point(10,20)) pattern.render() let c = pattern.svg expect(c.layout.test.svg).to.contain(' { let pattern = new Pattern() pattern.use(plugin) pattern.parts.test = new pattern.Part() let { Point, snippets, Snippet } = pattern.parts.test.shorthand() snippets.button = new Snippet('buttonhole-end', new Point(10,20)) pattern.render() let c = pattern.svg expect(c.layout.test.svg).to.contain(' { let pattern = new Pattern() pattern.use(plugin) pattern.parts.test = new pattern.Part() let { Point, snippets, Snippet } = pattern.parts.test.shorthand() snippets.button = new Snippet('snap-stud', new Point(10,20)) pattern.render() let c = pattern.svg expect(c.layout.test.svg).to.contain(' { let pattern = new Pattern() pattern.use(plugin) pattern.parts.test = new pattern.Part() let { Point, snippets, Snippet } = pattern.parts.test.shorthand() snippets.button = new Snippet('snap-socket', new Point(10,20)) pattern.render() let c = pattern.svg expect(c.layout.test.svg).to.contain('