- Dependeica Jest
Es una dependencia que nos ayuda escribir y ejecutar los test unitarios dentro de nuestro proyecto.
- Instalación de la dependencia:
npm instal --save-dev jest
- Configuración en package.json, se agrega el siguiente script para correr el test unitario:
"test": "node ./node_modules/jest/bin/jest.js"
- Escriba en su terminal lo siguiente para ejecutar el test unitario:
por ejemplo el del proyecto para el archivo Reader.test.js:
npm test "Aquí se escribe la ruta del archivo que se va probar el test"
npm test test/reader/Reader.test.js
- Instalación de la dependencia:
- Dependecia express
Es una framwork que nor permite crear server y a exponer información con método HTPP (GET, POST, PUT, DELETE).
- Método HTPP:
- GET: Lo que hace es regresar informacón
- POST: Lo que hace es persistir información
- PUT: lo que hace es Actualizar la informacón
- DELETE: lo que hace es Eliminar cierta información
- Instalación de la dependecia:
npm install express --save
- Agregando en el package.json el siguiente script para poder correr el server:
"server": "node ./Aquí va la ruta de nuestro server/Aqí va el nombre de nuestro server con su extención"
- Ejemplo con el server del proyecto:
"server": "node ./lib/server.js"
- Como ejecutar el server:
npm run server
- Método HTPP:
- Dependencia ESlinter
Eslinter nos ayuda terner mas legible el código y a corregir la sintaxis de nuestro codigó en javaScript.
- nstalación:
npm install eslint --save-dev
- Ejecuta el comando para generar la configuración del linter:
en la consola se mostrar las isguientes preguntas:
npm init @eslint/config
- primera pregunta:
How would you like to use ESlinter?
, selecciones la opciónTo check syntax and find problems
- segunda pregunta:
What type of modules does your project use?
, seleccione la opciónCommonJS (require/exports)
- tercer pregunta:
Which framework does your project use?
, seleccione la opciónNone of these
- cuarta pregunta:
Does your project use Tyscript?
, seleccione la opciónNo
- quinta pregunta:
Where does your code run?
, seleccione la opciónBrowser
- sexta pregunta:
What format do you want your config files to be in?
, seleccione la opciónJavascript
- primera pregunta:
- Una ves instalado se crea un archivo
.eslintrc.js
y dentro vamos a agregar lo siguiente que son los roles.module.exports = { "env": { "browser": true, "commonjs": true, "es2021": true, "jest": true }, "extends": "eslint:recommended", "parserOptions": { "ecmaVersion": "latest" }, "rules": { indent: ["error", 4], "linebreak-style": ["error", "unix"], quotes: ["error", "double"], semi: ["error", "always"] } };
- Se agrega en el package.json el script:
"linter": "node ./node_modules/eslint/bin/eslint.js .", "linter-fix": "node ./node_modules/eslint/bin/eslint.js . --fix"
- Ejecutamos linter para que nos diga cuales son las insconsistencia de nuestro codigo:
npm run linter
- Ejecutamos linter para que nos diga cuales son las insconsistencia de nuestro codigo:
npm run linter-fix
- nstalación:
flowchart LR;
Reader -.- id1[(Estudiantes.json)];
Reader --> StudentService;
StudentService --> StudentController;
StudentController --> Server
Server --> StudentController
Server -.-> API
/v1/students -.GET.- API
/v1/students/emails -.GET.- API
/v1/students/credits -.GET.- API
subgraph express
Server
end
Endpoint | Request | Response |
---|---|---|
/v1/students | /v1/students | Consultar todos los estudiantes con todos sus campos. |
/v1/students/emails | /v1/students/emails | Consultar los emails de todos los estudiantes que tengan certificación haveCertification . |
/v1/students/credits | /v1/students/credits | Consultar todos los estudiantes que tengan credits mayor a 500 . |
El Método que se utiliza GET que solo expone la información de los estudiantes en un formato JSON (Estudiantes.json).
- Endpoint para consultar todos los estudiantes con todos sus campos:
Asi es como mustra:
localhost:300/v1/students
- Endpoint para consultar los emails de todos los estudiantes que tengan certificación
haveCertification
.Asi es como mustra:localhost:300/v1/students/emails
- Endpoint para consultar todos los estudiantes que tengan credits mayor a 500.
Asi es como mustra:
localhost:300/v1/students/credits