Do not use context managers. Because Windows.

pull/1914/head
Jussi Pakkanen 8 years ago
parent 4ed68e7934
commit de1305c9e8
  1. 25
      run_unittests.py

@ -358,21 +358,28 @@ class InternalTests(unittest.TestCase):
'cpu': '\'armv7\'', 'cpu': '\'armv7\'',
'endian': '\'little\'', 'endian': '\'little\'',
} }
# Can not be used as context manager because we need to
with tempfile.NamedTemporaryFile(mode='w+') as configfile: # open it a second time and this is not possible on
config.write(configfile) # Windows.
configfile.flush() configfile = tempfile.NamedTemporaryFile(mode='w+', delete=False)
detected_value = mesonbuild.environment.CrossBuildInfo(configfile.name).need_exe_wrapper() configfilename = configfile.name
config.write(configfile)
configfile.flush()
configfile.close()
detected_value = mesonbuild.environment.CrossBuildInfo(configfile.name).need_exe_wrapper()
os.unlink(configfilename)
desired_value = not detected_value desired_value = not detected_value
config['properties'] = { config['properties'] = {
'needs_exe_wrapper': 'true' if desired_value else 'false' 'needs_exe_wrapper': 'true' if desired_value else 'false'
} }
with tempfile.NamedTemporaryFile(mode='w+') as configfile: configfile = tempfile.NamedTemporaryFile(mode='w+', delete=False)
config.write(configfile) configfilename = configfile.name
configfile.flush() config.write(configfile)
forced_value = mesonbuild.environment.CrossBuildInfo(configfile.name).need_exe_wrapper() configfile.close()
forced_value = mesonbuild.environment.CrossBuildInfo(configfile.name).need_exe_wrapper()
os.unlink(configfilename)
self.assertEqual(forced_value, desired_value) self.assertEqual(forced_value, desired_value)

Loading…
Cancel
Save