Merge pull request #3096 from nicoddemus/import-warnings
Ignore ImportWarnings regarding package resolution
This commit is contained in:
		
						commit
						962aede290
					
				| 
						 | 
					@ -30,9 +30,17 @@ from _pytest.compat import (
 | 
				
			||||||
from _pytest.outcomes import fail
 | 
					from _pytest.outcomes import fail
 | 
				
			||||||
from _pytest.mark import transfer_markers
 | 
					from _pytest.mark import transfer_markers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cutdir1 = py.path.local(pluggy.__file__.rstrip("oc"))
 | 
					
 | 
				
			||||||
cutdir2 = py.path.local(_pytest.__file__).dirpath()
 | 
					# relative paths that we use to filter traceback entries from appearing to the user;
 | 
				
			||||||
cutdir3 = py.path.local(py.__file__).dirpath()
 | 
					# see filter_traceback
 | 
				
			||||||
 | 
					# note: if we need to add more paths than what we have now we should probably use a list
 | 
				
			||||||
 | 
					# for better maintenance
 | 
				
			||||||
 | 
					_pluggy_dir = py.path.local(pluggy.__file__.rstrip("oc"))
 | 
				
			||||||
 | 
					# pluggy is either a package or a single module depending on the version
 | 
				
			||||||
 | 
					if _pluggy_dir.basename == '__init__.py':
 | 
				
			||||||
 | 
					    _pluggy_dir = _pluggy_dir.dirpath()
 | 
				
			||||||
 | 
					_pytest_dir = py.path.local(_pytest.__file__).dirpath()
 | 
				
			||||||
 | 
					_py_dir = py.path.local(py.__file__).dirpath()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def filter_traceback(entry):
 | 
					def filter_traceback(entry):
 | 
				
			||||||
| 
						 | 
					@ -47,10 +55,10 @@ def filter_traceback(entry):
 | 
				
			||||||
    is_generated = '<' in raw_filename and '>' in raw_filename
 | 
					    is_generated = '<' in raw_filename and '>' in raw_filename
 | 
				
			||||||
    if is_generated:
 | 
					    if is_generated:
 | 
				
			||||||
        return False
 | 
					        return False
 | 
				
			||||||
    # entry.path might point to an inexisting file, in which case it will
 | 
					    # entry.path might point to an non-existing file, in which case it will
 | 
				
			||||||
    # alsso return a str object. see #1133
 | 
					    # also return a str object. see #1133
 | 
				
			||||||
    p = py.path.local(entry.path)
 | 
					    p = py.path.local(entry.path)
 | 
				
			||||||
    return p != cutdir1 and not p.relto(cutdir2) and not p.relto(cutdir3)
 | 
					    return not p.relto(_pluggy_dir) and not p.relto(_pytest_dir) and not p.relto(_py_dir)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def pyobj_property(name):
 | 
					def pyobj_property(name):
 | 
				
			||||||
| 
						 | 
					@ -563,7 +571,6 @@ class FunctionMixin(PyobjMixin):
 | 
				
			||||||
            if ntraceback == traceback:
 | 
					            if ntraceback == traceback:
 | 
				
			||||||
                ntraceback = ntraceback.cut(path=path)
 | 
					                ntraceback = ntraceback.cut(path=path)
 | 
				
			||||||
                if ntraceback == traceback:
 | 
					                if ntraceback == traceback:
 | 
				
			||||||
                    # ntraceback = ntraceback.cut(excludepath=cutdir2)
 | 
					 | 
				
			||||||
                    ntraceback = ntraceback.filter(filter_traceback)
 | 
					                    ntraceback = ntraceback.filter(filter_traceback)
 | 
				
			||||||
                    if not ntraceback:
 | 
					                    if not ntraceback:
 | 
				
			||||||
                        ntraceback = traceback
 | 
					                        ntraceback = traceback
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										3
									
								
								tox.ini
								
								
								
								
							
							
						
						
									
										3
									
								
								tox.ini
								
								
								
								
							| 
						 | 
					@ -215,6 +215,9 @@ filterwarnings =
 | 
				
			||||||
    ignore:.*type argument to addoption.*:DeprecationWarning
 | 
					    ignore:.*type argument to addoption.*:DeprecationWarning
 | 
				
			||||||
    # produced by python >=3.5 on execnet (pytest-xdist)
 | 
					    # produced by python >=3.5 on execnet (pytest-xdist)
 | 
				
			||||||
    ignore:.*inspect.getargspec.*deprecated, use inspect.signature.*:DeprecationWarning
 | 
					    ignore:.*inspect.getargspec.*deprecated, use inspect.signature.*:DeprecationWarning
 | 
				
			||||||
 | 
					    # ignore warning about package resolution using __spec__ or __package__
 | 
				
			||||||
 | 
					    # should be a temporary solution, see #3061 for discussion
 | 
				
			||||||
 | 
					    ignore:.*can't resolve package from __spec__ or __package__.*:ImportWarning
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[flake8]
 | 
					[flake8]
 | 
				
			||||||
max-line-length = 120
 | 
					max-line-length = 120
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue