Seguindo os passos da issue #33, eu fiz a implementação da classe WaitablePageObject a fim de eliminar a repetição do método wait_error_message nas Page Objetcs.
A implementação da classe ficou da seguinte forma:
class WaitablePageObject(PageObject):
"""Aguarda pela mensagem de erro"""
def wait_error_message(self):
WebDriverWait(self.w, 20).until(
lambda driver: 'terminal-alert-error' in driver.page_source
)
Após a criação da classe acima, eu fiz a remoção do método wait_error_message nas seguintes classes:
CreateTodo
Login
CreateUser
Além disso, mudei a herança das classes citadas de PageObject para a nova classe WaitablePageObject.
Após essas modificações no código, executei o black no arquivo modificado e em seguida executei os testes com o behave:
black -S -l 79 features/page_objects/pages.py
behave
Todos os testes passaram, como antes das alterações :blush:
Seguindo os passos da issue #33, eu fiz a implementação da classe
WaitablePageObject
a fim de eliminar a repetição do métodowait_error_message
nas Page Objetcs.A implementação da classe ficou da seguinte forma:
Após a criação da classe acima, eu fiz a remoção do método
wait_error_message
nas seguintes classes:CreateTodo
Login
CreateUser
Além disso, mudei a herança das classes citadas de
PageObject
para a nova classeWaitablePageObject
.Após essas modificações no código, executei o
black
no arquivo modificado e em seguida executei os testes com obehave
:Todos os testes passaram, como antes das alterações :blush: