Debugger/DebugServer.py

changeset 5587
ea526b78ee6c
parent 5389
9b1c800daff3
child 5624
cdd346d8858b
equal deleted inserted replaced
5586:0e5421d679e7 5587:ea526b78ee6c
7 Module implementing the debug server. 7 Module implementing the debug server.
8 """ 8 """
9 9
10 from __future__ import unicode_literals 10 from __future__ import unicode_literals
11 try: 11 try:
12 str = unicode 12 str = unicode # __IGNORE_WARNING_M131__
13 except NameError: 13 except NameError:
14 pass 14 pass
15 15
16 import os 16 import os
17 17
691 """ 691 """
692 if self.debugging: 692 if self.debugging:
693 self.__addWatchPoints( 693 self.__addWatchPoints(
694 QModelIndex(), startIndex.row(), endIndex.row()) 694 QModelIndex(), startIndex.row(), endIndex.row())
695 695
696 def getClientCapabilities(self, type): 696 def getClientCapabilities(self, clientType):
697 """ 697 """
698 Public method to retrieve the debug clients capabilities. 698 Public method to retrieve the debug clients capabilities.
699 699
700 @param type debug client type (string) 700 @param clientType debug client type (string)
701 @return debug client capabilities (integer) 701 @return debug client capabilities (integer)
702 """ 702 """
703 try: 703 try:
704 return self.__debuggerInterfaceRegistry[type][0] 704 return self.__debuggerInterfaceRegistry[clientType][0]
705 except KeyError: 705 except KeyError:
706 return 0 # no capabilities 706 return 0 # no capabilities
707 707
708 def getClientInterpreter(self): 708 def getClientInterpreter(self):
709 """ 709 """
994 994
995 @param special flag indicating a special continue operation 995 @param special flag indicating a special continue operation
996 """ 996 """
997 self.debuggerInterface.remoteContinue(special) 997 self.debuggerInterface.remoteContinue(special)
998 998
999 def remoteBreakpoint(self, fn, line, set, cond=None, temp=False): 999 def remoteBreakpoint(self, fn, line, setBreakpoint, cond=None, temp=False):
1000 """ 1000 """
1001 Public method to set or clear a breakpoint. 1001 Public method to set or clear a breakpoint.
1002 1002
1003 @param fn filename the breakpoint belongs to (string) 1003 @param fn filename the breakpoint belongs to (string)
1004 @param line linenumber of the breakpoint (int) 1004 @param line linenumber of the breakpoint (int)
1005 @param set flag indicating setting or resetting a breakpoint (boolean) 1005 @param setBreakpoint flag indicating setting or resetting a breakpoint
1006 (boolean)
1006 @param cond condition of the breakpoint (string) 1007 @param cond condition of the breakpoint (string)
1007 @param temp flag indicating a temporary breakpoint (boolean) 1008 @param temp flag indicating a temporary breakpoint (boolean)
1008 """ 1009 """
1009 self.debuggerInterface.remoteBreakpoint(fn, line, set, cond, temp) 1010 self.debuggerInterface.remoteBreakpoint(fn, line, setBreakpoint, cond,
1011 temp)
1010 1012
1011 def __remoteBreakpointEnable(self, fn, line, enable): 1013 def __remoteBreakpointEnable(self, fn, line, enable):
1012 """ 1014 """
1013 Private method to enable or disable a breakpoint. 1015 Private method to enable or disable a breakpoint.
1014 1016
1027 @param line linenumber of the breakpoint (int) 1029 @param line linenumber of the breakpoint (int)
1028 @param count number of occurrences to ignore (int) 1030 @param count number of occurrences to ignore (int)
1029 """ 1031 """
1030 self.debuggerInterface.remoteBreakpointIgnore(fn, line, count) 1032 self.debuggerInterface.remoteBreakpointIgnore(fn, line, count)
1031 1033
1032 def __remoteWatchpoint(self, cond, set, temp=False): 1034 def __remoteWatchpoint(self, cond, setWatch, temp=False):
1033 """ 1035 """
1034 Private method to set or clear a watch expression. 1036 Private method to set or clear a watch expression.
1035 1037
1036 @param cond expression of the watch expression (string) 1038 @param cond expression of the watch expression (string)
1037 @param set flag indicating setting or resetting a watch expression 1039 @param setWatch flag indicating setting or resetting a watch expression
1038 (boolean) 1040 (boolean)
1039 @param temp flag indicating a temporary watch expression (boolean) 1041 @param temp flag indicating a temporary watch expression (boolean)
1040 """ 1042 """
1041 # cond is combination of cond and special (s. watch expression viewer) 1043 # cond is combination of cond and special (s. watch expression viewer)
1042 self.debuggerInterface.remoteWatchpoint(cond, set, temp) 1044 self.debuggerInterface.remoteWatchpoint(cond, setWatch, temp)
1043 1045
1044 def __remoteWatchpointEnable(self, cond, enable): 1046 def __remoteWatchpointEnable(self, cond, enable):
1045 """ 1047 """
1046 Private method to enable or disable a watch expression. 1048 Private method to enable or disable a watch expression.
1047 1049
1084 1086
1085 @param tid id of the thread (integer) 1087 @param tid id of the thread (integer)
1086 """ 1088 """
1087 self.debuggerInterface.remoteSetThread(tid) 1089 self.debuggerInterface.remoteSetThread(tid)
1088 1090
1089 def remoteClientVariables(self, scope, filter, framenr=0): 1091 def remoteClientVariables(self, scope, filterList, framenr=0):
1090 """ 1092 """
1091 Public method to request the variables of the debugged program. 1093 Public method to request the variables of the debugged program.
1092 1094
1093 @param scope the scope of the variables (0 = local, 1 = global) 1095 @param scope the scope of the variables (0 = local, 1 = global)
1094 @param filter list of variable types to filter out (list of int) 1096 @param filterList list of variable types to filter out (list of int)
1095 @param framenr framenumber of the variables to retrieve (int) 1097 @param framenr framenumber of the variables to retrieve (int)
1096 """ 1098 """
1097 self.debuggerInterface.remoteClientVariables(scope, filter, framenr) 1099 self.debuggerInterface.remoteClientVariables(scope, filterList,
1098 1100 framenr)
1099 def remoteClientVariable(self, scope, filter, var, framenr=0): 1101
1102 def remoteClientVariable(self, scope, filterList, var, framenr=0):
1100 """ 1103 """
1101 Public method to request the variables of the debugged program. 1104 Public method to request the variables of the debugged program.
1102 1105
1103 @param scope the scope of the variables (0 = local, 1 = global) 1106 @param scope the scope of the variables (0 = local, 1 = global)
1104 @param filter list of variable types to filter out (list of int) 1107 @param filterList list of variable types to filter out (list of int)
1105 @param var list encoded name of variable to retrieve (string) 1108 @param var list encoded name of variable to retrieve (string)
1106 @param framenr framenumber of the variables to retrieve (int) 1109 @param framenr framenumber of the variables to retrieve (int)
1107 """ 1110 """
1108 self.debuggerInterface.remoteClientVariable( 1111 self.debuggerInterface.remoteClientVariable(
1109 scope, filter, var, framenr) 1112 scope, filterList, var, framenr)
1110 1113
1111 def remoteClientSetFilter(self, scope, filter): 1114 def remoteClientSetFilter(self, scope, filterStr):
1112 """ 1115 """
1113 Public method to set a variables filter list. 1116 Public method to set a variables filter list.
1114 1117
1115 @param scope the scope of the variables (0 = local, 1 = global) 1118 @param scope the scope of the variables (0 = local, 1 = global)
1116 @param filter regexp string for variable names to filter out (string) 1119 @param filterStr regexp string for variable names to filter out
1117 """ 1120 (string)
1118 self.debuggerInterface.remoteClientSetFilter(scope, filter) 1121 """
1122 self.debuggerInterface.remoteClientSetFilter(scope, filterStr)
1119 1123
1120 def setCallTraceEnabled(self, on): 1124 def setCallTraceEnabled(self, on):
1121 """ 1125 """
1122 Public method to set the call trace state. 1126 Public method to set the call trace state.
1123 1127
1445 """ 1449 """
1446 Public method to process the client stop test info. 1450 Public method to process the client stop test info.
1447 """ 1451 """
1448 self.utStopTest.emit() 1452 self.utStopTest.emit()
1449 1453
1450 def clientUtTestFailed(self, testname, traceback, id): 1454 def clientUtTestFailed(self, testname, traceback, testId):
1451 """ 1455 """
1452 Public method to process the client test failed info. 1456 Public method to process the client test failed info.
1453 1457
1454 @param testname name of the test (string) 1458 @param testname name of the test (string)
1455 @param traceback lines of traceback info (list of strings) 1459 @param traceback lines of traceback info (list of strings)
1456 @param id id of the test (string) 1460 @param testId id of the test (string)
1457 """ 1461 """
1458 self.utTestFailed.emit(testname, traceback, id) 1462 self.utTestFailed.emit(testname, traceback, testId)
1459 1463
1460 def clientUtTestErrored(self, testname, traceback, id): 1464 def clientUtTestErrored(self, testname, traceback, testId):
1461 """ 1465 """
1462 Public method to process the client test errored info. 1466 Public method to process the client test errored info.
1463 1467
1464 @param testname name of the test (string) 1468 @param testname name of the test (string)
1465 @param traceback lines of traceback info (list of strings) 1469 @param traceback lines of traceback info (list of strings)
1466 @param id id of the test (string) 1470 @param testId id of the test (string)
1467 """ 1471 """
1468 self.utTestErrored.emit(testname, traceback, id) 1472 self.utTestErrored.emit(testname, traceback, testId)
1469 1473
1470 def clientUtTestSkipped(self, testname, reason, id): 1474 def clientUtTestSkipped(self, testname, reason, testId):
1471 """ 1475 """
1472 Public method to process the client test skipped info. 1476 Public method to process the client test skipped info.
1473 1477
1474 @param testname name of the test (string) 1478 @param testname name of the test (string)
1475 @param reason reason for skipping the test (string) 1479 @param reason reason for skipping the test (string)
1476 @param id id of the test (string) 1480 @param testId id of the test (string)
1477 """ 1481 """
1478 self.utTestSkipped.emit(testname, reason, id) 1482 self.utTestSkipped.emit(testname, reason, testId)
1479 1483
1480 def clientUtTestFailedExpected(self, testname, traceback, id): 1484 def clientUtTestFailedExpected(self, testname, traceback, testId):
1481 """ 1485 """
1482 Public method to process the client test failed expected info. 1486 Public method to process the client test failed expected info.
1483 1487
1484 @param testname name of the test (string) 1488 @param testname name of the test (string)
1485 @param traceback lines of traceback info (list of strings) 1489 @param traceback lines of traceback info (list of strings)
1486 @param id id of the test (string) 1490 @param testId id of the test (string)
1487 """ 1491 """
1488 self.utTestFailedExpected.emit(testname, traceback, id) 1492 self.utTestFailedExpected.emit(testname, traceback, testId)
1489 1493
1490 def clientUtTestSucceededUnexpected(self, testname, id): 1494 def clientUtTestSucceededUnexpected(self, testname, testId):
1491 """ 1495 """
1492 Public method to process the client test succeeded unexpected info. 1496 Public method to process the client test succeeded unexpected info.
1493 1497
1494 @param testname name of the test (string) 1498 @param testname name of the test (string)
1495 @param id id of the test (string) 1499 @param testId id of the test (string)
1496 """ 1500 """
1497 self.utTestSucceededUnexpected.emit(testname, id) 1501 self.utTestSucceededUnexpected.emit(testname, testId)
1498 1502
1499 def clientUtFinished(self): 1503 def clientUtFinished(self):
1500 """ 1504 """
1501 Public method to process the client unit test finished info. 1505 Public method to process the client unit test finished info.
1502 """ 1506 """

eric ide

mercurial