[svn r63429] pytest_figleaf now filters out all coverage for files outside of the tested package
--HG-- branch : trunk
This commit is contained in:
		
							parent
							
								
									fbb0e4b62d
								
							
						
					
					
						commit
						0a02a4a0e5
					
				|  | @ -25,26 +25,36 @@ class FigleafPlugin: | ||||||
| 
 | 
 | ||||||
|     def pytest_terminal_summary(self, terminalreporter): |     def pytest_terminal_summary(self, terminalreporter): | ||||||
|         if hasattr(self, 'figleaf'): |         if hasattr(self, 'figleaf'): | ||||||
|             data_file = terminalreporter.config.getvalue('figleafdata') |             datafile = terminalreporter.config.getvalue('figleafdata') | ||||||
|             data_file = py.path.local(data_file) |             datafile = py.path.local(datafile) | ||||||
|             tw = terminalreporter._tw |             tw = terminalreporter._tw | ||||||
|             tw.sep('-', 'figleaf') |             tw.sep('-', 'figleaf') | ||||||
|             tw.line('Writing figleaf data to %s' % (data_file)) |             tw.line('Writing figleaf data to %s' % (datafile)) | ||||||
|             self.figleaf.stop() |             self.figleaf.stop() | ||||||
|             self.figleaf.write_coverage(str(data_file)) |             self.figleaf.write_coverage(str(datafile)) | ||||||
|             data = self.figleaf.read_coverage(str(data_file)) |             coverage = self.get_coverage(datafile,  | ||||||
|             d = {} |                     terminalreporter.config.topdir) | ||||||
|             coverage = self.figleaf.combine_coverage(d, data) |  | ||||||
|             # TODO exclude pylib |  | ||||||
|             exclude = [] |  | ||||||
| 
 | 
 | ||||||
|             reportdir = terminalreporter.config.getvalue('figleafhtml') |             reportdir = terminalreporter.config.getvalue('figleafhtml') | ||||||
|             reportdir = py.path.local(reportdir) |             reportdir = py.path.local(reportdir) | ||||||
|             tw.line('Writing figleaf html to file://%s' % (reportdir)) |             tw.line('Writing figleaf html to file://%s' % (reportdir)) | ||||||
|             self.figleaf.annotate_html.prepare_reportdir(str(reportdir)) |             self.figleaf.annotate_html.prepare_reportdir(str(reportdir)) | ||||||
|  |             exclude = [] | ||||||
|             self.figleaf.annotate_html.report_as_html(coverage,  |             self.figleaf.annotate_html.report_as_html(coverage,  | ||||||
|                     str(reportdir), exclude, {}) |                     str(reportdir), exclude, {}) | ||||||
| 
 | 
 | ||||||
|  |     def get_coverage(self, datafile, topdir): | ||||||
|  |         data = self.figleaf.read_coverage(str(datafile)) | ||||||
|  |         d = {} | ||||||
|  |         coverage = self.figleaf.combine_coverage(d, data) | ||||||
|  |         for path in coverage.keys(): | ||||||
|  |             if not py.path.local(path).relto(topdir): | ||||||
|  |                 del coverage[path] | ||||||
|  | 
 | ||||||
|  |         return coverage | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| def test_generic(plugintester): | def test_generic(plugintester): | ||||||
|     plugintester.apicheck(FigleafPlugin) |     plugintester.apicheck(FigleafPlugin) | ||||||
| 
 | 
 | ||||||
|  | @ -62,4 +72,3 @@ def test_functional(testdir): | ||||||
|         '*figleaf html*' |         '*figleaf html*' | ||||||
|         ]) |         ]) | ||||||
|     print result.stdout.str() |     print result.stdout.str() | ||||||
|     assert 0 |  | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue