eric7/DebugClients/Python/DebugClientBase.py

branch
unittest
changeset 9074
1afb90182258
parent 8954
c8b027c654bc
diff -r d88e53da6e66 -r 1afb90182258 eric7/DebugClients/Python/DebugClientBase.py
--- a/eric7/DebugClients/Python/DebugClientBase.py	Wed May 18 09:19:09 2022 +0200
+++ b/eric7/DebugClients/Python/DebugClientBase.py	Wed May 18 10:54:32 2022 +0200
@@ -799,194 +799,6 @@
         
         elif method == "RequestCompletion":
             self.__completionList(params["text"])
-        
-        elif method == "RequestUTDiscover":
-            if params["syspath"]:
-                sys.path = params["syspath"] + sys.path
-            
-            discoveryStart = params["discoverystart"]
-            if not discoveryStart:
-                discoveryStart = params["workdir"]
-            
-            top_level_dir = params["workdir"]
-
-            os.chdir(params["discoverystart"])
-            
-            # set the system exception handling function to ensure, that
-            # we report on all unhandled exceptions
-            sys.excepthook = self.__unhandled_exception
-            self.__interceptSignals()
-            
-            try:
-                import unittest
-                testLoader = unittest.TestLoader()
-                test = testLoader.discover(
-                    discoveryStart, top_level_dir=top_level_dir)
-                if (hasattr(testLoader, "errors") and
-                        bool(testLoader.errors)):
-                    self.sendJsonCommand("ResponseUTDiscover", {
-                        "testCasesList": [],
-                        "exception": "DiscoveryError",
-                        "message": "\n\n".join(testLoader.errors),
-                    })
-                else:
-                    testsList = self.__assembleTestCasesList(test,
-                                                             discoveryStart)
-                    self.sendJsonCommand("ResponseUTDiscover", {
-                        "testCasesList": testsList,
-                        "exception": "",
-                        "message": "",
-                    })
-            except Exception:
-                exc_type, exc_value, exc_tb = sys.exc_info()
-                self.sendJsonCommand("ResponseUTDiscover", {
-                    "testCasesList": [],
-                    "exception": exc_type.__name__,
-                    "message": str(exc_value),
-                })
-        
-        elif method == "RequestUTPrepare":
-            if params["syspath"]:
-                sys.path = params["syspath"] + sys.path
-            top_level_dir = None
-            if params["workdir"]:
-                os.chdir(params["workdir"])
-                top_level_dir = params["workdir"]
-            
-            # set the system exception handling function to ensure, that
-            # we report on all unhandled exceptions
-            sys.excepthook = self.__unhandled_exception
-            self.__interceptSignals()
-            
-            try:
-                import unittest
-                testLoader = unittest.TestLoader()
-                if params["discover"]:
-                    discoveryStart = params["discoverystart"]
-                    if not discoveryStart:
-                        discoveryStart = params["workdir"]
-                    sys.path.insert(
-                        0, os.path.abspath(discoveryStart))
-                    if params["testcases"]:
-                        self.test = testLoader.loadTestsFromNames(
-                            params["testcases"])
-                    else:
-                        self.test = testLoader.discover(
-                            discoveryStart, top_level_dir=top_level_dir)
-                else:
-                    sys.path.insert(
-                        0,
-                        os.path.dirname(os.path.abspath(params["filename"]))
-                    )
-                    if params["filename"]:
-                        utModule = __import__(params["testname"])
-                    else:
-                        utModule = None
-                    if params["failed"]:
-                        if utModule:
-                            failed = [t.split(".", 1)[1]
-                                      for t in params["failed"]]
-                        else:
-                            failed = params["failed"][:]
-                        self.test = testLoader.loadTestsFromNames(
-                            failed, utModule)
-                    else:
-                        self.test = testLoader.loadTestsFromName(
-                            params["testfunctionname"], utModule)
-            except Exception:
-                exc_type, exc_value, exc_tb = sys.exc_info()
-                self.sendJsonCommand("ResponseUTPrepared", {
-                    "count": 0,
-                    "exception": exc_type.__name__,
-                    "message": str(exc_value),
-                })
-                return
-            
-            # generate a coverage object
-            if params["coverage"]:
-                from coverage import Coverage
-                self.cover = Coverage(
-                    auto_data=True,
-                    data_file="{0}.coverage".format(
-                        os.path.splitext(params["coveragefile"])[0]))
-                if params["coverageerase"]:
-                    self.cover.erase()
-            else:
-                self.cover = None
-            
-            if params["debug"]:
-                Breakpoint.clear_all_breaks()
-                Watch.clear_all_watches()
-            
-            self.sendJsonCommand("ResponseUTPrepared", {
-                "count": self.test.countTestCases(),
-                "exception": "",
-                "message": "",
-            })
-        
-        elif method == "RequestUTRun":
-            from DCTestResult import DCTestResult
-            self.disassembly = None
-            self.testResult = DCTestResult(self, params["failfast"])
-            if self.cover:
-                self.cover.start()
-            self.debugging = params["debug"]
-            if params["debug"]:
-                self.multiprocessSupport = False
-                locals_ = locals()
-                self.threads.clear()
-                self.attachThread(mainThread=True)
-                sys.setprofile(None)
-                self.running = sys.argv[0]
-                self.mainThread.run(
-                    "result = self.test.run(self.testResult)\n",
-                    self.debugMod.__dict__,
-                    localsDict=locals_,
-                    debug=True,
-                    closeSession=False)
-                result = locals_["result"]
-            else:
-                result = self.test.run(self.testResult)
-            if self.cover:
-                self.cover.stop()
-                self.cover.save()
-            self.sendJsonCommand("ResponseUTFinished", {
-                "status": 0 if result.wasSuccessful() else 1,
-            })
-        
-        elif method == "RequestUTStop":
-            self.testResult.stop()
-    
-    def __assembleTestCasesList(self, suite, start):
-        """
-        Private method to assemble a list of test cases included in a test
-        suite.
-        
-        @param suite test suite to be inspected
-        @type unittest.TestSuite
-        @param start name of directory discovery was started at
-        @type str
-        @return list of tuples containing the test case ID, a short description
-            and the path of the test file name
-        @rtype list of tuples of (str, str, str)
-        """
-        import unittest
-        testCases = []
-        for test in suite:
-            if isinstance(test, unittest.TestSuite):
-                testCases.extend(self.__assembleTestCasesList(test, start))
-            else:
-                testId = test.id()
-                if ("ModuleImportFailure" not in testId and
-                    "LoadTestsFailure" not in testId and
-                        "_FailedTest" not in testId):
-                    filename = os.path.join(
-                        start,
-                        test.__module__.replace(".", os.sep) + ".py")
-                    testCases.append(
-                        (test.id(), test.shortDescription(), filename)
-                    )
-        return testCases
     
     def setDisassembly(self, disassembly):
         """

eric ide

mercurial