Skip to content

johnsebas28/MutantDetector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mutant Detector

Detector de mutantes - Proyecto de aprendizaje

Tabla de contenido


Concepto Prueba

crear un programa con un método o función con la siguiente firma:
boolean isMutant(String[] dna);
En donde se recibirá como parámetro un array de Strings que representan cada fila de una tabla de (NxN) con la secuencia del ADN. Las letras de los Strings solo pueden ser: (A,T,C,G), las cuales representa cada base nitrogenada del ADN. Sabrás si un humano es mutante, si encuentras más de una secuencia de cuatro letras iguales, de forma oblicua, horizontal o vertical.

Ejemplo Caso mutante:
String[] dna = {"ATGCGA","CAGTGC","TTATGT","AGAAGG","CCCCTA","TCACTG"};
En este caso el llamado a la función isMutant(dna) devuelve “true”.


Apoyo y documentación

Documentación API

URL API AWS http://xmenmutant-env.eba-dqmzwbsa.us-east-1.elasticbeanstalk.com

Métodos

Post -> /mutant

Recibe una objeto el cual contiene la base nitrogenada del ADN y Devuelve una respuesta http 200-OK si el DNA enviado pertenece a un mutante. de lo contrario, si el DNA es de un humano la respuesta que devolvería es un código http 403-Forbidden
Headers
Content-Type:application/json
Body - Ejemplo
{ "dna": [ "ATGCAA", "CAGTGG", "TTATGA", "AGAAGA", "CCCCTA", "CCCCTG" ] }

Response

  • HTTP Status 200-OK (Is mutant)
  • HTTP Status 403-Forbidden (is Human)
Get -> /stats

Devuelve las estadísticas de la base de datos. Cantidad de DNA mutante procesado y cantidad de DNA Humano procesado

Response - Ejemplo

{ "count_mutant_dna": 6, "count_human_dna": 2, "ratio": 3.0 }


Instalación

Requisitos:

  • Java jdk 11.0.13
  • apache-maven-3.8.5

Instrucciones:

  1. Clonar el repositorio
    git clone https://github.com/johnsebas28/MutantDetector.git

  2. Cambiar variables de configuración. Abrir el archivo application.properties ubicado en el path src\main\resources

server.port=5000
spring.datasource.url=[Your Mysql Database URL ]
spring.datasource.username=[YourUser]
spring.datasource.password=[yourPassword]
spring.jpa.hibernate.ddl-auto=update
  1. Entrar a la carpeta del proyecto (Root Path) para compilarlo y hostearlo a través del siguiente comando (Windows)
    .\mvnw.cmd spring-boot:run
  2. El proyecto está configurado para abrir en el puerto 5000
    Cuando el proyecto compila, se crea la Base de datos en AWS Gracias a JPS.Hibernate.
    spring.jpa.hibernate.ddl-auto=update

Pruebas JACOCO

Para realizar las pruebas y obtener el porcentaje de cobertura se utlizió la librería Jacoco.

Instrucciones:

  1. Entrar a la carpeta del proyecto a través de un terminal (root Path)
  2. Correr el siguiete comando
    mvn clean test
  3. Para conocer el porcentaje de cobertura de las pruebas:
    • Entrar a la ruta \target\site\jacoco y abrir el archivo index.html

Nota: El proyecto cuenta con una cobertura del 95%

About

Detector de mutantes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages