Como especificar métodos que saem ou abortam

Eu tenho um método sendo acionado a partir de uma CLI que possui alguns caminhos lógicos que explicitamente saem ou abortam. Descobri que, ao escrever especificações para esse método, o RSpec o marca como falha porque as saídas são exceções. Aqui está um exemplo básico:

def cli_method
  if condition
    puts "Everything's okay!"
  else
    puts "GTFO!"
    exit
  end
end

Eu posso envolver as especificações em um lambda comshould raise_error(SystemExit), mas isso desconsidera quaisquer afirmações que ocorram dentro do bloco. Para ser claro: não estou testando a saída em si, mas a lógica que acontece antes dela. Como posso especificar esse tipo de método?

questionAnswers(3)

yourAnswerToTheQuestion