OLD | NEW |
| (Empty) |
1 #!/usr/bin/env python | |
2 # Copyright 2015 The Chromium Authors. All rights reserved. | |
3 # Use of this source code is governed by a BSD-style license that can be | |
4 # found in the LICENSE file. | |
5 | |
6 import os | |
7 import sys | |
8 import unittest | |
9 | |
10 SCRIPT_DIR = os.path.abspath(os.path.dirname(__file__)) | |
11 SRC_DIR = os.path.dirname(SCRIPT_DIR) | |
12 | |
13 sys.path.append(os.path.join(SRC_DIR, 'third_party', 'pymock')) | |
14 | |
15 import mock | |
16 | |
17 import gyp_chromium | |
18 | |
19 | |
20 class TestGetOutputDirectory(unittest.TestCase): | |
21 @mock.patch('os.environ', {}) | |
22 @mock.patch('sys.argv', [__file__]) | |
23 def testDefaultValue(self): | |
24 self.assertEqual(gyp_chromium.GetOutputDirectory(), 'out') | |
25 | |
26 @mock.patch('os.environ', {'GYP_GENERATOR_FLAGS': 'output_dir=envfoo'}) | |
27 @mock.patch('sys.argv', [__file__]) | |
28 def testEnvironment(self): | |
29 self.assertEqual(gyp_chromium.GetOutputDirectory(), 'envfoo') | |
30 | |
31 @mock.patch('os.environ', {'GYP_GENERATOR_FLAGS': 'output_dir=envfoo'}) | |
32 @mock.patch('sys.argv', [__file__, '-Goutput_dir=cmdfoo']) | |
33 def testGFlagOverridesEnv(self): | |
34 self.assertEqual(gyp_chromium.GetOutputDirectory(), 'cmdfoo') | |
35 | |
36 @mock.patch('os.environ', {}) | |
37 @mock.patch('sys.argv', [__file__, '-G', 'output_dir=foo']) | |
38 def testGFlagWithSpace(self): | |
39 self.assertEqual(gyp_chromium.GetOutputDirectory(), 'foo') | |
40 | |
41 | |
42 class TestGetGypVars(unittest.TestCase): | |
43 @mock.patch('os.environ', {}) | |
44 def testDefault(self): | |
45 self.assertEqual(gyp_chromium.GetGypVars([]), {}) | |
46 | |
47 @mock.patch('os.environ', {}) | |
48 @mock.patch('sys.argv', [__file__, '-D', 'foo=bar']) | |
49 def testDFlags(self): | |
50 self.assertEqual(gyp_chromium.GetGypVars([]), {'foo': 'bar'}) | |
51 | |
52 @mock.patch('os.environ', {}) | |
53 @mock.patch('sys.argv', [__file__, '-D', 'foo']) | |
54 def testDFlagsNoValue(self): | |
55 self.assertEqual(gyp_chromium.GetGypVars([]), {'foo': '1'}) | |
56 | |
57 @mock.patch('os.environ', {}) | |
58 @mock.patch('sys.argv', [__file__, '-D', 'foo=bar', '-Dbaz']) | |
59 def testDFlagMulti(self): | |
60 self.assertEqual(gyp_chromium.GetGypVars([]), {'foo': 'bar', 'baz': '1'}) | |
61 | |
62 | |
63 if __name__ == '__main__': | |
64 unittest.main() | |
OLD | NEW |