🚧 Work on core tests
This commit is contained in:
parent
3a9f21e3e1
commit
88622f3514
13 changed files with 54 additions and 14 deletions
|
@ -25,8 +25,6 @@
|
||||||
"module": "dist/index.mjs",
|
"module": "dist/index.mjs",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"clean": "rimraf dist",
|
"clean": "rimraf dist",
|
||||||
"nodebuild": "BABEL_ENV=production rollup -c -o dist/index.js -f cjs",
|
|
||||||
"modulebuild": "BABEL_ENV=production rollup -c -o dist/index.mjs -f es",
|
|
||||||
"build": "npm run clean && rollup -c && rollup -c rollup.tests.js",
|
"build": "npm run clean && rollup -c && rollup -c rollup.tests.js",
|
||||||
"testonly": "BABEL_ENV=production mocha tests/*.test.js",
|
"testonly": "BABEL_ENV=production mocha tests/*.test.js",
|
||||||
"test": "BABEL_ENV=production nyc -x node_modules -x tests/fixtures -x bin-pack mocha tests/*.test.js",
|
"test": "BABEL_ENV=production nyc -x node_modules -x tests/fixtures -x bin-pack mocha tests/*.test.js",
|
||||||
|
@ -35,7 +33,7 @@
|
||||||
"symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -",
|
"symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -",
|
||||||
"report": "BABEL_ENV=production nyc report --reporter=html",
|
"report": "BABEL_ENV=production nyc report --reporter=html",
|
||||||
"coverage": "BABEL_ENV=production nyc npm test && nyc report --reporter=text-lcov > coverage.lcov && ./node_modules/.bin/codecov",
|
"coverage": "BABEL_ENV=production nyc npm test && nyc report --reporter=text-lcov > coverage.lcov && ./node_modules/.bin/codecov",
|
||||||
"watch": "BABEL_ENV=production rollup -c -w -o dist/index.mjs -f es"
|
"watch": "BABEL_ENV=production rollup -c -w"
|
||||||
},
|
},
|
||||||
"peerDependencies": {},
|
"peerDependencies": {},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|
|
@ -17,6 +17,11 @@ export default {
|
||||||
file: "dist/index.mjs",
|
file: "dist/index.mjs",
|
||||||
format: "es",
|
format: "es",
|
||||||
sourcemap: true
|
sourcemap: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
file: "tests/dist/index.js",
|
||||||
|
format: "cjs",
|
||||||
|
sourcemap: true
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
plugins: [
|
plugins: [
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let Point = require("./dist/index.js").Point;
|
let Point = require("./dist").Point;
|
||||||
|
|
||||||
function newAttr() {
|
function newAttr() {
|
||||||
return new Point(0, 0).attributes;
|
return new Point(0, 0).attributes;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let freesewing = require("./dist/index.js");
|
let freesewing = require("./dist");
|
||||||
|
|
||||||
it("Design constructor should return pattern constructor", () => {
|
it("Design constructor should return pattern constructor", () => {
|
||||||
let design = new freesewing.Design({
|
let design = new freesewing.Design({
|
||||||
|
@ -61,3 +61,40 @@ it("Design constructor should load array of plugins", () => {
|
||||||
let pattern = new design();
|
let pattern = new design();
|
||||||
expect(pattern.hooks.preRender.length).to.equal(2);
|
expect(pattern.hooks.preRender.length).to.equal(2);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("Design constructor should construct basic part order", () => {
|
||||||
|
let design = new freesewing.Design({
|
||||||
|
dependencies: { step4: "step3" },
|
||||||
|
inject: { step4: "step3" },
|
||||||
|
parts: ["step1", "step2"]
|
||||||
|
});
|
||||||
|
let pattern = new design();
|
||||||
|
expect(pattern.config.draftOrder[0]).to.equal("step3");
|
||||||
|
expect(pattern.config.draftOrder[1]).to.equal("step4");
|
||||||
|
expect(pattern.config.draftOrder[2]).to.equal("step1");
|
||||||
|
expect(pattern.config.draftOrder[3]).to.equal("step2");
|
||||||
|
});
|
||||||
|
|
||||||
|
it("Design constructor should not require depencies for injected parts", () => {
|
||||||
|
let design = new freesewing.Design({
|
||||||
|
inject: { step4: "step3" },
|
||||||
|
parts: ["step1", "step2"]
|
||||||
|
});
|
||||||
|
let pattern = new design();
|
||||||
|
expect(pattern.config.draftOrder[0]).to.equal("step3");
|
||||||
|
expect(pattern.config.draftOrder[1]).to.equal("step4");
|
||||||
|
expect(pattern.config.draftOrder[2]).to.equal("step1");
|
||||||
|
expect(pattern.config.draftOrder[3]).to.equal("step2");
|
||||||
|
});
|
||||||
|
|
||||||
|
it("Design constructor should handle parts and dependencies overlap", () => {
|
||||||
|
let design = new freesewing.Design({
|
||||||
|
inject: { step4: "step3" },
|
||||||
|
parts: ["step1", "step2", "step3"]
|
||||||
|
});
|
||||||
|
let pattern = new design();
|
||||||
|
expect(pattern.config.draftOrder[0]).to.equal("step3");
|
||||||
|
expect(pattern.config.draftOrder[1]).to.equal("step4");
|
||||||
|
expect(pattern.config.draftOrder[2]).to.equal("step1");
|
||||||
|
expect(pattern.config.draftOrder[3]).to.equal("step2");
|
||||||
|
});
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let freesewing = require("./dist/index.js");
|
let freesewing = require("./dist");
|
||||||
|
|
||||||
it("Should contain all hooks", () => {
|
it("Should contain all hooks", () => {
|
||||||
let pattern = new freesewing.Pattern();
|
let pattern = new freesewing.Pattern();
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let freesewing = require("./dist/index.js");
|
let freesewing = require("./dist");
|
||||||
|
|
||||||
it("Svg constructor should initialize object", () => {
|
it("Svg constructor should initialize object", () => {
|
||||||
let pattern = new freesewing.Pattern();
|
let pattern = new freesewing.Pattern();
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let freesewing = require("./dist/index.js");
|
let freesewing = require("./dist");
|
||||||
let round = freesewing.utils.round;
|
let round = freesewing.utils.round;
|
||||||
|
|
||||||
it("Should offset a line", () => {
|
it("Should offset a line", () => {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let freesewing = require("./dist/index.js");
|
let freesewing = require("./dist");
|
||||||
|
|
||||||
it("Pattern constructor should initialize object", () => {
|
it("Pattern constructor should initialize object", () => {
|
||||||
let pattern = new freesewing.Pattern({
|
let pattern = new freesewing.Pattern({
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let Point = require("./dist/index.js").Point;
|
let Point = require("./dist").Point;
|
||||||
|
|
||||||
it("Should return point object", () => {
|
it("Should return point object", () => {
|
||||||
let result = new Point(2, 4);
|
let result = new Point(2, 4);
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let freesewing = require("./dist/index.js");
|
let freesewing = require("./dist");
|
||||||
|
|
||||||
it("Should create a snippet", () => {
|
it("Should create a snippet", () => {
|
||||||
let snip1 = new freesewing.Snippet("test", new freesewing.Point(12, 34));
|
let snip1 = new freesewing.Snippet("test", new freesewing.Point(12, 34));
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let freesewing = require("./dist/index.js");
|
let freesewing = require("./dist");
|
||||||
|
|
||||||
let pattern = new freesewing.Pattern();
|
let pattern = new freesewing.Pattern();
|
||||||
let store = pattern.store;
|
let store = pattern.store;
|
||||||
|
|
|
@ -3,7 +3,7 @@ let render = require("./fixtures/render.js");
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let chai = require("chai");
|
let chai = require("chai");
|
||||||
chai.use(require("chai-string"));
|
chai.use(require("chai-string"));
|
||||||
let freesewing = require("./dist/index.js");
|
let freesewing = require("./dist");
|
||||||
var round = freesewing.utils.round;
|
var round = freesewing.utils.round;
|
||||||
|
|
||||||
it("Svg constructor should initialize object", () => {
|
it("Svg constructor should initialize object", () => {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let expect = require("chai").expect;
|
let expect = require("chai").expect;
|
||||||
let freesewing = require("./dist/index.js");
|
let freesewing = require("./dist");
|
||||||
let utils = freesewing.utils;
|
let utils = freesewing.utils;
|
||||||
|
|
||||||
it("Should return the correct macro name", () => {
|
it("Should return the correct macro name", () => {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue