JorgeligLabs-kata-DNA
Desafio:
Proyecto que detecta si una persona tiene diferencias genéticas basándose en su secuencia de ADN.
Ejemplo de Cadena sin mutación
| A | T | G | C | G | A |
| C | A | G | T | G | C |
| T | T | A | T | T | T |
| A | G | A | C | G | G |
| G | C | G | T | C | A |
| T | C | A | C | T | G |
Ejemplo de cadena con mutación
| A | T | C | G | G | A |
| C | A | G | T | G | C |
| T | T | A | T | G | T |
| A | G | A | A | G | G |
| C | C | C | C | T | A |
| T | C | A | C | T | G |
Requerimientos
- Visual Studio 2022 o superior
- .Net 6.0.x
- Docker Desktop
Herramientas usadas
- Base de datos: MongoDB (local) y Azure Cosmos DB API for MongoDB (en la nube)
- Hosting: Azure App Services
- Proveedor de identidad: Auth0
- CI/CD: Azure DevOps
- Pruebas Unitarias: xUnit
End points disponibles
URL /mutation
Method POST
Request
json {"dna": ["string"]}
Success Response 200 Forbiden Response 403
URL /stats
Success Response 200
json { "count_mutations": "int32", "count_no_mutation": "int32", "ratio": "double" }
Pasos para hacer una prueba en ambiente local
- Clonar el repositorio
- Abrir la solucion con Visual Studio 2022
- Seleccionar docker-compose como ""startup proyect""
- Abrir swagger: https://localhost:56274/swagger/index.html
- Generar un token valido
curl -X 'GET' \ 'https://localhost:56274/api/AuthHelper/get-access-token' \ -H 'accept: */*'
- Usar access_token generado en los Headers para los end point /mutation y /stats
Pasos para hacer una prueba en linea
- Abrir swagger: https://jorgeliglabs-kata-dna.azurewebsites.net/swagger/index.html
- Generar un token valido
curl -X 'GET' \ 'https://jorgeliglabs-kata-dna.azurewebsites.net/api/AuthHelper/get-access-token' \ -H 'accept: */*'
- Usar access_token generado en los Headers para los end point /mutation y /stats