DataViews/PyCoverageDialog.py

changeset 4489
d0d6e4ad31bd
parent 4385
599681bf149a
child 4631
5c1a96925da4
equal deleted inserted replaced
4481:456c58fc64b0 4489:d0d6e4ad31bd
8 """ 8 """
9 9
10 from __future__ import unicode_literals 10 from __future__ import unicode_literals
11 11
12 import os 12 import os
13 import sys
14 13
15 from PyQt5.QtCore import pyqtSlot, Qt 14 from PyQt5.QtCore import pyqtSlot, Qt
16 from PyQt5.QtWidgets import QDialog, QDialogButtonBox, QMenu, QHeaderView, \ 15 from PyQt5.QtWidgets import QDialog, QDialogButtonBox, QMenu, QHeaderView, \
17 QTreeWidgetItem, QApplication 16 QTreeWidgetItem, QApplication
18 17
21 from E5Gui.E5ProgressDialog import E5ProgressDialog 20 from E5Gui.E5ProgressDialog import E5ProgressDialog
22 21
23 from .Ui_PyCoverageDialog import Ui_PyCoverageDialog 22 from .Ui_PyCoverageDialog import Ui_PyCoverageDialog
24 23
25 import Utilities 24 import Utilities
26 if sys.version_info[0] == 2: 25 from coverage import coverage
27 from DebugClients.Python.coverage import coverage 26 from coverage.misc import CoverageException
28 from DebugClients.Python.coverage.misc import CoverageException
29 else:
30 from DebugClients.Python3.coverage import coverage
31 from DebugClients.Python3.coverage.misc import CoverageException
32 27
33 28
34 class PyCoverageDialog(QDialog, Ui_PyCoverageDialog): 29 class PyCoverageDialog(QDialog, Ui_PyCoverageDialog):
35 """ 30 """
36 Class implementing a dialog to display the collected code coverage data. 31 Class implementing a dialog to display the collected code coverage data.
172 files = [fn] 167 files = [fn]
173 self.path = os.path.dirname(cfn) 168 self.path = os.path.dirname(cfn)
174 files.sort() 169 files.sort()
175 170
176 cover = coverage(data_file=self.cfn) 171 cover = coverage(data_file=self.cfn)
177 cover.use_cache(True)
178 cover.load() 172 cover.load()
179 173
180 # set the exclude pattern 174 # set the exclude pattern
181 self.excludeCombo.clear() 175 self.excludeCombo.clear()
182 self.excludeCombo.addItems(self.excludeList) 176 self.excludeCombo.addItems(self.excludeList)
320 """ 314 """
321 itm = self.resultList.currentItem() 315 itm = self.resultList.currentItem()
322 fn = itm.text(0) 316 fn = itm.text(0)
323 317
324 cover = coverage(data_file=self.cfn) 318 cover = coverage(data_file=self.cfn)
325 cover.use_cache(True)
326 cover.exclude(self.excludeList[0]) 319 cover.exclude(self.excludeList[0])
327 cover.load() 320 cover.load()
328 cover.annotate([fn], None, True) 321 cover.annotate([fn], None, True)
329 322
330 def __annotateAll(self): 323 def __annotateAll(self):
343 for index in range(amount): 336 for index in range(amount):
344 itm = self.resultList.topLevelItem(index) 337 itm = self.resultList.topLevelItem(index)
345 files.append(itm.text(0)) 338 files.append(itm.text(0))
346 339
347 cover = coverage(data_file=self.cfn) 340 cover = coverage(data_file=self.cfn)
348 cover.use_cache(True)
349 cover.exclude(self.excludeList[0]) 341 cover.exclude(self.excludeList[0])
350 cover.load() 342 cover.load()
351 343
352 # now process them 344 # now process them
353 progress = E5ProgressDialog( 345 progress = E5ProgressDialog(
372 364
373 This method erases the collected coverage data that is 365 This method erases the collected coverage data that is
374 stored in the .coverage file. 366 stored in the .coverage file.
375 """ 367 """
376 cover = coverage(data_file=self.cfn) 368 cover = coverage(data_file=self.cfn)
377 cover.use_cache(True)
378 cover.load() 369 cover.load()
379 cover.erase() 370 cover.erase()
380 371
381 self.reloadButton.setEnabled(False) 372 self.reloadButton.setEnabled(False)
382 self.resultList.clear() 373 self.resultList.clear()

eric ide

mercurial