diff --git a/pages/register.py b/pages/register.py index 5dcee96..82c497c 100644 --- a/pages/register.py +++ b/pages/register.py @@ -10,10 +10,8 @@ from pages.base import Base class Register(Base): - _error_locator = (By.CSS_SELECTOR, 'div.alert.alert-error') _full_name_field_locator = (By.ID, 'id_full_name') _privacy_locator = (By.ID, 'id_optin') - _privacy_error_message_locator = (By.CSS_SELECTOR, '.error-message') _create_profile_button_locator = (By.CSS_SELECTOR, '#form-submit-registration') _recaptcha_checkbox_locator = (By.CSS_SELECTOR, '.recaptcha-checkbox-checkmark') _recaptcha_checkbox_checked = (By.CSS_SELECTOR, '.recaptcha-checkbox-checked') @@ -34,17 +32,13 @@ class Register(Base): return self @property - def error_message(self): - return self.find_element(*self._error_locator).text + def privacy_error_message(self): + return self.find_element(*self._privacy_locator).get_attribute('validationMessage') def set_full_name(self, full_name): element = self.find_element(*self._full_name_field_locator) element.send_keys(full_name) - @property - def privacy_error_message(self): - return self.find_element(*self._privacy_error_message_locator).text - def select_country(self, country): self.find_element(*self._country_countainer_locator).click() self.find_element(*self._input_locator).send_keys(country) diff --git a/pages/settings.py b/pages/settings.py index 2f30a6e..251af60 100644 --- a/pages/settings.py +++ b/pages/settings.py @@ -167,39 +167,37 @@ class Settings(Base): _select_year_locator = (By.ID, 'id_date_mozillian_year') _month_locator = (By.CSS_SELECTOR, '#id_date_mozillian_month > option') _year_locator = (By.CSS_SELECTOR, '#id_date_mozillian_year > option') - _selected_month_locator = (By.CSS_SELECTOR, '#id_date_mozillian_month > option[selected="selected"]') - _selected_year_locator = (By.CSS_SELECTOR, '#id_date_mozillian_year > option[selected="selected"]') _update_locator = (By.ID, 'form-submit-contribution') def select_month(self, option_month): element = self.find_element(*self._select_month_locator) select = Select(element) - select.select_by_value(option_month) + select.select_by_visible_text(option_month) def select_year(self, option_year): element = self.find_element(*self._select_year_locator) select = Select(element) - select.select_by_value(option_year) + select.select_by_visible_text(option_year) @property def month(self): # Return selected month text - return self.find_element(*self._selected_month_locator).text + return [month.text for month in self.find_elements(*self._month_locator) if month.get_property('selected')] @property def year(self): # Return selected year text - return self.find_element(*self._selected_year_locator).text + return [year.text for year in self.find_elements(*self._year_locator) if year.get_property('selected')] @property def months_values(self): # Return all month values - return [month.get_attribute('value') for month in self.find_elements(*self._month_locator)] + return [month.text for month in self.find_elements(*self._month_locator)] @property def years_values(self): # Return all year values - return [year.get_attribute('value') for year in self.find_elements(*self._year_locator)] + return [year.text for year in self.find_elements(*self._year_locator)] def select_random_month(self): return self.select_month(random.choice(self.months_values[1:])) diff --git a/tests/test_register.py b/tests/test_register.py index a04dab8..2ac3db0 100644 --- a/tests/test_register.py +++ b/tests/test_register.py @@ -49,4 +49,4 @@ class TestRegister: profile.check_recaptcha() profile = profile.click_create_profile_button(leavepage=False) - assert 'Please correct the errors below.' == profile.error_message + assert 'Please check this box if you want to proceed.' == profile.privacy_error_message