'test that filter_traceback() works with the fact that
py.code.Code.path attribute might return an str object.
In this case, one of the files in the traceback no longer exists.
This fixes #1133.'

def test_filter_traceback_path_no_longer_valid(self, testdir):

    from _pytest.python import filter_traceback
    testdir.syspathinsert()
    testdir.makepyfile(filter_traceback_entry_as_str='\n                                                def    foo():\n                                                                raise    ValueError\n                                ')
    try:
        import filter_traceback_entry_as_str
        filter_traceback_entry_as_str.foo()
    except ValueError:
        (_, _, tb) = sys.exc_info()
    testdir.tmpdir.join('filter_traceback_entry_as_str.py').remove()
    tb = _pytest._code.Traceback(tb)
    assert isinstance(tb[(-1)].path, str)
    assert filter_traceback(tb[(-1)])
