Minor refactoring of integration tests

Simplify 2 CheckBoxRegion-s by moving their common functionality into
mixin.

Change-Id: I0cc137702ff408aeb7af433c56c87aba091b8dc6
This commit is contained in:
Timur Sufiev 2015-08-28 15:28:14 +03:00
parent 3a72687ab3
commit f23d6d957d

View File

@ -76,41 +76,32 @@ class BaseFormFieldRegion(baseregion.BaseRegion):
return self.element.is_displayed() return self.element.is_displayed()
class CheckBoxFormFieldRegion(BaseFormFieldRegion): class CheckBoxMixin(object):
def is_marked(self):
return self.element.is_selected()
def mark(self):
if not self.is_marked():
self.element.click()
def unmark(self):
if self.is_marked():
self.element.click()
class CheckBoxFormFieldRegion(BaseFormFieldRegion, CheckBoxMixin):
"""Checkbox field.""" """Checkbox field."""
_element_locator = (by.By.CSS_SELECTOR, _element_locator = (by.By.CSS_SELECTOR,
'div > label > input[type=checkbox]') 'div > label > input[type=checkbox]')
def is_marked(self):
return self.element.is_selected()
def mark(self): class ProjectPageCheckBoxFormFieldRegion(BaseFormFieldRegion, CheckBoxMixin):
if not self.is_marked():
self.element.click()
def unmark(self):
if self.is_marked():
self.element.click()
class ProjectPageCheckBoxFormFieldRegion(BaseFormFieldRegion):
"""Checkbox field for Project-page.""" """Checkbox field for Project-page."""
_element_locator = (by.By.CSS_SELECTOR, _element_locator = (by.By.CSS_SELECTOR,
'div > input[type=checkbox]') 'div > input[type=checkbox]')
def is_marked(self):
return self.element.is_selected()
def mark(self):
if not self.is_marked():
self.element.click()
def unmark(self):
if self.is_marked():
self.element.click()
class ChooseFileFormFieldRegion(BaseFormFieldRegion): class ChooseFileFormFieldRegion(BaseFormFieldRegion):
"""Choose file field.""" """Choose file field."""