Skip to content

indy1981/MinimalBlog

Repository files navigation

La solucion se implemento en .NET Core (Visual Studio 2017 como IDE) y SQL por lo que se necesita un servidor de base de datos corriendo Hay una API con lo minimo requerido y una UI que la consume, obviamente ambos proyectos deben estar corriendo a la vez La UI fue hecha solo a fines de poder consumir la api y la autenticacion, favor de no evaluar estetica

Se debe ejecutar: dotnet ef database update --startup-project ..\MinimalBlog

desde el directorio MinimalBlog.Repositories para que se creen las tablas y los datos iniciales

Los usuarios para ingresar son: Username: adrian Password: makingsense@99

Username: juan Password: minimal@123

Se crearon 2 para ver que los post privados y draft solo son visibles por su autor

Por falta de tiempo, solo implemente algunos tests basicos, como para que se vea la mecanica, en un entorno real, se necesitan mas test unitarios, de integracion y mas significativos (o sea no solo cubrir codigo por cubrir) La parte de los estados del post que considere mas apropiada es asi:

Un post siempre debe tener un titulo Se puede grabar un post sin summary o content, pero si falta alguno de estos campos o ambos, sera guardado si o si como Draft Para que un post sea considerado completo (NO-draft) debe tener como minimo title summary content

En cuyo caso, se tomara el estado (public o private) que haya establecido el autor. El autor del post siempre es el usuario logueado, por lo que no se envia desde la UI sino que se toma de los claims del token enviado La fecha de creacion es la actual del servidor siempre

Cosas que faltaron: Un mapper para pasar de viewmodels a modelos Mas testing Update y delete de los post del usuario logueado, si bien estas acciones estan la API no hay una funcionalidad en la UI que haga uso de ellos (habria hecho una pantalla con una tabla con acciones sobre ellos, o bien acciones en cada post en el index) Mas ajax, no tantas pantallas de error, si no quizas algo tipo bootbox para informar de errores (por ejemplo usuario o contraseña invalida) Alguna pantalla de un admin para administrar usuarios Falto la busqueda, se podria haber implementado haciendo otro metodo del servicio buscando en title, summary y content por palabras o bien permitiendole agregar tags al creador del post y buscar en ambos lados

About

Making Sense Challenge

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages