Skip to content

Commit 942d2ba

Browse files
committed
Refactor BaseCase methods to reduce code
1 parent 8173611 commit 942d2ba

File tree

1 file changed

+6
-29
lines changed

1 file changed

+6
-29
lines changed

seleniumbase/fixtures/base_case.py

Lines changed: 6 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -3471,8 +3471,7 @@ def set_value(self, selector, text, by=By.CSS_SELECTOR, timeout=None):
34713471
self.wait_for_ready_state_complete()
34723472
self.__demo_mode_pause_if_active()
34733473

3474-
def js_update_text(self, selector, text, by=By.CSS_SELECTOR,
3475-
timeout=None):
3474+
def js_update_text(self, selector, text, by=By.CSS_SELECTOR, timeout=None):
34763475
""" JavaScript + send_keys are used to update a text field.
34773476
Performs self.set_value() and triggers event listeners.
34783477
If text ends in "\n", set_value() presses RETURN after.
@@ -3486,18 +3485,16 @@ def js_update_text(self, selector, text, by=By.CSS_SELECTOR,
34863485
selector, by = self.__recalculate_selector(selector, by)
34873486
if type(text) is int or type(text) is float:
34883487
text = str(text)
3489-
self.set_value(
3490-
selector, text, by=by, timeout=timeout)
3488+
self.set_value(selector, text, by=by, timeout=timeout)
34913489
if not text.endswith('\n'):
34923490
try:
34933491
element = page_actions.wait_for_element_present(
34943492
self.driver, selector, by, timeout=0.2)
3495-
element.send_keys(" \b")
3493+
element.send_keys(" " + Keys.BACK_SPACE)
34963494
except Exception:
34973495
pass
34983496

3499-
def js_type(self, selector, text, by=By.CSS_SELECTOR,
3500-
timeout=None):
3497+
def js_type(self, selector, text, by=By.CSS_SELECTOR, timeout=None):
35013498
""" Same as self.js_update_text()
35023499
JavaScript + send_keys are used to update a text field.
35033500
Performs self.set_value() and triggers event listeners.
@@ -3510,17 +3507,7 @@ def js_type(self, selector, text, by=By.CSS_SELECTOR,
35103507
if self.timeout_multiplier and timeout == settings.LARGE_TIMEOUT:
35113508
timeout = self.__get_new_timeout(timeout)
35123509
selector, by = self.__recalculate_selector(selector, by)
3513-
if type(text) is int or type(text) is float:
3514-
text = str(text)
3515-
self.set_value(
3516-
selector, text, by=by, timeout=timeout)
3517-
if not text.endswith('\n'):
3518-
try:
3519-
element = page_actions.wait_for_element_present(
3520-
self.driver, selector, by, timeout=0.2)
3521-
element.send_keys(" \b")
3522-
except Exception:
3523-
pass
3510+
self.js_update_text(selector, text, by=by, timeout=timeout)
35243511

35253512
def set_text(self, selector, text, by=By.CSS_SELECTOR, timeout=None):
35263513
""" Same as self.js_update_text()
@@ -3534,17 +3521,7 @@ def set_text(self, selector, text, by=By.CSS_SELECTOR, timeout=None):
35343521
if self.timeout_multiplier and timeout == settings.LARGE_TIMEOUT:
35353522
timeout = self.__get_new_timeout(timeout)
35363523
selector, by = self.__recalculate_selector(selector, by)
3537-
if type(text) is int or type(text) is float:
3538-
text = str(text)
3539-
self.set_value(
3540-
selector, text, by=by, timeout=timeout)
3541-
if not text.endswith('\n'):
3542-
try:
3543-
element = page_actions.wait_for_element_present(
3544-
self.driver, selector, by, timeout=0.2)
3545-
element.send_keys(" \b")
3546-
except Exception:
3547-
pass
3524+
self.js_update_text(selector, text, by=by, timeout=timeout)
35483525

35493526
def jquery_update_text(self, selector, text, by=By.CSS_SELECTOR,
35503527
timeout=None):

0 commit comments

Comments
 (0)