Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 import json | 5 import json |
| 6 import os | 6 import os |
| 7 import posixpath | 7 import posixpath |
| 8 import shutil | 8 import shutil |
| 9 import subprocess | 9 import subprocess |
| 10 import sys | 10 import sys |
| 11 import tempfile | 11 import tempfile |
| 12 import unittest | 12 import unittest |
| 13 | 13 |
| 14 SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) | 14 SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) |
| 15 TOOLS_DIR = os.path.dirname(SCRIPT_DIR) | 15 TOOLS_DIR = os.path.dirname(SCRIPT_DIR) |
| 16 DATA_DIR = os.path.join(TOOLS_DIR, 'lib', 'tests', 'data') | 16 DATA_DIR = os.path.join(TOOLS_DIR, 'lib', 'tests', 'data') |
| 17 BUILD_TOOLS_DIR = os.path.join(os.path.dirname(TOOLS_DIR), 'build_tools') | |
| 17 CHROME_SRC = os.path.dirname(os.path.dirname(os.path.dirname(TOOLS_DIR))) | 18 CHROME_SRC = os.path.dirname(os.path.dirname(os.path.dirname(TOOLS_DIR))) |
| 18 MOCK_DIR = os.path.join(CHROME_SRC, 'third_party', 'pymock') | 19 MOCK_DIR = os.path.join(CHROME_SRC, 'third_party', 'pymock') |
| 19 | 20 |
| 20 # For the mock library | 21 # For the mock library |
| 21 sys.path.append(MOCK_DIR) | 22 sys.path.append(MOCK_DIR) |
| 22 sys.path.append(TOOLS_DIR) | 23 sys.path.append(TOOLS_DIR) |
| 24 sys.path.append(BUILD_TOOLS_DIR) | |
| 23 | 25 |
| 24 import build_paths | 26 import build_paths |
| 25 import create_nmf | 27 import create_nmf |
| 26 import getos | 28 import getos |
| 27 import mock | 29 from mock import patch, Mock |
| 28 | 30 |
| 29 TOOLCHAIN_OUT = os.path.join(build_paths.OUT_DIR, 'sdk_tests', 'toolchain') | 31 TOOLCHAIN_OUT = os.path.join(build_paths.OUT_DIR, 'sdk_tests', 'toolchain') |
| 30 NACL_X86_GLIBC_TOOLCHAIN = os.path.join(TOOLCHAIN_OUT, | 32 NACL_X86_GLIBC_TOOLCHAIN = os.path.join(TOOLCHAIN_OUT, |
| 31 '%s_x86' % getos.GetPlatform(), | 33 '%s_x86' % getos.GetPlatform(), |
| 32 'nacl_x86_glibc') | 34 'nacl_x86_glibc') |
| 33 | 35 |
| 34 PosixRelPath = create_nmf.PosixRelPath | 36 PosixRelPath = create_nmf.PosixRelPath |
| 35 | 37 |
| 36 | 38 |
| 37 def StripSo(name): | 39 def StripSo(name): |
| (...skipping 21 matching lines...) Expand all Loading... | |
| 59 start = os.path.sep + 'foo' | 61 start = os.path.sep + 'foo' |
| 60 self.assertEqual(PosixRelPath(path, start), 'bar/baz.blah') | 62 self.assertEqual(PosixRelPath(path, start), 'bar/baz.blah') |
| 61 | 63 |
| 62 | 64 |
| 63 class TestDefaultLibpath(unittest.TestCase): | 65 class TestDefaultLibpath(unittest.TestCase): |
| 64 def testWithoutNaClSDKRoot(self): | 66 def testWithoutNaClSDKRoot(self): |
| 65 """GetDefaultLibPath wihtout NACL_SDK_ROOT set | 67 """GetDefaultLibPath wihtout NACL_SDK_ROOT set |
| 66 | 68 |
| 67 In the absence of NACL_SDK_ROOT GetDefaultLibPath should | 69 In the absence of NACL_SDK_ROOT GetDefaultLibPath should |
| 68 return the empty list.""" | 70 return the empty list.""" |
| 69 with mock.patch.dict('os.environ', clear=True): | 71 with patch.dict('os.environ', clear=True): |
| 70 paths = create_nmf.GetDefaultLibPath('Debug') | 72 paths = create_nmf.GetDefaultLibPath('Debug') |
| 71 self.assertEqual(paths, []) | 73 self.assertEqual(paths, []) |
| 72 | 74 |
| 75 @patch('create_nmf.IsValidSDKRoot', Mock(return_value=True)) | |
|
binji
2014/11/13 23:57:05
seems unrelated
Sam Clegg
2014/11/30 17:55:14
Done.
| |
| 73 def testHonorNaClSDKRoot(self): | 76 def testHonorNaClSDKRoot(self): |
| 74 with mock.patch.dict('os.environ', {'NACL_SDK_ROOT': '/dummy/path'}): | 77 with patch.dict('os.environ', {'NACL_SDK_ROOT': '/dummy/path'}): |
| 75 paths = create_nmf.GetDefaultLibPath('Debug') | 78 paths = create_nmf.GetDefaultLibPath('Debug') |
| 76 for path in paths: | 79 for path in paths: |
| 77 self.assertTrue(path.startswith('/dummy/path')) | 80 self.assertTrue(path.startswith('/dummy/path')) |
| 78 | 81 |
| 82 @patch('create_nmf.IsValidSDKRoot', Mock(return_value=True)) | |
| 79 def testIncludesNaClPorts(self): | 83 def testIncludesNaClPorts(self): |
| 80 with mock.patch.dict('os.environ', {'NACL_SDK_ROOT': '/dummy/path'}): | 84 with patch.dict('os.environ', {'NACL_SDK_ROOT': '/dummy/path'}): |
| 81 paths = create_nmf.GetDefaultLibPath('Debug') | 85 paths = create_nmf.GetDefaultLibPath('Debug') |
| 82 self.assertTrue(any(os.path.join('ports', 'lib') in p for p in paths), | 86 self.assertTrue(any(os.path.join('ports', 'lib') in p for p in paths), |
| 83 "naclports libpath missing: %s" % str(paths)) | 87 "naclports libpath missing: %s" % str(paths)) |
| 84 | 88 |
| 85 | 89 |
| 86 class TestNmfUtils(unittest.TestCase): | 90 class TestNmfUtils(unittest.TestCase): |
| 87 """Tests for the main NmfUtils class in create_nmf.""" | 91 """Tests for the main NmfUtils class in create_nmf.""" |
| 88 | 92 |
| 89 def setUp(self): | 93 def setUp(self): |
| 90 self.tempdir = None | 94 self.tempdir = None |
| (...skipping 506 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 597 'optlevel': 0, | 601 'optlevel': 0, |
| 598 } | 602 } |
| 599 } | 603 } |
| 600 } | 604 } |
| 601 } | 605 } |
| 602 self.assertManifestEquals(nmf, expected_manifest) | 606 self.assertManifestEquals(nmf, expected_manifest) |
| 603 | 607 |
| 604 | 608 |
| 605 if __name__ == '__main__': | 609 if __name__ == '__main__': |
| 606 unittest.main() | 610 unittest.main() |
| OLD | NEW |