Esta é uma maneira rápida de escapar de um método ou inicializador quando uma variável ENV necessária está faltando e fornecer uma mensagem de erro útil.
required_vars = %w(FOO BAR BAZ QUUX)
missing_vars = required_vars - ENV.keys
raise ArgumentError.new("The following ENV variables are required: #{missing_vars}") if missing_vars.any?
Usando o subtract
método embutido do Ruby Array , obtemos a diferença entre a lista de variáveis que exigimos e aquelas definidas.
Você também pode usar isso para se proteger contra a falta de opções nos métodos.