Я полный новичок в рубине, но я чувствую, что этот код можно улучшить.Рубиновые блоки для изменения области действия до определенной переменной
class LoginPage < BasePage
def initialize(session)
@session = session
end
def login(params)
@session.within '#login-form' do
@session.fill_in 'Login', with: params[:login]
@session.fill_in 'Password',with: params[:password]
end
@session.click_button 'Login'
end
end
Я думал сделать что-то вроде:
@session do
within '#login-form' do
fill_in 'Login', with: params[:login]
fill_in 'Password', with params[:password]
end
click_buttton 'Login'
end
Но этот код не будет работать. Любая идея о том, как изменить область вызовов этих методов, делает их вызовы для конкретной переменной экземпляра.