Try Synsema
Entrar Crear cuenta

El buscador de pacientes

+30 xp

Estás en modo lectura. Crea una cuenta o entra para enviar tu solución y ganar estrellas. Puedes ejecutar código igual.

Tu programa
Así te va a probar Tomás (pruebas de la misión)
test "coincide ignora tildes, mayúsculas y espacios"
    assert_eq(coincide("María García", "garcia"), true)
    assert_eq(coincide("María García", "  GARCÍA "), true)
    assert_eq(coincide("Luis Paz", "paz"), true)
    assert_eq(coincide("Luis Paz", "diaz"), false)

test "buscar devuelve los nombres originales en orden"
    let ps be [{"nombre": "María García"}, {"nombre": "Luis Paz"}, {"nombre": "Rosa Díaz"}]
    assert_eq(buscar(ps, "ia"), ["María García", "Rosa Díaz"])
    assert_eq(buscar(ps, "garcia"), ["María García"])
    assert_eq(buscar(ps, "romero"), [])

test "buscar_uno devuelve el mapa o nothing"
    let ps be [{"nombre": "María García", "obra_social": "OSDE"}, {"nombre": "Rosa Díaz", "obra_social": "IOMA"}]
    assert_eq(buscar_uno(ps, "diaz"), {"nombre": "Rosa Díaz", "obra_social": "IOMA"})
    assert_eq(buscar_uno(ps, "romero"), nothing)