MCPcopy Index your code
hub / github.com/plotly/dash / contains_text

Class contains_text

dash/testing/wait.py:56–82  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

54
55
56class contains_text:
57 def __init__(self, selector, text, timeout):
58 self.selector = selector
59 self.text = text
60 self.timeout = timeout
61
62 def __call__(self, driver):
63 try:
64 elem = driver.find_element(By.CSS_SELECTOR, self.selector)
65 logger.debug("contains text {%s} => expected %s", elem.text, self.text)
66 value = elem.get_attribute("value")
67 return self.text in str(elem.text) or (
68 value is not None and self.text in str(value)
69 )
70 except WebDriverException:
71 return False
72
73 def message(self, driver):
74 try:
75 element = self._get_element(driver)
76 text = "found: " + str(element.text) or str(element.get_attribute("value"))
77 except WebDriverException:
78 text = f"{self.selector} not found"
79 return f"text -> {self.text} not found inside element within {self.timeout}s, {text}"
80
81 def _get_element(self, driver):
82 return driver.find_element(By.CSS_SELECTOR, self.selector)
83
84
85class contains_class:

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…