/user-system

Coding test

Primary LanguagePHP

Ejercicio principal: El objetivo de la prueba es desarrollar una aplicación en PHP, sin UI, capaz de solucionar el problema usando persistencia en memoria.

Desarrolla un sistema tolerante a errores responsable de comprobar el login y password de una lista usuarios con las siguientes condiciones:

  • Devuelva si un usuario existe en el sistema o no.
  • Devuelve si el usuario/password coinciden o no.

Añade la cobertura de tests que consideres necesaria para validar el funcionamiento de la aplicación.

Ejercicio bonus: El objetivo de la prueba es desarrollar sólo el juego de tests (unitarios, funcionales o aceptación), sin implementación, con la idea de que un/a tercer/a desarrollador/a pudiera implementar la solución sólo leyendo los tests.

En el sistema anterior, añade un nuevo caso de uso:

  • Si el usuario/password es correcto, cambiar la password sólo de su mismo usuario (utilizando el mecanismo de autenticación que considere oportuno).
  • php -S 127.0.0.1:8000 -t public

curl --request POST
--url 'http://127.0.0.1:8000/login?username=test_user&password=123456'
--header 'content-type: application/x-www-form-urlencoded'