diff --git a/packages/plugin-measurements/CHANGELOG.md b/packages/plugin-measurements/CHANGELOG.md index 4828022feee..fdf7b8f7959 100644 --- a/packages/plugin-measurements/CHANGELOG.md +++ b/packages/plugin-measurements/CHANGELOG.md @@ -1,6 +1,12 @@ # Change log for: @freesewing/plugin-measurements +## unreleased (NaN-NaN-NaN) + +### Added + + - Added (esm) unit tests + ## 2.7.0 (2020-07-12) ### Added diff --git a/packages/plugin-measurements/package.json b/packages/plugin-measurements/package.json index 3cfcd550c2b..bd16af1ed49 100644 --- a/packages/plugin-measurements/package.json +++ b/packages/plugin-measurements/package.json @@ -30,18 +30,23 @@ "clean": "rimraf dist", "build": "rollup -c", "lernabuild": "rollup -c", - "test": "BABEL_ENV=production ../../node_modules/.bin/_mocha tests/*.test.js --require @babel/register", + "test": "BABEL_ENV=production ../../node_modules/.bin/_mocha tests/*.test.mjs --require @babel/register", "pubtest": "npm publish --registry http://localhost:6662", "pubforce": "npm publish", "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -", "start": "rollup -c -w", - "prettier": "npx prettier --write 'src/*.js' 'tests/*.js'" + "testci": "BABEL_ENV=production ../../node_modules/.bin/_mocha tests/*.test.mjs --require @babel/register", + "prettier": "npx prettier --write 'src/*.js' 'tests/*.mjs'" }, "peerDependencies": { "@freesewing/core": "^2.19.5" }, "dependencies": {}, - "devDependencies": {}, + "devDependencies": { + "mocha": "^9.1.1", + "chai": "^4.2.0", + "@babel/register": "^7.10.5" + }, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-measurements/tests/measurements.test.mjs b/packages/plugin-measurements/tests/measurements.test.mjs deleted file mode 100644 index dc1794f1ffd..00000000000 --- a/packages/plugin-measurements/tests/measurements.test.mjs +++ /dev/null @@ -1,34 +0,0 @@ -import freesewing from '@freesewing/core' -import Rendertest from '@freesewing/rendertest' -import chai from 'chai' -import plugin from '../dist/index.js' - -const expect = chai.expect - -const measurements = { - seatBack: 60, - seat: 100, - waist: 100, - waistBack: 45, - crossSeam: 100, - crossSeamFront: 42 -} - -const pattern = new Rendertest({ measurements } ).use(plugin) -pattern.draft().render() -const version = plugin.name.split('@').pop().split('/').join(':') - - -it('Should set the plugin name:version attribute', () => { - expect(pattern.svg.attributes.get(version)).to.equal(plugin.version) -}) - -it('Should set the extra measurements', () => { - expect(pattern.settings.measurements.seatFront).to.equal(40) - expect(pattern.settings.measurements.seatFrontArc).to.equal(20) - expect(pattern.settings.measurements.seatBackArc).to.equal(30) - expect(pattern.settings.measurements.waistFront).to.equal(55) - expect(pattern.settings.measurements.waistFrontArc).to.equal(27.5) - expect(pattern.settings.measurements.crossSeamBack).to.equal(58) -}) - diff --git a/packages/plugin-measurements/tests/plugin.test.mjs b/packages/plugin-measurements/tests/plugin.test.mjs new file mode 100644 index 00000000000..577cdef8098 --- /dev/null +++ b/packages/plugin-measurements/tests/plugin.test.mjs @@ -0,0 +1,29 @@ +import chai from 'chai' +import freesewing from '@freesewing/core' +import plugin from '../dist/index.js' + +const expect = chai.expect + +const measurements = { + seatBack: 60, + seat: 100, + waist: 100, + waistBack: 45, + crossSeam: 100, + crossSeamFront: 42 +} + +const pattern = new freesewing.Pattern().use(plugin) +pattern.apply({ measurements }).draft().render() + +describe('Measurements Plugin Tests', () => { + it('Should set the extra measurements', () => { + expect(pattern.settings.measurements.seatFront).to.equal(40) + expect(pattern.settings.measurements.seatFrontArc).to.equal(20) + expect(pattern.settings.measurements.seatBackArc).to.equal(30) + expect(pattern.settings.measurements.waistFront).to.equal(55) + expect(pattern.settings.measurements.waistFrontArc).to.equal(27.5) + expect(pattern.settings.measurements.crossSeamBack).to.equal(58) + }) +}) + diff --git a/packages/plugin-measurements/tests/shared.test.mjs b/packages/plugin-measurements/tests/shared.test.mjs new file mode 100644 index 00000000000..42cd98f4655 --- /dev/null +++ b/packages/plugin-measurements/tests/shared.test.mjs @@ -0,0 +1,10 @@ +// This file is auto-generated. +// Changes you make will be overwritten. +import freesewing from '@freesewing/core' +import chai from 'chai' +import plugin from '../dist/index.mjs' +import { sharedPluginTests } from '../../../tests/plugins/shared.mjs' + + +// Run shared tests +sharedPluginTests(plugin, freesewing, chai.expect)