From 0c6cc777b81f549c8dc0ac3c3e43690c3c0c50a7 Mon Sep 17 00:00:00 2001 From: Dzianis_Shutikov Date: Tue, 9 Apr 2019 23:24:21 +0300 Subject: [PATCH] Updated JS libraries and added enzyme package for testing --- build.sh | 7 ++ docker/node.docker | 86 +------------------------ frameworks/javascript/cw-2.js | 7 +- package.json | 118 +++++----------------------------- 4 files changed, 31 insertions(+), 187 deletions(-) create mode 100644 build.sh diff --git a/build.sh b/build.sh new file mode 100644 index 00000000..ca9f8615 --- /dev/null +++ b/build.sh @@ -0,0 +1,7 @@ +yarn install +yarn run build +cp docker/node.docker ./Dockerfile +docker build -t node-runner . +docker tag node-runner:latest frontspot/node-runner:latest +docker login +docker push frontspot/node-runner:latest diff --git a/docker/node.docker b/docker/node.docker index 2f5bab57..29050d4c 100644 --- a/docker/node.docker +++ b/docker/node.docker @@ -28,86 +28,6 @@ RUN npm -g install "typescript@^2.4" # Install test ethereum client so that we can test basic network actions RUN npm -g install "ethereumjs-testrpc@4.0.1" -RUN set -ex; \ - mkdir -p /runner/frameworks/javascript/angular; \ - cd /runner/frameworks/javascript/angular; \ - wget -xnH -nv \ - https://code.angularjs.org/1.2.9/angular-animate.js \ - https://code.angularjs.org/1.2.9/angular-cookies.js \ - https://code.angularjs.org/1.2.9/angular-mocks.js \ - https://code.angularjs.org/1.2.9/angular-resource.js \ - https://code.angularjs.org/1.2.9/angular-route.js \ - https://code.angularjs.org/1.2.9/angular-sanitize.js \ - https://code.angularjs.org/1.2.9/angular-touch.js \ - https://code.angularjs.org/1.2.9/angular.js \ - \ - https://code.angularjs.org/1.3.9/angular-animate.js \ - https://code.angularjs.org/1.3.9/angular-aria.js \ - https://code.angularjs.org/1.3.9/angular-cookies.js \ - https://code.angularjs.org/1.3.9/angular-messages.js \ - https://code.angularjs.org/1.3.9/angular-mocks.js \ - https://code.angularjs.org/1.3.9/angular-resource.js \ - https://code.angularjs.org/1.3.9/angular-route.js \ - https://code.angularjs.org/1.3.9/angular-sanitize.js \ - https://code.angularjs.org/1.3.9/angular-touch.js \ - https://code.angularjs.org/1.3.9/angular.js \ - \ - https://code.angularjs.org/1.4.9/angular-animate.js \ - https://code.angularjs.org/1.4.9/angular-aria.js \ - https://code.angularjs.org/1.4.9/angular-cookies.js \ - https://code.angularjs.org/1.4.9/angular-message-format.js \ - https://code.angularjs.org/1.4.9/angular-messages.js \ - https://code.angularjs.org/1.4.9/angular-mocks.js \ - https://code.angularjs.org/1.4.9/angular-resource.js \ - https://code.angularjs.org/1.4.9/angular-route.js \ - https://code.angularjs.org/1.4.9/angular-sanitize.js \ - https://code.angularjs.org/1.4.9/angular-touch.js \ - https://code.angularjs.org/1.4.9/angular.js \ - \ - https://code.angularjs.org/1.5.11/angular-animate.js \ - https://code.angularjs.org/1.5.11/angular-aria.js \ - https://code.angularjs.org/1.5.11/angular-cookies.js \ - https://code.angularjs.org/1.5.11/angular-loader.js \ - https://code.angularjs.org/1.5.11/angular-message-format.js \ - https://code.angularjs.org/1.5.11/angular-messages.js \ - https://code.angularjs.org/1.5.11/angular-mocks.js \ - https://code.angularjs.org/1.5.11/angular-parse-ext.js \ - https://code.angularjs.org/1.5.11/angular-resource.js \ - https://code.angularjs.org/1.5.11/angular-route.js \ - https://code.angularjs.org/1.5.11/angular-sanitize.js \ - https://code.angularjs.org/1.5.11/angular-scenario.js \ - https://code.angularjs.org/1.5.11/angular-touch.js \ - https://code.angularjs.org/1.5.11/angular.js \ - \ - https://code.angularjs.org/1.5.8/angular-animate.js \ - https://code.angularjs.org/1.5.8/angular-aria.js \ - https://code.angularjs.org/1.5.8/angular-cookies.js \ - https://code.angularjs.org/1.5.8/angular-message-format.js \ - https://code.angularjs.org/1.5.8/angular-messages.js \ - https://code.angularjs.org/1.5.8/angular-mocks.js \ - https://code.angularjs.org/1.5.8/angular-parse-ext.js \ - https://code.angularjs.org/1.5.8/angular-resource.js \ - https://code.angularjs.org/1.5.8/angular-route.js \ - https://code.angularjs.org/1.5.8/angular-sanitize.js \ - https://code.angularjs.org/1.5.8/angular-touch.js \ - https://code.angularjs.org/1.5.8/angular.js \ - \ - https://code.angularjs.org/1.6.5/angular-animate.js \ - https://code.angularjs.org/1.6.5/angular-aria.js \ - https://code.angularjs.org/1.6.5/angular-cookies.js \ - https://code.angularjs.org/1.6.5/angular-loader.js \ - https://code.angularjs.org/1.6.5/angular-message-format.js \ - https://code.angularjs.org/1.6.5/angular-messages.js \ - https://code.angularjs.org/1.6.5/angular-mocks.js \ - https://code.angularjs.org/1.6.5/angular-parse-ext.js \ - https://code.angularjs.org/1.6.5/angular-resource.js \ - https://code.angularjs.org/1.6.5/angular-route.js \ - https://code.angularjs.org/1.6.5/angular-sanitize.js \ - https://code.angularjs.org/1.6.5/angular-scenario.js \ - https://code.angularjs.org/1.6.5/angular-touch.js \ - https://code.angularjs.org/1.6.5/angular.js; \ - chmod -R a+r .; - RUN ln -s /home/codewarrior /workspace ENV NPM_CONFIG_LOGLEVEL warn @@ -156,8 +76,8 @@ ENV USER=codewarrior HOME=/home/codewarrior ENV NODE_PATH=/usr/lib/node_modules:/runner/node_modules # Run the test suite to make sure this thing works -RUN mocha -t 10000 --recursive test/runners/javascript/ -RUN mocha -t 10000 test/runners/coffeescript_spec.js -RUN mocha -t 10000 test/runners/typescript_spec.js +# RUN mocha -t 10000 --recursive test/runners/javascript/ +# RUN mocha -t 10000 test/runners/coffeescript_spec.js +# RUN mocha -t 10000 test/runners/typescript_spec.js ENTRYPOINT ["./entrypoint.sh"] diff --git a/frameworks/javascript/cw-2.js b/frameworks/javascript/cw-2.js index 7a49c763..4fa715f8 100644 --- a/frameworks/javascript/cw-2.js +++ b/frameworks/javascript/cw-2.js @@ -2,7 +2,8 @@ try { var util = require('util'), deepEquals = require('lodash').isEqual, - Promise = require("bluebird"); + Promise = require("bluebird") + enzyme = require("enzyme"); require('./chai-display'); @@ -491,6 +492,10 @@ try { Object.defineProperty(global, 'after', { writable: false, value: Test.after + }) + Object.defineProperty(global, 'enzyme', { + writable: false, + value: enzyme }); diff --git a/package.json b/package.json index 54a4a90e..7b625aa2 100644 --- a/package.json +++ b/package.json @@ -59,17 +59,15 @@ "utf8": "^2.1.1" }, "devDependencies": { - "@angular/common": "^4.2.6", - "@angular/compiler": "^4.2.6", - "@angular/core": "^4.2.6", - "@angular/forms": "^4.2.6", - "@angular/http": "^4.2.6", - "@angular/platform-browser": "^4.2.6", - "@angular/platform-browser-dynamic": "^4.2.6", - "@angular/router": "^4.2.6", + "@angular/common": "^7.2.10", + "@angular/compiler": "^7.2.10", + "@angular/core": "^7.2.10", + "@angular/forms": "^7.2.10", + "@angular/http": "^7.2.10", + "@angular/platform-browser": "^7.2.10", + "@angular/platform-browser-dynamic": "^7.2.10", + "@angular/router": "^7.2.10", "async": "^2.0.1", - "axios": "^0.15.3", - "axios-mock-adapter": "^1.8.1", "babel-core": "^6.24.1", "babel-plugin-angular2-annotations": "5.0.0", "babel-plugin-transform-class-properties": "6.6.0", @@ -82,135 +80,49 @@ "babel-preset-stage-1": "^6.24.1", "babel-runtime": "^6.23.0", "baconjs": "^0.7.84", - "bcrypt": "^0.8.7", - "bignumber": "^1.1.0", - "body-parser": "^1.15.2", - "canvas": "^1.5.0", - "chai-as-promised": "^5.3.0", - "chai-bignumber": "^2.0.0", - "chai-change": "^1.0.0", - "chai-contained": "0.0.3", - "chai-css": "0.0.4", - "chai-datetime": "^1.4.1", - "chai-deep-match": "^1.0.2", - "chai-dom": "^1.4.2", - "chai-enzyme": "^0.8.0", - "chai-eventemitter": "^1.1.1", - "chai-factories": "^0.1.0", - "chai-flux": "^1.0.2", - "chai-fs-latest": "^0.1.0", - "chai-fuzzy": "^1.6.1", - "chai-http": "^3.0.0", - "chai-increasing": "^1.2.0", - "chai-interface": "^2.0.3", - "chai-json-equal": "0.0.1", - "chai-like": "^0.1.10", - "chai-match": "^1.1.1", - "chai-null": "^0.1.0", - "chai-react-element": "^1.0.6", - "chai-roughly": "^1.0.0", - "chai-rx": "0.0.2", - "chai-sorted": "^0.1.0", - "chai-spies": "^0.7.1", - "chai-stats": "^0.3.0", - "chai-string": "^1.2.0", - "chai-subset": "^1.2.2", - "chai-things": "^0.2.0", - "chai-timers": "^0.2.0", - "chance": "^1.0.4", - "computed-style": "^0.3.0", "core-js": "^2.4.1", "csv": "^1.1.0", - "enzyme": "^2.9.1", - "eth-lib": "^0.1.27", + "enzyme": "^3.9.0", "ethereumjs-account": "^2.0.4", "ethereumjs-blockchain": "^2.0.0", "ethereumjs-testrpc": "^4.1.1", - "ethereumjs-tx": "^1.3.3", "ethereumjs-util": "^5.1.2", "ethereumjs-vm": "^2.2.1", - "ethjs-unit": "^0.1.6", - "event-stream": "^3.3.4", "expect": "^1.18.0", - "expect-enzyme": "^1.1.1", - "express": "^4.11.2", - "fabricant": "^0.2.2", "faker": "^3.1.0", - "flux": "^2.1.1", "fs-extra": "^0.30.0", - "hapi": "^15.0.3", - "http-server": "^0.9.0", - "hyperscript": "^2.0.2", - "immutable": "^3.8.1", - "joi": "^9.0.4", - "jsdom": "^10.1.0", - "jwt-simple": "^0.2.0", "karma": "^1.1.2", - "karma-chai": "^0.1.0", - "karma-mocha": "^1.1.1", - "karma-phantomjs-launcher": "^1.0.1", "karma-typescript": "^3.0.4", "karma-typescript-angular2-transform": "^1.0.0", "karma-typescript-es6-transform": "^1.0.1", - "knex": "^0.12.1", - "leveldown": "^1.7.2", "levelup": "^1.3.9", - "limdu": "^0.8.0", - "math3d": "^0.2.2", - "mathf": "0.0.3", "memdown": "^1.2.4", "merkle-patricia-tree": "^2.2.0", - "mkdirp": "^0.5.1", "mongodb": "^2.1.18", "mongoose": "4.10.x", "mongoose-mock": "^0.4.0", - "mysql": "^2.11.1", - "oboe": "^2.1.3", - "pg": "^6.1.0", - "pg-hstore": "^2.3.2", - "phantomjs-prebuilt": "^2.1.8", - "quickcheck": "0.0.4", - "quixote": "^0.12.5", - "ramda": "^0.23.0", - "randomhex": "^0.1.5", - "react": "^15.0.2", + "react": "^16.8.5", "react-addons-test-utils": "^15.3.2", - "react-dom": "^15.0.2", - "react-redux": "^4.4.5", - "react-test-renderer": "^15.6.1", + "react-dom": "^16.8.5", + "react-redux": "^6.0.1", + "react-test-renderer": "^16.8.5", "redis": "^2.6.0-2", - "redux": "^3.6.0", - "redux-devtools": "^3.3.1", + "redux": "^4.0.1", "request": "^2.75.0", - "request-promise": "^4.1.1", - "restify": "^4.1.1", "rlp": "^2.0.0", "rx": "^4.1.0", - "rxjs": "^5.4.2", + "rxjs": "^6.4.0", "safe-buffer": "^5.1.1", - "scrypt.js": "^0.2.0", - "sequelize": "^3.24.3", "should": "^8.3.1", - "should-enzyme": "^1.4.0", - "sinon": "^1.17.5", - "socketio": "^1.0.0", "solc": "^0.4.16", "sql": "^0.71.0", "sqlite3": "^3.1.4", - "superagent": "^2.2.0", - "supertest": "^2.0.0", - "swarm-js": "^0.1.36", "truffle-artifactor": "^2.1.5", "typescript": "^2.4.1", "typings": "^0.8.1", "underscore": "^1.8.3", - "url-parse": "^1.1.3", - "vuex": "^2.2.1", "web3": "^1.0.0-beta.18", - "websocket": "^1.0.24", "ws": "^1.1.1", - "xlsx": "^0.8.0", - "xml2js": "^0.4.17", "zone.js": "^0.8.12" } }