Adds a breakpoint.
(
self,
lines,
filename=None,
line_to_info=None,
success=True,
verified=True,
send_launch_if_needed=True,
expected_lines_in_response=None,
)
| 199 | assert response.success |
| 200 | |
| 201 | def write_set_breakpoints( |
| 202 | self, |
| 203 | lines, |
| 204 | filename=None, |
| 205 | line_to_info=None, |
| 206 | success=True, |
| 207 | verified=True, |
| 208 | send_launch_if_needed=True, |
| 209 | expected_lines_in_response=None, |
| 210 | ): |
| 211 | """ |
| 212 | Adds a breakpoint. |
| 213 | """ |
| 214 | if send_launch_if_needed and not self._sent_launch_or_attach: |
| 215 | self._auto_write_launch() |
| 216 | |
| 217 | if isinstance(lines, int): |
| 218 | lines = [lines] |
| 219 | |
| 220 | if line_to_info is None: |
| 221 | line_to_info = {} |
| 222 | |
| 223 | if filename is None: |
| 224 | filename = self.writer.get_main_filename() |
| 225 | |
| 226 | if isinstance(filename, bytes): |
| 227 | filename = filename.decode(file_system_encoding) # file is in the filesystem encoding but protocol needs it in utf-8 |
| 228 | filename = filename.encode("utf-8") |
| 229 | |
| 230 | source = pydevd_schema.Source(path=filename) |
| 231 | breakpoints = [] |
| 232 | for line in lines: |
| 233 | condition = None |
| 234 | hit_condition = None |
| 235 | log_message = None |
| 236 | |
| 237 | if line in line_to_info: |
| 238 | line_info = line_to_info.get(line) |
| 239 | condition = line_info.get("condition") |
| 240 | hit_condition = line_info.get("hit_condition") |
| 241 | log_message = line_info.get("log_message") |
| 242 | |
| 243 | breakpoints.append( |
| 244 | pydevd_schema.SourceBreakpoint(line, condition=condition, hitCondition=hit_condition, logMessage=log_message).to_dict() |
| 245 | ) |
| 246 | |
| 247 | arguments = pydevd_schema.SetBreakpointsArguments(source, breakpoints) |
| 248 | request = pydevd_schema.SetBreakpointsRequest(arguments) |
| 249 | |
| 250 | # : :type response: SetBreakpointsResponse |
| 251 | response = self.wait_for_response(self.write_request(request)) |
| 252 | body = response.body |
| 253 | |
| 254 | assert response.success == success |
| 255 | |
| 256 | if success: |
| 257 | # : :type body: SetBreakpointsResponseBody |
| 258 | assert len(body.breakpoints) == len(lines) |
no test coverage detected