From 2f03106f06179f9f7d8d31a6c9b7fce5d6526bcb Mon Sep 17 00:00:00 2001 From: dabeng Date: Mon, 1 Jan 2018 21:29:58 +0800 Subject: [PATCH] add e2e tests --- .travis.yml | 23 +- README.md | 2 +- bower.json | 2 +- demo/ajax-datasource.html | 4 +- demo/bottom2top.html | 4 +- demo/center-on-selected-node.html | 4 +- demo/color-coded.html | 4 +- demo/css/jquery.orgchart.css | 437 +++++++++ demo/custom-template.html | 4 +- demo/default-collapsed.html | 4 +- demo/drag-drop.html | 4 +- demo/edit-chart.html | 4 +- demo/expand-to-given-depth.html | 4 +- demo/export-chart.html | 4 +- demo/filter-node.html | 4 +- demo/get-hierarchy.html | 4 +- demo/integrate-map.html | 4 +- demo/js/{js => }/jquery.orgchart.js | 862 ++++++++++-------- demo/js/jquery.orgchart.min.js | 2 - demo/left2right.html | 4 +- demo/link-node.html | 4 +- demo/local-datasource.html | 4 +- demo/multiple-layers.html | 4 +- demo/ondemand-loading-data.html | 40 +- demo/option-createNode.html | 4 +- demo/pan-zoom.html | 4 +- demo/reload-data.html | 4 +- demo/report-path.html | 4 +- demo/right2left.html | 4 +- demo/toggle-sibs-resp.html | 25 +- demo/ul-datasource.html | 4 +- demo/vertical-depth.html | 14 +- dist/css/jquery.orgchart.min.css | 2 +- dist/js/jquery.orgchart.min.js | 2 +- gulpfile.js | 69 +- package-lock.json | 237 ++++- package.json | 10 +- test/e2e/drag-drop/test.js | 4 +- test/e2e/edit-chart/page-model.js | 5 +- test/e2e/edit-chart/test.js | 68 +- test/e2e/local-datasource/test.js | 2 +- test/e2e/ondemand-loading-data/page-model.js | 10 + test/e2e/ondemand-loading-data/test.js | 30 + test/e2e/reload-data/page-model.js | 9 + test/e2e/reload-data/test.js | 28 + test/e2e/toggle-sibs-resp/page-model.js | 15 + test/e2e/toggle-sibs-resp/test.js | 40 + test/e2e/vertical-depth/page-model.js | 17 + test/e2e/vertical-depth/test.js | 47 + .../tests.js} | 2 +- test/testrunner.html | 24 - test/tests-manual.js | 43 - test/{unit-tests.js => unit/tests.js} | 2 +- 53 files changed, 1560 insertions(+), 605 deletions(-) create mode 100644 demo/css/jquery.orgchart.css rename demo/js/{js => }/jquery.orgchart.js (65%) delete mode 100644 demo/js/jquery.orgchart.min.js create mode 100644 test/e2e/ondemand-loading-data/page-model.js create mode 100644 test/e2e/ondemand-loading-data/test.js create mode 100644 test/e2e/reload-data/page-model.js create mode 100644 test/e2e/reload-data/test.js create mode 100644 test/e2e/toggle-sibs-resp/page-model.js create mode 100644 test/e2e/toggle-sibs-resp/test.js create mode 100644 test/e2e/vertical-depth/page-model.js create mode 100644 test/e2e/vertical-depth/test.js rename test/{integration-tests.js => integration/tests.js} (98%) delete mode 100644 test/testrunner.html delete mode 100644 test/tests-manual.js rename test/{unit-tests.js => unit/tests.js} (99%) diff --git a/.travis.yml b/.travis.yml index b16d7f92..7d18768f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,3 +1,22 @@ language: node_js -node_js: - - "6" \ No newline at end of file +node_js: "stable" + + before_install: + - stty cols 80 + +dist: trusty +sudo: required + +addons: + firefox: latest + apt: + sources: + - google-chrome + packages: + - google-chrome-stable fluxbox + +before_script: + - "export DISPLAY=:99.0" + - "sh -e /etc/init.d/xvfb start" + - sleep 3 + - fluxbox >/dev/null 2>&1 & \ No newline at end of file diff --git a/README.md b/README.md index a3556cfd..f3d9d099 100644 --- a/README.md +++ b/README.md @@ -125,7 +125,7 @@ No problem. With the help of ES6 Template literals, we can customize the any com - you have to install node.js v6+ because our unit tests are based on jsdom v11 - you have to install modern browsers because many behaviors of orgchart plugin are based on HTML5 and CSS3 - run ```npm install``` to install necessary dependencies -- run ```npm test``` to start up unit testing +- run ```npm test``` to run all tests including unit tests, integration tests and e2e tests - run ```npm run build``` to generate production js&css files of plugin - run ```npm start``` to start up local web server to host all the demos diff --git a/bower.json b/bower.json index 293cbbda..1b765c49 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "orgchart", - "version": "2.0.14", + "version": "2.0.15", "homepage": "https://github.com/dabeng/OrgChart", "authors": [ "dabeng " diff --git a/demo/ajax-datasource.html b/demo/ajax-datasource.html index ed2ea607..ea78c941 100644 --- a/demo/ajax-datasource.html +++ b/demo/ajax-datasource.html @@ -5,7 +5,7 @@ Organization Chart Plugin - + @@ -13,7 +13,7 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - \ No newline at end of file diff --git a/test/tests-manual.js b/test/tests-manual.js deleted file mode 100644 index c1e83401..00000000 --- a/test/tests-manual.js +++ /dev/null @@ -1,43 +0,0 @@ -chai.should(); - -describe('orgchart', function () { - - var $container = $('#chart-container'); - var datascource = { - 'name': 'Lao Lao', - 'title': 'general manager', - 'children': [ - { 'name': 'Bo Miao', 'title': 'department manager' }, - { 'name': 'Su Miao', 'title': 'department manager', - 'children': [ - { 'name': 'Tie Hua', 'title': 'senior engineer' }, - { 'name': 'Hei Hei', 'title': 'senior engineer', - 'children': [ - { 'name': 'Pang Pang', 'title': 'engineer' }, - { 'name': 'Xiang Xiang', 'title': 'UE engineer' } - ] - } - ] - }, - { 'name': 'Hong Miao', 'title': 'department manager' }, - { 'name': 'Chun Miao', 'title': 'department manager' } - ] - }; - - beforeEach(function () { - var oc = $('#chart-container').orgchart({ - 'data' : datascource, - 'nodeContent': 'title' - }); - }); - - afterEach(function () { - $container.empty(); - }); - - it('There will be an orgchart embeded in the container div after initialization', function () { - var $chart = $container.find('.orgchart'); - - $chart.length.should.equal(1); - }); -}); \ No newline at end of file diff --git a/test/unit-tests.js b/test/unit/tests.js similarity index 99% rename from test/unit-tests.js rename to test/unit/tests.js index 5d6c38b6..3475f36c 100644 --- a/test/unit-tests.js +++ b/test/unit/tests.js @@ -9,7 +9,7 @@ var dom = new JSDOM('
global.window = dom.window; global.document = dom.window.document; var $ = require('jquery'); -require('../src/js/jquery.orgchart'); +require('../../src/js/jquery.orgchart'); describe('orgchart -- unit tests', function () {