Ejercicio 10: Archivo de configuración

¡Pongamos a prueba todo lo visto!

En una aplicación que tiene un sistema de envío de notificaciones, podemos configurar el modo en que el usuario recibirá las mismas. Por ahora, este modo se especifica en un archivo de configuración, en la propiedad notification_mode de la siguiente forma:

  • Si es "sms", tenemos que instanciar un SmsNotificationMode
  • Si es "facebook", tenemos que instanciar un FacebookNotificationMode
  • Si es "email", tenemos que instanciar un EmailNotificationMode
  • En cualquier otro caso, tenemos que lanzar un ConfigurationError

Ya contamos con una clase Configuration que se encarga de parsear el archivo, y define un método read, que toma por parámetro la propiedad de configuración a leer y devuelve su valor como string. Ejemplo:

configuration.read :notification_mode
"sms"

Agregar a la clase Configuration un método read_notification_mode, que empleando el mensaje read, lea la propiedad :notification_mode, y la convierta según la lógica detallada antes.

¡Dame una pista!

Algunas herramientas que nos pueden ser útiles:

  • El mensaje capitalize
  • En Ruby contamos con interpolación de String, que nos evita concatenar Strings a mano. Por ejemplo, en lugar de escribir
"hola " + nombre + "!"

podemos escribir

"hola #{nombre}!"

Tenés que iniciar sesión antes de empezar a enviar tus soluciones