diff --git a/.travis.yml b/.travis.yml index 7a7834901..fcc2764f1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,9 +3,6 @@ node_js: - '8' script: - make init + - make packages-test - make website-build - make storybook-build - #- yarn run fmt:check - #- yarn run test:cover -#after_success: -# - yarn run coverage diff --git a/Makefile b/Makefile index 0c3e1ad44..0bcc6c235 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ SOURCES = packages -.PHONY: help init packages-build packages-publish clean-all website website-build website-deploy storybook storybook-build storybook-deploy deploy-all +.PHONY: help bootstrap init packages-build packages-publish clean-all website website-build website-deploy storybook storybook-build storybook-deploy deploy-all ######################################################################################################################## # @@ -35,17 +35,22 @@ help: ##prints help .DEFAULT_GOAL := help +######################################################################################################################## +# +# INIT +# +######################################################################################################################## + +bootstrap: ##@init lerna bootstrap + @./node_modules/.bin/lerna bootstrap + init: ##@init cleanup/install/bootstrap @make clean-all @yarn install - @./node_modules/.bin/lerna bootstrap + @make bootstrap @make packages-build @cd website && yarn install -deploy-all: ##@deploy deploy website & storybook - @make website-deploy - @make storybook-deploy - ######################################################################################################################## # # CLEANUP @@ -77,6 +82,11 @@ endef # ######################################################################################################################## +packages-test: ##@packages run tests for all packages + # stream can be used for a mire verbose output + #@./node_modules/.bin/lerna run --concurrency 1 --stream test + @./node_modules/.bin/lerna run --concurrency 1 test + packages-build: ##@packages build all packages @echo "${YELLOW}Building all packages${RESET}" @$(foreach source, $(SOURCES), $(call clean-source-lib, $(source))) @@ -124,3 +134,8 @@ storybook-deploy: ##@storybook build and deploy storybook @echo "${YELLOW}Deploying storybook${RESET}" @./node_modules/.bin/gh-pages -d storybook-static -r git@github.com:plouc/nivo.git -b gh-pages -e storybook + + +deploy-all: ##@deploy deploy website & storybook + @make website-deploy + @make storybook-deploy diff --git a/package.json b/package.json index 5a131e8db..0d8b1d6c7 100644 --- a/package.json +++ b/package.json @@ -21,24 +21,19 @@ "@nivo/babel-preset": "^0.32.0-9", "lodash": "^4.17.4", "prop-types": "^15.5.10", - "puppeteer": "^0.13.0", - "react-motion": "^0.5.1" + "puppeteer": "^0.13.0" }, "devDependencies": { "@storybook/addon-info": "^3.2.17", "@storybook/addon-knobs": "^3.2.17", "@storybook/react": "^3.2.17", "clog-cli": "^1.0.0", - "cross-env": "^5.0.5", - "enzyme": "^2.9.1", "gh-pages": "^1.0.0", "lerna": "^2.5.1", "lint-staged": "^4.1.0", - "nivo-generators": "0.9.3", "prettier": "^1.6.1", "react": "^15.6.1", "react-dom": "^15.6.1", - "react-test-renderer": "^15.6.1", "validate-commit-msg": "^2.14.0" }, "peerDependencies": { @@ -48,10 +43,6 @@ "module": "es/index.js", "jsnext:main": "es/index.js", "scripts": { - "test": "npm run test:unit", - "test:cover": "npm run test:unit:cover", - "test:unit": "jest --verbose ./test", - "test:unit:cover": "jest --verbose --coverage ./test", "fmt": "prettier --print-width=100 --tab-width=4 --bracket-spacing --no-semi --trailing-comma es5 --single-quote --color --write \"{src,specs,test,.storybook,stories}/**/*.js\"", "fmt:check": "prettier --print-width=100 --tab-width=4 --bracket-spacing --no-semi --trailing-comma es5 --single-quote --list-different \"{src,specs,test,.storybook,stories}/**/*.js\"", "disabledPrepublishOnly": "npm test && npm run build", diff --git a/packages/nivo-bar/.npmignore b/packages/nivo-bar/.npmignore index 9a2f03238..38b8a4b84 100644 --- a/packages/nivo-bar/.npmignore +++ b/packages/nivo-bar/.npmignore @@ -16,6 +16,5 @@ /storybook-static # test -.travis.yml /coverage -/test +/tests diff --git a/packages/nivo-bar/package.json b/packages/nivo-bar/package.json index 4fd00f993..306f3021f 100644 --- a/packages/nivo-bar/package.json +++ b/packages/nivo-bar/package.json @@ -19,7 +19,8 @@ "cross-env": "^5.0.5", "jest": "^21.0.1", "react": "^15.6.1", - "react-dom": "^15.6.1" + "react-dom": "^15.6.1", + "react-test-renderer": "^15.6.1" }, "peerDependencies": { "prop-types": "^15.5.10", @@ -29,6 +30,8 @@ "access": "public" }, "scripts": { + "test": "jest --verbose ./tests", + "test:cover": "jest --verbose --coverage ./tests", "build:commonjs": "rm -rf lib && cross-env NODE_ENV=commonjs babel src --out-dir lib", "build:commonjs:watch": "npm run build:commonjs -- --watch", "build:es": "rm -rf es && cross-env NODE_ENV=es babel src --out-dir es", diff --git a/test/components/charts/bar/Bar.test.js b/packages/nivo-bar/tests/Bar.test.js similarity index 97% rename from test/components/charts/bar/Bar.test.js rename to packages/nivo-bar/tests/Bar.test.js index cef011662..6290ca9ea 100644 --- a/test/components/charts/bar/Bar.test.js +++ b/packages/nivo-bar/tests/Bar.test.js @@ -1,6 +1,6 @@ import React from 'react' import renderer from 'react-test-renderer' -import Bar from '../../../../src/components/charts/bar/Bar' +import Bar from '../src/Bar' it('should render a basic bar chart', () => { const component = renderer.create( diff --git a/test/components/charts/bar/__snapshots__/Bar.test.js.snap b/packages/nivo-bar/tests/__snapshots__/Bar.test.js.snap similarity index 100% rename from test/components/charts/bar/__snapshots__/Bar.test.js.snap rename to packages/nivo-bar/tests/__snapshots__/Bar.test.js.snap diff --git a/packages/nivo-calendar/.npmignore b/packages/nivo-calendar/.npmignore index 9a2f03238..d951d743e 100644 --- a/packages/nivo-calendar/.npmignore +++ b/packages/nivo-calendar/.npmignore @@ -18,4 +18,4 @@ # test .travis.yml /coverage -/test +/tests diff --git a/packages/nivo-chord/.npmignore b/packages/nivo-chord/.npmignore index 9a2f03238..d951d743e 100644 --- a/packages/nivo-chord/.npmignore +++ b/packages/nivo-chord/.npmignore @@ -18,4 +18,4 @@ # test .travis.yml /coverage -/test +/tests diff --git a/packages/nivo-circle-packing/.npmignore b/packages/nivo-circle-packing/.npmignore index 9a2f03238..d951d743e 100644 --- a/packages/nivo-circle-packing/.npmignore +++ b/packages/nivo-circle-packing/.npmignore @@ -18,4 +18,4 @@ # test .travis.yml /coverage -/test +/tests diff --git a/packages/nivo-core/.npmignore b/packages/nivo-core/.npmignore new file mode 100644 index 000000000..38b8a4b84 --- /dev/null +++ b/packages/nivo-core/.npmignore @@ -0,0 +1,20 @@ +# src (will be transpiled) +/src + +# logs +*.log* + +# OSX +.DS_Store + +# config/build +.babelrc + +# storybook +/.storybook +/stories +/storybook-static + +# test +/coverage +/tests diff --git a/packages/nivo-core/package.json b/packages/nivo-core/package.json index 54885651e..57893dbe0 100644 --- a/packages/nivo-core/package.json +++ b/packages/nivo-core/package.json @@ -22,6 +22,8 @@ "babel-cli": "^6.26.0", "babel-jest": "^20.0.3", "cross-env": "^5.0.5", + "enzyme": "^3.2.0", + "enzyme-adapter-react-16": "^1.1.0", "jest": "^21.0.1", "react": "^15.6.1", "react-dom": "^15.6.1" @@ -34,6 +36,8 @@ "access": "public" }, "scripts": { + "test": "jest --verbose ./tests", + "test:cover": "jest --verbose --coverage ./tests", "build:commonjs": "rm -rf lib && cross-env NODE_ENV=commonjs babel src --out-dir lib", "build:commonjs:watch": "npm run build:commonjs -- --watch", "build:es": "rm -rf es && cross-env NODE_ENV=es babel src --out-dir es", diff --git a/test/hocs/withCurve.test.js b/packages/nivo-core/tests/hocs/withCurve.test.js similarity index 89% rename from test/hocs/withCurve.test.js rename to packages/nivo-core/tests/hocs/withCurve.test.js index b006750e6..29417a5b2 100644 --- a/test/hocs/withCurve.test.js +++ b/packages/nivo-core/tests/hocs/withCurve.test.js @@ -7,10 +7,13 @@ * file that was distributed with this source code. */ import React from 'react' -import { shallow } from 'enzyme' +import { configure, shallow } from 'enzyme' +import Adapter from 'enzyme-adapter-react-16' import { curveLinear, curveBasis, curveMonotoneY } from 'd3-shape' import withCurve from '../../src/hocs/withCurve' +configure({ adapter: new Adapter() }) + it('should append d3 curve interpolator', () => { const Sample = withCurve()('div') diff --git a/test/hocs/withDimensions.test.js b/packages/nivo-core/tests/hocs/withDimensions.test.js similarity index 89% rename from test/hocs/withDimensions.test.js rename to packages/nivo-core/tests/hocs/withDimensions.test.js index b2d17c071..c16363b47 100644 --- a/test/hocs/withDimensions.test.js +++ b/packages/nivo-core/tests/hocs/withDimensions.test.js @@ -7,10 +7,13 @@ * file that was distributed with this source code. */ import React from 'react' -import { shallow } from 'enzyme' +import { configure, shallow } from 'enzyme' +import Adapter from 'enzyme-adapter-react-16' import { defaultMargin } from '../../src/defaults' import withDimensions from '../../src/hocs/withDimensions' +configure({ adapter: new Adapter() }) + it('should add default margin', () => { const Sample = withDimensions()('div') diff --git a/test/lib/__snapshots__/axes.test.js.snap b/packages/nivo-core/tests/lib/__snapshots__/axes.test.js.snap similarity index 100% rename from test/lib/__snapshots__/axes.test.js.snap rename to packages/nivo-core/tests/lib/__snapshots__/axes.test.js.snap diff --git a/test/lib/axes.test.js b/packages/nivo-core/tests/lib/axes.test.js similarity index 100% rename from test/lib/axes.test.js rename to packages/nivo-core/tests/lib/axes.test.js diff --git a/test/lib/colors/colors.test.js b/packages/nivo-core/tests/lib/colors/colors.test.js similarity index 100% rename from test/lib/colors/colors.test.js rename to packages/nivo-core/tests/lib/colors/colors.test.js diff --git a/test/lib/colors/motion.test.js b/packages/nivo-core/tests/lib/colors/motion.test.js similarity index 100% rename from test/lib/colors/motion.test.js rename to packages/nivo-core/tests/lib/colors/motion.test.js diff --git a/test/lib/colors/quantize.test.js b/packages/nivo-core/tests/lib/colors/quantize.test.js similarity index 100% rename from test/lib/colors/quantize.test.js rename to packages/nivo-core/tests/lib/colors/quantize.test.js diff --git a/test/lib/defs.test.js b/packages/nivo-core/tests/lib/defs.test.js similarity index 100% rename from test/lib/defs.test.js rename to packages/nivo-core/tests/lib/defs.test.js diff --git a/test/lib/getLabelGenerator.test.js b/packages/nivo-core/tests/lib/getLabelGenerator.test.js similarity index 100% rename from test/lib/getLabelGenerator.test.js rename to packages/nivo-core/tests/lib/getLabelGenerator.test.js diff --git a/test/lib/interactivity/detect.test.js b/packages/nivo-core/tests/lib/interactivity/detect.test.js similarity index 100% rename from test/lib/interactivity/detect.test.js rename to packages/nivo-core/tests/lib/interactivity/detect.test.js diff --git a/test/lib/polar/utils.test.js b/packages/nivo-core/tests/lib/polar/utils.test.js similarity index 100% rename from test/lib/polar/utils.test.js rename to packages/nivo-core/tests/lib/polar/utils.test.js diff --git a/packages/nivo-heatmap/.npmignore b/packages/nivo-heatmap/.npmignore new file mode 100644 index 000000000..38b8a4b84 --- /dev/null +++ b/packages/nivo-heatmap/.npmignore @@ -0,0 +1,20 @@ +# src (will be transpiled) +/src + +# logs +*.log* + +# OSX +.DS_Store + +# config/build +.babelrc + +# storybook +/.storybook +/stories +/storybook-static + +# test +/coverage +/tests diff --git a/packages/nivo-line/.npmignore b/packages/nivo-line/.npmignore new file mode 100644 index 000000000..38b8a4b84 --- /dev/null +++ b/packages/nivo-line/.npmignore @@ -0,0 +1,20 @@ +# src (will be transpiled) +/src + +# logs +*.log* + +# OSX +.DS_Store + +# config/build +.babelrc + +# storybook +/.storybook +/stories +/storybook-static + +# test +/coverage +/tests diff --git a/packages/nivo-pie/.npmignore b/packages/nivo-pie/.npmignore new file mode 100644 index 000000000..38b8a4b84 --- /dev/null +++ b/packages/nivo-pie/.npmignore @@ -0,0 +1,20 @@ +# src (will be transpiled) +/src + +# logs +*.log* + +# OSX +.DS_Store + +# config/build +.babelrc + +# storybook +/.storybook +/stories +/storybook-static + +# test +/coverage +/tests diff --git a/packages/nivo-radar/.npmignore b/packages/nivo-radar/.npmignore new file mode 100644 index 000000000..38b8a4b84 --- /dev/null +++ b/packages/nivo-radar/.npmignore @@ -0,0 +1,20 @@ +# src (will be transpiled) +/src + +# logs +*.log* + +# OSX +.DS_Store + +# config/build +.babelrc + +# storybook +/.storybook +/stories +/storybook-static + +# test +/coverage +/tests diff --git a/packages/nivo-sankey/.npmignore b/packages/nivo-sankey/.npmignore new file mode 100644 index 000000000..38b8a4b84 --- /dev/null +++ b/packages/nivo-sankey/.npmignore @@ -0,0 +1,20 @@ +# src (will be transpiled) +/src + +# logs +*.log* + +# OSX +.DS_Store + +# config/build +.babelrc + +# storybook +/.storybook +/stories +/storybook-static + +# test +/coverage +/tests diff --git a/packages/nivo-stream/.npmignore b/packages/nivo-stream/.npmignore new file mode 100644 index 000000000..38b8a4b84 --- /dev/null +++ b/packages/nivo-stream/.npmignore @@ -0,0 +1,20 @@ +# src (will be transpiled) +/src + +# logs +*.log* + +# OSX +.DS_Store + +# config/build +.babelrc + +# storybook +/.storybook +/stories +/storybook-static + +# test +/coverage +/tests diff --git a/packages/nivo-sunburst/.npmignore b/packages/nivo-sunburst/.npmignore new file mode 100644 index 000000000..38b8a4b84 --- /dev/null +++ b/packages/nivo-sunburst/.npmignore @@ -0,0 +1,20 @@ +# src (will be transpiled) +/src + +# logs +*.log* + +# OSX +.DS_Store + +# config/build +.babelrc + +# storybook +/.storybook +/stories +/storybook-static + +# test +/coverage +/tests diff --git a/packages/nivo-treemap/.npmignore b/packages/nivo-treemap/.npmignore new file mode 100644 index 000000000..38b8a4b84 --- /dev/null +++ b/packages/nivo-treemap/.npmignore @@ -0,0 +1,20 @@ +# src (will be transpiled) +/src + +# logs +*.log* + +# OSX +.DS_Store + +# config/build +.babelrc + +# storybook +/.storybook +/stories +/storybook-static + +# test +/coverage +/tests diff --git a/packages/nivo-voronoi/.npmignore b/packages/nivo-voronoi/.npmignore new file mode 100644 index 000000000..38b8a4b84 --- /dev/null +++ b/packages/nivo-voronoi/.npmignore @@ -0,0 +1,20 @@ +# src (will be transpiled) +/src + +# logs +*.log* + +# OSX +.DS_Store + +# config/build +.babelrc + +# storybook +/.storybook +/stories +/storybook-static + +# test +/coverage +/tests