File tree Expand file tree Collapse file tree 2 files changed +16
-0
lines changed Expand file tree Collapse file tree 2 files changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -209,6 +209,9 @@ self.switch_to_default_content()
209209
210210self .switch_to_parent_frame()
211211
212+ with self .frame_switch(frame, timeout = None ):
213+ # Indented Code Block for Context Manager (Must use "with")
214+
212215self .set_content_to_frame(frame, timeout = None )
213216
214217self .set_content_to_default(nested = False )
Original file line number Diff line number Diff line change @@ -42,6 +42,7 @@ def test_anything(self):
4242import time
4343import unittest
4444import urllib3
45+ from contextlib import contextmanager
4546from selenium.common.exceptions import (
4647 ElementClickInterceptedException as ECI_Exception,
4748 ElementNotInteractableException as ENI_Exception,
@@ -2775,6 +2776,18 @@ def switch_to_parent_frame(self):
27752776 return
27762777 self.driver.switch_to.parent_frame()
27772778
2779+ @contextmanager
2780+ def frame_switch(self, frame, timeout=None):
2781+ """ Context Manager for switching into iframes.
2782+ Usage example:
2783+ with self.frame_switch("iframe"):
2784+ # Perform actions here that should be done within the iframe.
2785+ # The iframe is automatically exited after the "with" block ends.
2786+ """
2787+ self.switch_to_frame(frame, timeout=timeout)
2788+ yield
2789+ self.switch_to_parent_frame()
2790+
27782791 def set_content_to_frame(self, frame, timeout=None):
27792792 """Replaces the page html with an iframe's html from that page.
27802793 If the iframe contains an "src" field that includes a valid URL,
You can’t perform that action at this time.
0 commit comments