| Index: tests/subprocess2_test.py
|
| diff --git a/tests/subprocess2_test.py b/tests/subprocess2_test.py
|
| index 376a40fb64d2a63450a487787f0fa97fc900c4c3..dfc91f6078e225c348b032a4f7ef5a2f42eb62ca 100755
|
| --- a/tests/subprocess2_test.py
|
| +++ b/tests/subprocess2_test.py
|
| @@ -28,7 +28,7 @@ class Subprocess2Test(unittest.TestCase):
|
|
|
| def setUp(self):
|
| self.exe_path = __file__
|
| - self.exe = [self.exe_path, '--child']
|
| + self.exe = [sys.executable, self.exe_path, '--child']
|
| self.saved = {}
|
| for module, names in self.TO_SAVE.iteritems():
|
| self.saved[module] = dict(
|
| @@ -101,14 +101,20 @@ class Subprocess2Test(unittest.TestCase):
|
| results = self._fake_subprocess_Popen()
|
| proc = subprocess2.Popen(['foo'], a=True)
|
| self.assertEquals(-8, proc.returncode)
|
| - env = os.environ.copy()
|
| - env['LANG'] = 'en_US.UTF-8'
|
| expected = {
|
| 'args': ['foo'],
|
| 'a': True,
|
| 'shell': bool(sys.platform=='win32'),
|
| - 'env': env,
|
| }
|
| + if sys.platform != 'win32':
|
| + env = os.environ.copy()
|
| + is_english = lambda name: env.get(name, 'en').startswith('en')
|
| + if not is_english('LANG'):
|
| + env['LANG'] = 'en_US.UTF-8'
|
| + expected['env'] = env
|
| + if not is_english('LANGUAGE'):
|
| + env['LANGUAGE'] = 'en_US.UTF-8'
|
| + expected['env'] = env
|
| self.assertEquals(expected, results)
|
|
|
| def test_check_output_defaults(self):
|
| @@ -140,12 +146,14 @@ class Subprocess2Test(unittest.TestCase):
|
| self.assertEquals(None, out)
|
| out = subprocess2.check_output(
|
| self.exe + ['--stdout', '--stderr'],
|
| + universal_newlines=True,
|
| stderr=subprocess2.VOID)
|
| self.assertEquals('A\nBB\nCCC\n', out)
|
|
|
| def test_check_output_throw(self):
|
| try:
|
| - subprocess2.check_output(self.exe + ['--fail', '--stderr'])
|
| + subprocess2.check_output(
|
| + self.exe + ['--fail', '--stderr'], universal_newlines=True)
|
| self.fail()
|
| except subprocess2.CalledProcessError, e:
|
| self.assertEquals('a\nbb\nccc\n', e.stdout)
|
|
|