lint pretty

This commit is contained in:
sbriat 2023-03-30 10:57:22 +02:00
parent c3aab70f19
commit f52792c999
7 changed files with 29 additions and 11 deletions

View File

@ -2,7 +2,7 @@ module.exports = {
parser: '@typescript-eslint/parser',
parserOptions: {
project: 'tsconfig.json',
tsconfigRootDir : __dirname,
tsconfigRootDir: __dirname,
sourceType: 'module',
},
plugins: ['@typescript-eslint/eslint-plugin'],

View File

@ -12,7 +12,7 @@ test:
stage: test
image: docker/compose:latest
variables:
DOCKER_TLS_CERTDIR: ""
DOCKER_TLS_CERTDIR: ''
services:
- docker:dind
script:
@ -22,7 +22,7 @@ test:
- docker exec -t v3-user-api sh -c "npm run test:integration:ci"
coverage: /All files[^|]*\|[^|]*\s+([\d\.]+)/
rules:
- if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH || $CI_COMMIT_MESSAGE =~ /--check/ || $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
- if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH || $CI_COMMIT_MESSAGE =~ /--check/ || $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
when: always
###############
@ -33,7 +33,7 @@ build:
stage: build
image: docker:20.10.22
variables:
DOCKER_TLS_CERTDIR: ""
DOCKER_TLS_CERTDIR: ''
services:
- docker:dind
before_script:

6
.prettierignore Normal file
View File

@ -0,0 +1,6 @@
node_modules
*.log*
.env
dist
coverage
.prettierrc.json

View File

@ -14,7 +14,7 @@ A RabbitMQ instance is also required to send / receive messages when data has be
## Installation
- copy `.env.dist` to `.env` :
- copy `.env.dist` to `.env` :
```bash
cp .env.dist .env
@ -22,13 +22,13 @@ A RabbitMQ instance is also required to send / receive messages when data has be
Modify it if needed.
- install the dependencies :
- install the dependencies :
```bash
npm install
```
- start the containers :
- start the containers :
```bash
docker compose up -d
@ -36,7 +36,6 @@ A RabbitMQ instance is also required to send / receive messages when data has be
The app runs automatically on port **5001**.
## Database migration
Before using the app, you need to launch the database migration (it will be launched inside the container) :
@ -107,10 +106,10 @@ As mentionned earlier, RabbitMQ messages are sent after these events :
Various messages are also sent for logging purpose.
## Tests
## Tests / ESLint / Prettier
Tests are run outside the container for ease of use (switching between different environments inside containers using prisma is complicated and error prone).
The integration tests use a dedicated database (see *db-test* section of *docker-compose.yml*).
The integration tests use a dedicated database (see _db-test_ section of _docker-compose.yml_).
```bash
# run all tests (unit + integration)
@ -124,6 +123,12 @@ npm run test:integration
# coverage
npm run test:cov
# ESLint
npm run lint
# Prettier
npm run pretty
```
## License

View File

@ -25,5 +25,9 @@ RUN npm run build
# Run unit tests
RUN npm run test:unit:ci
# ESLint / Prettier
RUN npm run lint:check
RUN npm run pretty:check
# Start the server
CMD [ "node", "dist/main.js" ]

View File

@ -14,6 +14,9 @@
"start:debug": "nest start --debug --watch",
"start:prod": "node dist/main",
"lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
"lint:check": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix-dry-run --ignore-path .gitignore",
"pretty:check": "./node_modules/.bin/prettier --check .",
"pretty": "./node_modules/.bin/prettier --write .",
"test": "npm run migrate:test && dotenv -e .env.test jest",
"test:unit": "jest --testPathPattern 'tests/unit/' --verbose",
"test:unit:ci": "jest --testPathPattern 'tests/unit/' --coverage",