FdelMazo / FIUBA-Plan

Organizador de horarios de la Facultad de Ingenieria
https://fede.dm/FIUBA-Plan/
MIT License
45 stars 6 forks source link

Agregar tests automaticos #102

Closed lopezac closed 5 months ago

lopezac commented 5 months ago

closes #101

Hola, este pr tendria que ser un inicio para añadir tests a la aplicacion. Lo minimo indispensable es hacer tests al siuparser.js, dandole horarios como los abajo indicados, y dar un expected output.

FdelMazo commented 5 months ago

@lopezac , estaba pensando, ademas de comparar las cosas esenciales (cantidad de materias, que todas las materias tengan cursos, etc), tal vez se puede directo comparar el resultado final contra un json ya hecho? Cosa de que si cambia lo mas minimo en el json producido ya sabemos que algo raro hay

lopezac commented 5 months ago

Si genial la idea, no se me habia ocurrido, hare lo mejor que pueda para implementarlo.

lopezac commented 5 months ago

Hola @FdelMazo!

Te parece bien como estructure la funcionalidad de los tests?, que si se quiere añadir un horario de un siu, que se cree un archivo json con el parsed horario, y un archivo js con el texto del horario, o que en un mismo archivo este el parsed horario y el texto del horario?.

En el README.md se tendria que añadir instrucciones de esto no?, por si alguien quiere colaborar?.

FdelMazo commented 5 months ago

Impecable la estructura @lopezac ! Reviso bien el PR mañana. Si, le faltaría documentación (de como agregar y correr los tests), y también agregarlo al CI (esto lo puedo hacer yo si querés, no te quiero pisar tampoco)

lopezac commented 5 months ago

Ahi agregue el step de correr el test al CI, al workflow 'Build & Deploy to Github Pages', primero lo probe en mi fork del repo y funciono bien.

lopezac commented 5 months ago

En cuanto a la documentacion no se me ocurre una manera family-friendly para usuarios no informaticos (apenas puedo yo hacerlo jajajajaja).

Asi que quiza en sugerencias podria haber un tab de colaborar con horarios, y que al tocar el tab explique esto de colaborar con los horarios, y haya un input de texto donde el usuario pegue sus horarios y trabajamos con eso.

Incluso automatizar esa tarea?. Pero me parece que tendria que ir por ese lado.

A lo sumo para usuarios informaticos agregar la documentacion en el README.

lopezac commented 5 months ago

Si todos los cambios que decis me parecen bien, mañana termino de agregarlos.

lopezac commented 5 months ago

Listo @FdelMazo , añadi todas tus sugerencias y mas, te parece listo para mergear?

FdelMazo commented 5 months ago

Excelente @lopezac. Muy copado el recursive test de los strings y arrays!! Mandale para adelante!