Proyecto realizado con ExpressJS.
Antes de correr este servidor de Node cree un archivo .env
con las variables de entorno que se detallan en .env.example
. Es necesaria una API Key del servicio de Open Weather Map.
Puede encontrar la aplicación de ReactJS complementaria con este proyecto en este repositorio. Para ejecutar la aplicación, siga las instrucciones ahí detalladas.
Se utilizaron los módulos Husky y Lint Staged para correr ciertos comandos en el pre-commit
hook sólo en aquellos archivos *.js
que se encuentran en el área de staging. Estos comandos son:
eslint --fix
prettier --write
mocha --recursive
Esto asegura que, antes de efectivizar el commit, el código se encuentra libre de errores, correctamente formateado y que todos los tests pasaron exitosamente.
- /v1/location
- /v1/current/:city?
- /v1/forecast/:city?
Para la definición de los tests, se utilizaron los siguientes módulos:
- Mocha.
- Chai.
- Proxyquire.
- Sinon.
Se realizaron tests unitarios para verificar el comportamiento esperado de los endpoints.
Corre la aplicación en modo desarrollo. El servidor escucha peticiones en el puerto 8080 por defecto.
Ejecuta los tests definidos en el proyecto.
Muestra el resultado de la cobertura de los tests definidos.
Corre ESlint para verificar errores.
Corre ESlint para verificar errores y corregir los habilitados para hacerlo.
Ejecuta Prettier para formatear el código según las reglas establecidas en .prettierrc.json
.