111 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			111 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Python
		
	
	
	
import py
 | 
						|
 | 
						|
def setup_module(mod):
 | 
						|
    mod.datadir = setupdatadir()
 | 
						|
    mod.tmpdir = py.test.ensuretemp(mod.__name__) 
 | 
						|
 | 
						|
def setupdatadir():
 | 
						|
    datadir = py.test.ensuretemp("datadir")
 | 
						|
    names = [x.basename for x in datadir.listdir()]
 | 
						|
    for name, content in namecontent:
 | 
						|
        if name not in names:
 | 
						|
            datadir.join(name).write(content)
 | 
						|
    return datadir
 | 
						|
 | 
						|
namecontent = [
 | 
						|
('syntax_error.py', "this is really not python\n"),
 | 
						|
 | 
						|
('disabled_module.py', py.code.Source('''
 | 
						|
        disabled = True
 | 
						|
 | 
						|
        def setup_module(mod):
 | 
						|
            raise ValueError
 | 
						|
 | 
						|
        class TestClassOne:
 | 
						|
            def test_func(self):
 | 
						|
                raise ValueError
 | 
						|
 | 
						|
        class TestClassTwo:
 | 
						|
            def setup_class(cls):
 | 
						|
                raise ValueError
 | 
						|
            def test_func(self):
 | 
						|
                raise ValueError
 | 
						|
''')),
 | 
						|
 | 
						|
('brokenrepr.py', py.code.Source('''
 | 
						|
 | 
						|
    import py
 | 
						|
 | 
						|
    class BrokenRepr1:
 | 
						|
        """A broken class with lots of broken methods. Let's try to make the test framework 
 | 
						|
        immune to these."""
 | 
						|
        foo=0
 | 
						|
        def __repr__(self):
 | 
						|
            raise Exception("Ha Ha fooled you, I'm a broken repr().")
 | 
						|
 | 
						|
    class BrokenRepr2:
 | 
						|
        """A broken class with lots of broken methods. Let's try to make the test framework 
 | 
						|
        immune to these."""
 | 
						|
        foo=0
 | 
						|
        def __repr__(self):
 | 
						|
            raise "Ha Ha fooled you, I'm a broken repr()."
 | 
						|
 | 
						|
        
 | 
						|
    class TestBrokenClass:
 | 
						|
 | 
						|
        def test_explicit_bad_repr(self):
 | 
						|
            t = BrokenRepr1()
 | 
						|
            py.test.raises(Exception, 'repr(t)')
 | 
						|
            
 | 
						|
        def test_implicit_bad_repr1(self):
 | 
						|
            t = BrokenRepr1()
 | 
						|
            assert t.foo == 1
 | 
						|
 | 
						|
        def test_implicit_bad_repr2(self):
 | 
						|
            t = BrokenRepr2()
 | 
						|
            assert t.foo == 1
 | 
						|
    ''')),
 | 
						|
 | 
						|
    ('failingimport.py', py.code.Source('''
 | 
						|
 | 
						|
     import gruetzelmuetzel
 | 
						|
 | 
						|
    ''')),
 | 
						|
 | 
						|
    ('filetest.py', py.code.Source('''
 | 
						|
        def test_one(): 
 | 
						|
            assert 42 == 43
 | 
						|
 | 
						|
        class TestClass(object): 
 | 
						|
            def test_method_one(self): 
 | 
						|
                assert 42 == 43 
 | 
						|
 | 
						|
    ''')),
 | 
						|
    ('testmore.py', py.code.Source('''
 | 
						|
        def test_one():
 | 
						|
            assert 1
 | 
						|
 | 
						|
        def test_two():
 | 
						|
            assert 1
 | 
						|
 | 
						|
        def test_three():
 | 
						|
            assert 1
 | 
						|
    ''')),
 | 
						|
 | 
						|
    ('testspecial_importerror.py', py.code.Source('''
 | 
						|
 | 
						|
        import asdasd
 | 
						|
 | 
						|
    ''')),
 | 
						|
 | 
						|
    ('disabled.py', py.code.Source('''
 | 
						|
        class TestDisabled:
 | 
						|
            disabled = True
 | 
						|
            def test_method(self): 
 | 
						|
                pass
 | 
						|
    ''')),
 | 
						|
]    
 | 
						|
   
 | 
						|
 | 
						|
 
 |