Read until either self.base_prompt or pattern is detected.
(
self,
pattern: str = "",
read_timeout: float = 10.0,
read_entire_line: bool = False,
re_flags: int = 0,
max_loops: Optional[int] = None,
)
| 846 | ) |
| 847 | |
| 848 | def read_until_prompt_or_pattern( |
| 849 | self, |
| 850 | pattern: str = "", |
| 851 | read_timeout: float = 10.0, |
| 852 | read_entire_line: bool = False, |
| 853 | re_flags: int = 0, |
| 854 | max_loops: Optional[int] = None, |
| 855 | ) -> str: |
| 856 | """Read until either self.base_prompt or pattern is detected.""" |
| 857 | prompt_pattern = re.escape(self.base_prompt) |
| 858 | if read_entire_line: |
| 859 | prompt_pattern = f"{prompt_pattern}.*" |
| 860 | if pattern: |
| 861 | combined_pattern = r"(?:{}|{})".format(prompt_pattern, pattern) |
| 862 | else: |
| 863 | combined_pattern = prompt_pattern |
| 864 | return self.read_until_pattern( |
| 865 | pattern=combined_pattern, |
| 866 | re_flags=re_flags, |
| 867 | max_loops=max_loops, |
| 868 | read_timeout=read_timeout, |
| 869 | ) |
| 870 | |
| 871 | def serial_login( |
| 872 | self, |
no test coverage detected