def test_default_name(self): src = SourceFile(Path('file.l', Root.srcdir), 'yacc') self.assertEqual(self.compiler.default_name(src, None), ['file.tab.c', 'file.tab.h']) self.assertEqual(self.compiler.default_name(src, AttrDict( user_options=opts.option_list(opts.lang('c++')) )), ['file.tab.cpp', 'file.tab.hpp']) with self.assertRaises(ValueError): self.compiler.default_name(src, AttrDict( user_options=opts.option_list(opts.lang('java')) ))
def test_output_file(self): self.assertEqual(self.compiler.output_file('file.yy.c', None), SourceFile(Path('file.yy.c'), 'c')) self.assertEqual( self.compiler.output_file( 'file.yy.cpp', AttrDict(user_options=opts.option_list(opts.lang('c++')))), SourceFile(Path('file.yy.cpp'), 'c++'))
def test_output_file(self): src = SourceFile(Path('file.tab.c'), 'c') hdr = HeaderFile(Path('file.tab.h'), 'c') self.assertEqual(self.compiler.output_file('file.tab.c', None), src) self.assertEqual(self.compiler.output_file( ['file.tab.c', 'file.tab.h'], None ), [src, hdr]) src = SourceFile(Path('file.tab.cpp'), 'c++') hdr = HeaderFile(Path('file.tab.hpp'), 'c++') context = AttrDict(user_options=opts.option_list(opts.lang('c++'))) self.assertEqual(self.compiler.output_file('file.tab.cpp', context), src) self.assertEqual(self.compiler.output_file( ['file.tab.cpp', 'file.tab.hpp'], context ), [src, hdr]) with self.assertRaises(ValueError): self.compiler.output_file(['file.tab.c', 'file.tab.h', 'extra'], None)
def test_flags_lang(self): self.assertEqual( self.compiler.flags(opts.option_list(opts.lang('c++'))), ['--c++'])