def test_merge2(self): e1 = ExternalCompilationInfo(pre_include_bits=['1'], link_files=['1.c']) e2 = ExternalCompilationInfo(pre_include_bits=['2'], link_files=['1.c', '2.c']) e3 = ExternalCompilationInfo(pre_include_bits=['3'], link_files=['1.c', '2.c', '3.c']) e = e1.merge(e2) e = e.merge(e3, e3) assert e.pre_include_bits == ('1', '2', '3') assert e.link_files == ('1.c', '2.c', '3.c')
def test_merge(self): e1 = ExternalCompilationInfo(pre_include_bits=['1'], includes=['x.h'], post_include_bits=['p1']) e2 = ExternalCompilationInfo( pre_include_bits=['2'], includes=['x.h', 'y.h'], post_include_bits=['p2'], ) e3 = ExternalCompilationInfo(pre_include_bits=['3'], includes=['y.h', 'z.h'], post_include_bits=['p1', 'p3']) e = e1.merge(e2, e3) assert e.pre_include_bits == ('1', '2', '3') assert e.includes == ('x.h', 'y.h', 'z.h') assert e.post_include_bits == ('p1', 'p2', 'p3')
def test_merge2(self): e1 = ExternalCompilationInfo( pre_include_bits = ['1'], link_files = ['1.c'] ) e2 = ExternalCompilationInfo( pre_include_bits = ['2'], link_files = ['1.c', '2.c'] ) e3 = ExternalCompilationInfo( pre_include_bits = ['3'], link_files = ['1.c', '2.c', '3.c'] ) e = e1.merge(e2) e = e.merge(e3, e3) assert e.pre_include_bits == ('1', '2', '3') assert e.link_files == ('1.c', '2.c', '3.c')
def test_platforms(self): from platformer import Platform class Maemo(Platform): def __init__(self, cc=None): self.cc = cc eci = ExternalCompilationInfo(platform=Maemo()) eci2 = ExternalCompilationInfo() assert eci != eci2 assert hash(eci) != hash(eci2) assert repr(eci) != repr(eci2) py.test.raises(Exception, eci2.merge, eci) assert eci.merge(eci).platform == Maemo() assert (ExternalCompilationInfo(platform=Maemo(cc='xxx')) != ExternalCompilationInfo(platform=Maemo(cc='yyy'))) assert (repr(ExternalCompilationInfo(platform=Maemo(cc='xxx'))) != repr(ExternalCompilationInfo(platform=Maemo(cc='yyy'))))
def test_platforms(self): from platformer import Platform class Maemo(Platform): def __init__(self, cc=None): self.cc = cc eci = ExternalCompilationInfo(platform=Maemo()) eci2 = ExternalCompilationInfo() assert eci != eci2 assert hash(eci) != hash(eci2) assert repr(eci) != repr(eci2) py.test.raises(Exception, eci2.merge, eci) assert eci.merge(eci).platform == Maemo() assert (ExternalCompilationInfo(platform=Maemo(cc='xxx')) != ExternalCompilationInfo(platform=Maemo(cc='yyy'))) assert (repr(ExternalCompilationInfo(platform=Maemo(cc='xxx'))) != repr(ExternalCompilationInfo(platform=Maemo(cc='yyy'))))
def test_merge(self): e1 = ExternalCompilationInfo( pre_include_bits = ['1'], includes = ['x.h'], post_include_bits = ['p1'] ) e2 = ExternalCompilationInfo( pre_include_bits = ['2'], includes = ['x.h', 'y.h'], post_include_bits = ['p2'], ) e3 = ExternalCompilationInfo( pre_include_bits = ['3'], includes = ['y.h', 'z.h'], post_include_bits = ['p1', 'p3'] ) e = e1.merge(e2, e3) assert e.pre_include_bits == ('1', '2', '3') assert e.includes == ('x.h', 'y.h', 'z.h') assert e.post_include_bits == ('p1', 'p2', 'p3')