Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Ruby: Общие вопросы > Как вернуть значение / остановить load?


Автор: Drkwv 13.2.2009, 12:58
Я пишу тесты используя Watir. Загружаются они так:
Код

(7..7).each do |num|
  num3d = sprintf("%03d",num)
  load "test#{num3d}.rb"
  ...


В одном из тестов мне нужно залогиниться, при этом не хочу чтобы тест вылетал, поэтому написал так:
Код

unless ie.text.include? "Вы вошли как:"
  test['errors'].push "Не удалось залогиниться"
  ie.close
  return
end


В том месте, где стоит return, вылетает ошибка "./test007.rb:21: unexpected return (LocalJumpError)". Все падает.

Вопроса два:
1) Как выйти из теста, не завершая всю программу?
2) Как вернуть значение из файла, загружаемого через load, если return не работает? Я сделал передачу результатов работы теста через глобальную переменную, но считаю это решение уродливым, т.к. беспричинно засоряется глобальная область видимости.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)