From 7e4524edd53141cbb80d3e50eff5f241072e03ef Mon Sep 17 00:00:00 2001 From: Albin Henriksson <albhe428@student.liu.se> Date: Tue, 16 Feb 2021 16:14:11 +0100 Subject: [PATCH] Issue/2 test front end --- .gitlab-ci.yml | 6 ++++-- .gitlab/client.gitlab-ci.yml | 23 +++++++++++++++++++++++ .gitlab/server.gitlab-ci.yml | 24 +++++++++++------------- client/package-lock.json | 32 +++++++++++++++++++++++--------- client/package.json | 14 +++++++++++--- 5 files changed, 72 insertions(+), 27 deletions(-) create mode 100644 .gitlab/client.gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1c7b2a5c..bc3e1186 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,8 @@ stages: - - setup - - test + - server-test + - client-install + - client-test include: - local: .gitlab/server.gitlab-ci.yml + - local: .gitlab/client.gitlab-ci.yml diff --git a/.gitlab/client.gitlab-ci.yml b/.gitlab/client.gitlab-ci.yml new file mode 100644 index 00000000..42d3266e --- /dev/null +++ b/.gitlab/client.gitlab-ci.yml @@ -0,0 +1,23 @@ +image: node:10 + +install: + stage: client-install + script: + - cd client + - npm install + artifacts: + name: "artifacts" + untracked: true + expire_in: 60 mins + paths: + - client/.npm/ + - client/node_modules/ + +test:unit: + stage: client-test + script: + - cd client + - npm run test:coverage + dependencies: + - install + coverage: /All files\s*\|\s*([\d\.]+)/ diff --git a/.gitlab/server.gitlab-ci.yml b/.gitlab/server.gitlab-ci.yml index 481e31bb..33d3934c 100644 --- a/.gitlab/server.gitlab-ci.yml +++ b/.gitlab/server.gitlab-ci.yml @@ -1,18 +1,16 @@ -image: python -cache: - paths: - - server/env/ - -before_script: - - python --version - - pip install virtualenv - - cd server/ - - python -m venv env - - source env/bin/activate - - pip install -r requirements.txt test-server: - stage: test + image: python + cache: + paths: + - server/env/ + stage: server-test script: + - python --version + - pip install virtualenv + - cd server/ + - python -m venv env + - source env/bin/activate + - pip install -r requirements.txt - pytest --cov app tests/ diff --git a/client/package-lock.json b/client/package-lock.json index 597032d7..c8b2a048 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -5567,11 +5567,11 @@ } }, "eslint": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.19.0.tgz", - "integrity": "sha512-CGlMgJY56JZ9ZSYhJuhow61lMPPjUzWmChFya71Z/jilVos7mR/jPgaEfVGgMBY5DshbKdG8Ezb8FDCHcoMEMg==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.20.0.tgz", + "integrity": "sha512-qGi0CTcOGP2OtCQBgWZlQjcTuP0XkIpYFj25XtRTQSHC+umNnp7UMshr2G8SLsRFYDdAPFeHOsiteadmMH02Yw==", "requires": { - "@babel/code-frame": "^7.0.0", + "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.3.0", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -5583,7 +5583,7 @@ "eslint-utils": "^2.1.0", "eslint-visitor-keys": "^2.0.0", "espree": "^7.3.1", - "esquery": "^1.2.0", + "esquery": "^1.4.0", "esutils": "^2.0.2", "file-entry-cache": "^6.0.0", "functional-red-black-tree": "^1.0.1", @@ -5610,6 +5610,14 @@ "v8-compile-cache": "^2.0.3" }, "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "requires": { + "@babel/highlight": "^7.10.4" + } + }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -5806,6 +5814,12 @@ "confusing-browser-globals": "^1.0.10" } }, + "eslint-config-strongloop": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-strongloop/-/eslint-config-strongloop-2.1.0.tgz", + "integrity": "sha1-dj3Rmt/OiNewBR5uJV8a43eDtMY=", + "dev": true + }, "eslint-import-resolver-node": { "version": "0.3.4", "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", @@ -14471,9 +14485,9 @@ }, "dependencies": { "ajv": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.0.4.tgz", - "integrity": "sha512-xzzzaqgEQfmuhbhAoqjJ8T/1okb6gAzXn/eQRNpAN1AEUoHJTNF9xCDRTtf/s3SKldtZfa+RJeTs+BQq+eZ/sw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.0.tgz", + "integrity": "sha512-svS9uILze/cXbH0z2myCK2Brqprx/+JJYK5pHicT/GQiBfzzhUVAIT6MwqJg8y4xV/zoGsUeuPuwtoiKSGE15g==", "requires": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -16762,4 +16776,4 @@ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" } } -} +} \ No newline at end of file diff --git a/client/package.json b/client/package.json index 70f2bf2e..f85e71cc 100644 --- a/client/package.json +++ b/client/package.json @@ -37,7 +37,8 @@ "build": "react-scripts build", "test": "react-scripts test", "eject": "react-scripts eject", - "lint": "eslint \"./src/**/*.{js,ts,tsx}\"" + "lint": "eslint \"./src/**/*.{js,ts,tsx}\"", + "test:coverage": "react-scripts test --coverage" }, "browserslist": { "production": [ @@ -51,5 +52,12 @@ "last 1 safari version" ] }, - "proxy": "http://localhost:5000/api/" -} + "proxy": "http://localhost:5000/api/", + "devDependencies": { + "@typescript-eslint/eslint-plugin": "^4.15.1", + "@typescript-eslint/parser": "^4.15.1", + "eslint": "^7.20.0", + "eslint-config-strongloop": "^2.1.0", + "eslint-plugin-react": "^7.22.0" + } +} \ No newline at end of file -- GitLab