remove figleaf which now lives "outside"
--HG-- branch : trunk
This commit is contained in:
		
							parent
							
								
									59f3adb46b
								
							
						
					
					
						commit
						d4f5073076
					
				|  | @ -22,6 +22,7 @@ plugins = [ | |||
| 
 | ||||
| externals = { | ||||
|     'oejskit': "run javascript tests in real life browsers",  | ||||
|     'figleaf': "for testing with Titus' figleaf coverage module", | ||||
|     'django': "for testing django applications",  | ||||
|     'coverage': "for testing with Ned's coverage module ",  | ||||
|     'xmlresult': "for generating xml reports "  | ||||
|  | @ -137,7 +138,7 @@ class PluginOverview(RestWriter): | |||
|                 docpath = self.target.dirpath(name).new(ext=".txt") | ||||
|                 if oneliner is not None: | ||||
|                     htmlpath = docpath.new(ext='.html') | ||||
|                     self.para("%s_ (3rd) %s" %(name, oneliner)) | ||||
|                     self.para("%s_ (external) %s" %(name, oneliner)) | ||||
|                     self.add_internal_link(name, htmlpath) | ||||
|                 else: | ||||
|                     doc = PluginDoc(docpath) | ||||
|  |  | |||
|  | @ -1,33 +1,17 @@ | |||
| 
 | ||||
| pytest_figleaf plugin | ||||
| ===================== | ||||
| 
 | ||||
| report python test coverage using the 'figleaf' package. | ||||
| add options to drive and report python test coverage using the 'figleaf' package. | ||||
| 
 | ||||
| .. contents:: | ||||
|   :local: | ||||
| Install the `pytest-figleaf`_ plugin to use figleaf coverage testing:: | ||||
| 
 | ||||
| Not enabled by default (use "-p" or conftest settings to do so). | ||||
|     easy_install pytest-figleaf | ||||
| 
 | ||||
| command line options | ||||
| -------------------- | ||||
| or:: | ||||
|      | ||||
|     pip install pytest-figleaf | ||||
| 
 | ||||
| This will make py.test have figleaf related options. | ||||
| 
 | ||||
| ``--figleaf`` | ||||
|     trace python coverage with figleaf and write HTML for files below the current working dir | ||||
| ``--fig-data=dir`` | ||||
|     set tracing file, default: ".figleaf". | ||||
| ``--fig-html=dir`` | ||||
|     set html reporting dir, default "html". | ||||
| .. _`pytest-figleaf`: http://bitbucket.org/hpk42/pytest-figleaf/ | ||||
| 
 | ||||
| Start improving this plugin in 30 seconds | ||||
| ========================================= | ||||
| 
 | ||||
| 
 | ||||
| 1. Download `pytest_figleaf.py`_ plugin source code  | ||||
| 2. put it somewhere as ``pytest_figleaf.py`` into your import path  | ||||
| 3. a subsequent ``py.test`` run will use your local version | ||||
| 
 | ||||
| Checkout customize_, other plugins_ or `get in contact`_.  | ||||
| 
 | ||||
| .. include:: links.txt | ||||
|  |  | |||
|  | @ -17,6 +17,12 @@ command line options | |||
|     display py lib version and import information. | ||||
| ``-p name`` | ||||
|     early-load given plugin (multi-allowed). | ||||
| ``--traceconfig`` | ||||
|     trace considerations of conftest.py files. | ||||
| ``--nomagic`` | ||||
|     don't reinterpret asserts, no traceback cutting.  | ||||
| ``--debug`` | ||||
|     generate and show internal debugging information. | ||||
| ``--help-config`` | ||||
|     show available conftest.py and ENV-variable names. | ||||
| 
 | ||||
|  |  | |||
|  | @ -115,6 +115,9 @@ hook specification sourcecode | |||
|     # hooks for influencing reporting (invoked from pytest_terminal) | ||||
|     # ------------------------------------------------------------------------- | ||||
|      | ||||
|     def pytest_report_header(config): | ||||
|         """ return a string to be displayed as header info for terminal reporting.""" | ||||
|      | ||||
|     def pytest_report_teststatus(report): | ||||
|         """ return result-category, shortletter and verbose word for reporting.""" | ||||
|     pytest_report_teststatus.firstresult = True | ||||
|  |  | |||
|  | @ -8,9 +8,9 @@ mark_ generic mechanism for marking python functions. | |||
| 
 | ||||
| pdb_ interactive debugging with the Python Debugger. | ||||
| 
 | ||||
| figleaf_ report python test coverage using the 'figleaf' package. | ||||
| figleaf_ (external) for testing with Titus' figleaf coverage module | ||||
| 
 | ||||
| coverage_ (3rd) for testing with Ned's coverage module  | ||||
| coverage_ (external) for testing with Ned's coverage module  | ||||
| 
 | ||||
| monkeypatch_ safely patch object attributes, dicts and environment variables. | ||||
| 
 | ||||
|  | @ -24,9 +24,9 @@ tmpdir_ provide temporary directories to test functions. | |||
| testing domains | ||||
| =============== | ||||
| 
 | ||||
| oejskit_ (3rd) run javascript tests in real life browsers | ||||
| oejskit_ (external) run javascript tests in real life browsers | ||||
| 
 | ||||
| django_ (3rd) for testing django applications | ||||
| django_ (external) for testing django applications | ||||
| 
 | ||||
| genscript_ generate standalone test script to be distributed along with an application. | ||||
| 
 | ||||
|  | @ -38,7 +38,7 @@ pastebin_ submit failure or test session information to a pastebin service. | |||
| 
 | ||||
| logxml_ logging of test results in JUnit-XML format, for use with Hudson | ||||
| 
 | ||||
| xmlresult_ (3rd) for generating xml reports and CruiseControl integration | ||||
| xmlresult_ (external) for generating xml reports and CruiseControl integration | ||||
| 
 | ||||
| resultlog_ non-xml machine-readable logging of test results. | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| .. _`pytest_logxml.py`: http://bitbucket.org/hpk42/py-trunk/raw/1.2.0a1/py/plugin/pytest_logxml.py | ||||
| .. _`terminal`: terminal.html | ||||
| .. _`helpconfig`: helpconfig.html | ||||
| .. _`pytest_recwarn.py`: http://bitbucket.org/hpk42/py-trunk/raw/1.2.0a1/py/plugin/pytest_recwarn.py | ||||
| .. _`unittest`: unittest.html | ||||
| .. _`pytest_monkeypatch.py`: http://bitbucket.org/hpk42/py-trunk/raw/1.2.0a1/py/plugin/pytest_monkeypatch.py | ||||
|  | @ -17,10 +17,9 @@ | |||
| .. _`restdoc`: restdoc.html | ||||
| .. _`pytest_pastebin.py`: http://bitbucket.org/hpk42/py-trunk/raw/1.2.0a1/py/plugin/pytest_pastebin.py | ||||
| .. _`pytest_tmpdir.py`: http://bitbucket.org/hpk42/py-trunk/raw/1.2.0a1/py/plugin/pytest_tmpdir.py | ||||
| .. _`pytest_figleaf.py`: http://bitbucket.org/hpk42/py-trunk/raw/1.2.0a1/py/plugin/pytest_figleaf.py | ||||
| .. _`terminal`: terminal.html | ||||
| .. _`pytest_hooklog.py`: http://bitbucket.org/hpk42/py-trunk/raw/1.2.0a1/py/plugin/pytest_hooklog.py | ||||
| .. _`logxml`: logxml.html | ||||
| .. _`helpconfig`: helpconfig.html | ||||
| .. _`pytest_skipping.py`: http://bitbucket.org/hpk42/py-trunk/raw/1.2.0a1/py/plugin/pytest_skipping.py | ||||
| .. _`checkout the py.test development version`: ../../install.html#checkout | ||||
| .. _`pytest_helpconfig.py`: http://bitbucket.org/hpk42/py-trunk/raw/1.2.0a1/py/plugin/pytest_helpconfig.py | ||||
|  |  | |||
|  | @ -23,12 +23,6 @@ command line options | |||
|     traceback verboseness (long/short/no). | ||||
| ``--fulltrace`` | ||||
|     don't cut any tracebacks (default is to cut). | ||||
| ``--traceconfig`` | ||||
|     trace considerations of conftest.py files. | ||||
| ``--nomagic`` | ||||
|     don't reinterpret asserts, no traceback cutting.  | ||||
| ``--debug`` | ||||
|     generate and show internal debugging information. | ||||
| 
 | ||||
| Start improving this plugin in 30 seconds | ||||
| ========================================= | ||||
|  |  | |||
|  | @ -1,54 +0,0 @@ | |||
| """ | ||||
| report python test coverage using the 'figleaf' package. | ||||
| 
 | ||||
| Not enabled by default (use "-p" or conftest settings to do so).  | ||||
| """ | ||||
| import py | ||||
| py.test.importorskip("figleaf") | ||||
| import figleaf.annotate_html | ||||
| 
 | ||||
| def pytest_addoption(parser): | ||||
|     group = parser.getgroup('figleaf options') | ||||
|     group.addoption('--figleaf', action='store_true', default=False, | ||||
|             dest = 'figleaf', | ||||
|             help=('trace python coverage with figleaf and write HTML ' | ||||
|                  'for files below the current working dir')) | ||||
|     group.addoption('--fig-data', action='store', default='.figleaf', | ||||
|             dest='figleafdata', metavar="dir", | ||||
|             help='set tracing file, default: ".figleaf".') | ||||
|     group.addoption('--fig-html', action='store', default='html', | ||||
|             dest='figleafhtml', metavar="dir", | ||||
|             help='set html reporting dir, default "html".') | ||||
| 
 | ||||
| def pytest_configure(config): | ||||
|     if config.getvalue("figleaf"): | ||||
|         figleaf.start() | ||||
| 
 | ||||
| def pytest_terminal_summary(terminalreporter): | ||||
|     config = terminalreporter.config | ||||
|     if not config.getvalue("figleaf"): | ||||
|         return | ||||
|     datafile = py.path.local(config.getvalue('figleafdata')) | ||||
|     tw = terminalreporter._tw | ||||
|     tw.sep('-', 'figleaf') | ||||
|     tw.line('Writing figleaf data to %s' % (datafile)) | ||||
|     figleaf.stop() | ||||
|     figleaf.write_coverage(str(datafile)) | ||||
|     coverage = get_coverage(datafile, config) | ||||
|     reportdir = py.path.local(config.getvalue('figleafhtml')) | ||||
|     tw.line('Writing figleaf html to file://%s' % (reportdir)) | ||||
|     figleaf.annotate_html.prepare_reportdir(str(reportdir)) | ||||
|     exclude = [] | ||||
|     figleaf.annotate_html.report_as_html(coverage,  | ||||
|             str(reportdir), exclude, {}) | ||||
| 
 | ||||
| def get_coverage(datafile, config): | ||||
|     # basepath = config.topdir | ||||
|     basepath = py.path.local() | ||||
|     data = figleaf.read_coverage(str(datafile)) | ||||
|     d = {} | ||||
|     coverage = figleaf.combine_coverage(d, data) | ||||
|     for path in coverage.keys(): | ||||
|         if not py.path.local(path).relto(basepath): | ||||
|             del coverage[path] | ||||
|     return coverage | ||||
|  | @ -1,17 +0,0 @@ | |||
| import py | ||||
| 
 | ||||
| def test_functional(testdir): | ||||
|     py.test.importorskip("figleaf") | ||||
|     testdir.makepyfile(""" | ||||
|         def f():     | ||||
|             x = 42 | ||||
|         def test_whatever(): | ||||
|             pass | ||||
|         """) | ||||
|     result = testdir.runpytest('--figleaf') | ||||
|     assert result.ret == 0 | ||||
|     assert result.stdout.fnmatch_lines([ | ||||
|         '*figleaf html*' | ||||
|         ]) | ||||
|     #print result.stdout.str() | ||||
| 
 | ||||
		Loading…
	
		Reference in New Issue