def test_upgrade_from_v4(self): env = Environment.load(os.path.join(test_data_dir, 'environment', 'v4')) self.assertEqual(env.bfgdir, Path('/path/to', Root.absolute)) self.assertEqual(env.backend, 'make') self.assertEqual(env.srcdir, Path('/root/srcdir', Root.absolute)) self.assertEqual(env.builddir, Path('/root/builddir', Root.absolute)) self.assertDictsEqual( env.install_dirs, { InstallRoot.prefix: Path('/root/prefix', Root.absolute), InstallRoot.exec_prefix: Path('', InstallRoot.prefix), InstallRoot.bindir: Path('bin', InstallRoot.exec_prefix), InstallRoot.libdir: Path('lib', InstallRoot.exec_prefix), InstallRoot.includedir: Path('include', InstallRoot.prefix), }) self.assertEqual(env.library_mode, LibraryMode(True, False)) self.assertEqual(env.extra_args, []) variables = {u'HOME': u'/home/user'} if platform_info().family == 'windows' and sys.version_info[0] == 2: variables = {str(k): str(v) for k, v in iteritems(variables)} self.assertEqual(env.variables, variables) self.assertEqual(env.host_platform.name, 'linux') self.assertEqual(env.target_platform.name, 'linux')
def test_shell(self): s = safe_str.jbos('$foo', safe_str.literal('$bar')) self.out.write(s, Syntax.shell) if platform_info().family == 'windows': expected = '$$foo$bar' else: expected = quoted('$$foo') + '$bar' self.assertEqual(self.out.stream.getvalue(), expected)
def test_unknown(self): with mock.patch('platform.machine', return_value='x86_64'): platform = host.platform_info('onosendai') self.assertEqual(platform.name, 'onosendai') self.assertEqual(platform.species, 'onosendai') self.assertEqual(platform.genus, 'onosendai') self.assertEqual(platform.family, 'posix') self.assertEqual(platform.triplet, 'x86_64-unknown-onosendai')
def test_windows(self): with mock.patch('platform.machine', return_value='x86_64'): platform = host.platform_info('winnt') self.assertEqual(platform.name, 'winnt') self.assertEqual(platform.species, 'winnt') self.assertEqual(platform.genus, 'winnt') self.assertEqual(platform.family, 'windows') self.assertEqual(platform.triplet, 'x86_64-unknown-win32')
def test_android(self): with mock.patch('platform.machine', return_value='arm'): platform = host.platform_info('android') self.assertEqual(platform.name, 'android') self.assertEqual(platform.species, 'android') self.assertEqual(platform.genus, 'linux') self.assertEqual(platform.family, 'posix') self.assertEqual(platform.triplet, 'arm-unknown-linux-android')
def test_darwin(self): with mock.patch('platform.machine', return_value='x86_64'): platform = host.platform_info('macos') self.assertEqual(platform.name, 'macos') self.assertEqual(platform.species, 'macos') self.assertEqual(platform.genus, 'darwin') self.assertEqual(platform.family, 'posix') self.assertEqual(platform.triplet, 'x86_64-apple-darwin')
def test_cygwin(self): with mock.patch('platform.machine', return_value='x86_64'): platform = host.platform_info('cygwin') self.assertEqual(platform.name, 'cygwin') self.assertEqual(platform.species, 'cygwin') self.assertEqual(platform.genus, 'cygwin') self.assertEqual(platform.family, 'posix') self.assertEqual(platform.triplet, 'x86_64-unknown-windows-cygnus')
def test_linux(self): with mock.patch('platform.machine', return_value='x86_64'): platform = host.platform_info('linux') self.assertEqual(platform.name, 'linux') self.assertEqual(platform.species, 'linux') self.assertEqual(platform.genus, 'linux') self.assertEqual(platform.family, 'posix') self.assertEqual(platform.triplet, 'x86_64-unknown-linux-gnu') self.assertEqual(platform.object_format, 'elf')
def test_default(self): with mock.patch('platform.system', return_value='Linux'), \ mock.patch('platform.machine', return_value='i686'): # noqa platform = host.platform_info() self.assertEqual(platform.name, 'linux') self.assertEqual(platform.species, 'linux') self.assertEqual(platform.genus, 'linux') self.assertEqual(platform.family, 'posix') self.assertEqual(platform.triplet, 'i686-pc-linux-gnu')
from six.moves import cStringIO as StringIO from ... import * from bfg9000 import path from bfg9000 import safe_str from bfg9000.backends.make.syntax import * from bfg9000.file_types import File from bfg9000.platforms.host import platform_info esc_colon = ':' if platform_info().family == 'windows' else '\\:' def quoted(s): return "'" + s + "'" class my_safe_str(safe_str.safe_string): pass class TestPattern(TestCase): def test_equality(self): self.assertTrue(Pattern('%.c') == Pattern('%.c')) self.assertFalse(Pattern('%.c') != Pattern('%.c')) self.assertFalse(Pattern('%.c') == Pattern('%.h')) self.assertTrue(Pattern('%.c') != Pattern('%.h')) self.assertTrue(Pattern('%\\%.c') == Pattern('%\\%.c')) self.assertFalse(Pattern('%\\%.c') != Pattern('%\\%.c'))
from io import StringIO from ... import * from bfg9000 import path from bfg9000 import safe_str from bfg9000.backends.ninja.syntax import * from bfg9000.file_types import File from bfg9000.platforms.host import platform_info quote_char = '"' if platform_info().family == 'windows' else "'" def quoted(s): return quote_char + s + quote_char class my_safe_str(safe_str.safe_string): pass class TestWriteString(TestCase): def setUp(self): self.out = Writer(StringIO(), {}) def test_output(self): self.out.write('foo: $bar', Syntax.output) self.assertEqual(self.out.stream.getvalue(), 'foo$:$ $$bar') def test_input(self): self.out.write('foo: $bar', Syntax.input)
def test_unknown(self): platform = host.platform_info('unknown') self.assertEqual(platform.name, 'unknown') self.assertEqual(platform.flavor, 'posix')
def test_windows(self): platform = host.platform_info('windows') self.assertEqual(platform.name, 'windows') self.assertEqual(platform.flavor, 'windows')
def test_linux(self): platform = host.platform_info('linux') self.assertEqual(platform.name, 'linux') self.assertEqual(platform.flavor, 'posix')
def test_darwin(self): platform = host.platform_info('darwin') self.assertEqual(platform.name, 'darwin') self.assertEqual(platform.flavor, 'posix')
def test_default(self): with mock.patch('platform.system', return_value='Linux'): platform = host.platform_info() self.assertEqual(platform.name, 'linux') self.assertEqual(platform.flavor, 'posix')