python: Explicitly specify the encoding when opening files
This commit is contained in:
@@ -155,7 +155,7 @@ def extract_linked_libraries(library_name: str, prefix: str) -> tuple:
|
||||
linked_libs = []
|
||||
# First discover which 3rd-party libraries are used by the current module
|
||||
try:
|
||||
with open(os.path.abspath(library_path), "rb") as f:
|
||||
with open(os.path.abspath(library_path), "rb", encoding="utf-8") as f:
|
||||
linked_libs = re.findall(b"\x00(lib.*?.%b)" % LIBRARY_EXTENSION.encode("utf-8"), f.read())
|
||||
except Exception as e:
|
||||
print("Failed to extract libraries used by {library} with exception:{exception}"
|
||||
|
||||
@@ -12,7 +12,7 @@ import os
|
||||
import codecs
|
||||
|
||||
def dump_pickles(out, dirname, filename, path):
|
||||
f = open(os.path.join(dirname, filename), 'r')
|
||||
f = open(os.path.join(dirname, filename), 'r', encoding='utf-8')
|
||||
data = pickle.load(f)
|
||||
fragment_file = codecs.open(data['current_page_name'] + '.frag', mode='w', encoding='utf-8')
|
||||
fragment_file.write(data['body'])
|
||||
|
||||
@@ -12,7 +12,7 @@ import os
|
||||
import codecs
|
||||
|
||||
def dump_pickles(out, dirname, filename, path):
|
||||
f = open(os.path.join(dirname, filename), 'r')
|
||||
f = open(os.path.join(dirname, filename), 'r', encoding='utf-8')
|
||||
data = pickle.load(f)
|
||||
fragment_file = codecs.open(data['current_page_name'] + '.frag', mode='w', encoding='utf-8')
|
||||
fragment_file.write(data['body'])
|
||||
|
||||
@@ -179,7 +179,7 @@ class Simulation(object):
|
||||
|
||||
|
||||
def main(argv):
|
||||
file_obj = open(argv[1])
|
||||
file_obj = open(argv[1], encoding="utf-8")
|
||||
print("Reading XML file ", end=" ")
|
||||
|
||||
sys.stdout.flush()
|
||||
|
||||
@@ -438,7 +438,7 @@ def print_cplusplus_map_from_fit_results(fit: pd.DataFrame, out_fname: str):
|
||||
out_str = out_str[0:-2]
|
||||
out_str += '}\n'
|
||||
|
||||
f = open(out_fname, "w")
|
||||
f = open(out_fname, "w", encoding="utf-8")
|
||||
f.write(out_str)
|
||||
f.close()
|
||||
|
||||
@@ -499,7 +499,7 @@ if __name__ == '__main__':
|
||||
res = joblib.Parallel(n_jobs=10)(
|
||||
joblib.delayed(fit_ftr_to_reference)(df, params_comb, num_search_grid_params, num_refinements) for params_comb in product(scenarios, is_los, frequencies))
|
||||
|
||||
f = open(fit_out_fname, "w")
|
||||
f = open(fit_out_fname, "w", encoding="utf-8")
|
||||
f.write("scen\tcond\tfc\tsigma\tk\tdelta\tm\n")
|
||||
for line in res:
|
||||
f.write(line)
|
||||
|
||||
@@ -129,7 +129,7 @@ ack_rates_160MHz = [6e6, 12e6, 12e6, 24e6, 24e6, 24e6, 24e6, 24e6, 24e6, 24e6, 2
|
||||
k = 1
|
||||
|
||||
difs = 1
|
||||
fo = open("bianchi_11ax_difs.txt", "w")
|
||||
fo = open("bianchi_11ax_difs.txt", "w", encoding="utf-8")
|
||||
for i in range(len(data_rates_20MHz)):
|
||||
bianchi_result = bianchi_ax(data_rates_20MHz[i], ack_rates_20MHz[i], k, difs)
|
||||
str_s = str_result(bianchi_result, i, 20)
|
||||
@@ -149,7 +149,7 @@ for i in range(len(data_rates_160MHz)):
|
||||
fo.close()
|
||||
|
||||
difs = 0
|
||||
fo = open("bianchi_11ax_eifs.txt", "w")
|
||||
fo = open("bianchi_11ax_eifs.txt", "w", encoding="utf-8")
|
||||
for i in range(len(data_rates_20MHz)):
|
||||
bianchi_result = bianchi_ax(data_rates_20MHz[i], ack_rates_20MHz[i], k, difs)
|
||||
str_s = str_result(bianchi_result, i, 20)
|
||||
|
||||
20
test.py
20
test.py
@@ -277,7 +277,7 @@ def translate_to_text(results_file, text_file):
|
||||
import xml.etree.ElementTree as ET
|
||||
et = ET.parse(results_file)
|
||||
|
||||
with open(text_file, 'w') as f:
|
||||
with open(text_file, 'w', encoding='utf-8') as f:
|
||||
for test in et.findall('Test'):
|
||||
node_to_text(test, f)
|
||||
|
||||
@@ -303,7 +303,7 @@ def translate_to_html(results_file, html_file):
|
||||
html_file += '.html'
|
||||
print('Writing results to html file %s...' % html_file, end='')
|
||||
|
||||
with open(html_file, 'w') as f:
|
||||
with open(html_file, 'w', encoding='utf-8') as f:
|
||||
f.write("<html>\n")
|
||||
f.write("<body>\n")
|
||||
f.write("<center><h1>ns-3 Test Results</h1></center>\n")
|
||||
@@ -596,7 +596,7 @@ def read_ns3_config():
|
||||
f = None
|
||||
try:
|
||||
# sys.platform reports linux2 for python2 and linux for python3
|
||||
f = open(lock_filename, "rt")
|
||||
f = open(lock_filename, "rt", encoding="utf-8")
|
||||
except FileNotFoundError:
|
||||
print('The .lock-ns3 file was not found. You must configure before running test.py.', file=sys.stderr)
|
||||
sys.exit(2)
|
||||
@@ -616,7 +616,7 @@ def read_ns3_config():
|
||||
global NS3_BUILDDIR
|
||||
NS3_BUILDDIR = out_dir
|
||||
|
||||
with open(lock_filename) as f:
|
||||
with open(lock_filename, encoding='utf-8') as f:
|
||||
for line in f.readlines():
|
||||
for item in interesting_config_items:
|
||||
if line.startswith(item):
|
||||
@@ -1296,7 +1296,7 @@ def run_tests():
|
||||
# do this since the tests will just append individual results to this file.
|
||||
#
|
||||
xml_results_file = os.path.join(testpy_output_dir, "results.xml")
|
||||
with open(xml_results_file, 'w') as f:
|
||||
with open(xml_results_file, 'w', encoding='utf-8') as f:
|
||||
f.write('<?xml version="1.0"?>\n')
|
||||
f.write('<Results>\n')
|
||||
|
||||
@@ -1768,7 +1768,7 @@ def run_tests():
|
||||
# XXX We could add some timing information to the examples, i.e. run
|
||||
# them through time and print the results here.
|
||||
#
|
||||
with open(xml_results_file, 'a') as f:
|
||||
with open(xml_results_file, 'a', encoding='utf-8') as f:
|
||||
f.write('<Example>\n')
|
||||
example_name = " <Name>%s</Name>\n" % job.display_name
|
||||
f.write(example_name)
|
||||
@@ -1833,7 +1833,7 @@ def run_tests():
|
||||
# followed by a VALGR failing test suite of the same name.
|
||||
#
|
||||
if job.is_skip:
|
||||
with open(xml_results_file, 'a') as f:
|
||||
with open(xml_results_file, 'a', encoding='utf-8') as f:
|
||||
f.write("<Test>\n")
|
||||
f.write(" <Name>%s</Name>\n" % job.display_name)
|
||||
f.write(' <Result>SKIP</Result>\n')
|
||||
@@ -1841,10 +1841,10 @@ def run_tests():
|
||||
f.write("</Test>\n")
|
||||
else:
|
||||
if job.returncode == 0 or job.returncode == 1 or job.returncode == 2:
|
||||
with open(xml_results_file, 'a') as f_to, open(job.tmp_file_name) as f_from:
|
||||
with open(xml_results_file, 'a', encoding='utf-8') as f_to, open(job.tmp_file_name, encoding='utf-8') as f_from:
|
||||
f_to.write(f_from.read())
|
||||
else:
|
||||
with open(xml_results_file, 'a') as f:
|
||||
with open(xml_results_file, 'a', encoding='utf-8') as f:
|
||||
f.write("<Test>\n")
|
||||
f.write(" <Name>%s</Name>\n" % job.display_name)
|
||||
f.write(' <Result>CRASH</Result>\n')
|
||||
@@ -1864,7 +1864,7 @@ def run_tests():
|
||||
# individual pieces. So, we need to finish off and close out the XML
|
||||
# document
|
||||
#
|
||||
with open(xml_results_file, 'a') as f:
|
||||
with open(xml_results_file, 'a', encoding='utf-8') as f:
|
||||
f.write('</Results>\n')
|
||||
|
||||
#
|
||||
|
||||
4
utils.py
4
utils.py
@@ -20,7 +20,7 @@ def get_list_from_file(file_path, list_name):
|
||||
|
||||
# Read in the file if it exists.
|
||||
if os.path.exists(file_path):
|
||||
with open(file_path, "r") as file_in:
|
||||
with open(file_path, "r", encoding="utf-8") as file_in:
|
||||
|
||||
# Look for the list.
|
||||
list_string = ""
|
||||
@@ -58,7 +58,7 @@ def get_bool_from_file(file_path, bool_name, value_if_missing):
|
||||
|
||||
# Read in the file if it exists.
|
||||
if os.path.exists(file_path):
|
||||
with open(file_path, "r") as file_in:
|
||||
with open(file_path, "r", encoding="utf-8") as file_in:
|
||||
|
||||
# Look for the boolean variable.
|
||||
bool_found = False
|
||||
|
||||
@@ -336,7 +336,7 @@ def create_file(path, template, **kwargs):
|
||||
artifact_path = Path(path)
|
||||
|
||||
#open file for (w)rite and in (t)ext mode
|
||||
with artifact_path.open("wt") as f:
|
||||
with artifact_path.open("wt", encoding="utf-8") as f:
|
||||
f.write(template.format(**kwargs))
|
||||
|
||||
|
||||
|
||||
@@ -1608,7 +1608,7 @@ def read_data(filename):
|
||||
m3 = re.compile('event-int ([^ ]+) ([^ ]+) ([0-9]+) ([0-9]+)')
|
||||
m4 = re.compile('color ([^ ]+) #([a-fA-F0-9]{2,2})([a-fA-F0-9]{2,2})([a-fA-F0-9]{2,2})')
|
||||
|
||||
with open(filename) as fh:
|
||||
with open(filename, encoding='utf-8') as fh:
|
||||
for line in fh.readlines():
|
||||
m = m1.match(line)
|
||||
if m:
|
||||
|
||||
@@ -121,9 +121,9 @@ class TestBaseClass:
|
||||
passed = 0
|
||||
progress = 0.0
|
||||
failed_cases = []
|
||||
with open(self.options.out_file, 'w') as out:
|
||||
with open(self.options.out_file, 'w', encoding='utf-8') as out:
|
||||
outstream = out
|
||||
with open(os.devnull, 'w') as sink:
|
||||
with open(os.devnull, 'w', encoding='utf-8') as sink:
|
||||
if self.options.mute:
|
||||
outstream = sink
|
||||
for cmd in cmds:
|
||||
|
||||
@@ -126,7 +126,7 @@ def get_programs_list():
|
||||
@return list of programs.
|
||||
"""
|
||||
values = {}
|
||||
with open(ns3_lock_filename) as f:
|
||||
with open(ns3_lock_filename, encoding="utf-8") as f:
|
||||
exec(f.read(), globals(), values)
|
||||
|
||||
programs_list = values["ns3_runnable_programs"]
|
||||
@@ -163,7 +163,7 @@ def read_lock_entry(entry):
|
||||
@return value of the requested entry.
|
||||
"""
|
||||
values = {}
|
||||
with open(ns3_lock_filename) as f:
|
||||
with open(ns3_lock_filename, encoding="utf-8") as f:
|
||||
exec(f.read(), globals(), values)
|
||||
return values.get(entry, None)
|
||||
|
||||
@@ -206,7 +206,7 @@ class DockerContainerManager:
|
||||
currentTestCase.skipTest("python-on-whales was not found")
|
||||
|
||||
# Import rootless docker settings from .bashrc
|
||||
with open(os.path.expanduser("~/.bashrc"), "r") as f:
|
||||
with open(os.path.expanduser("~/.bashrc"), "r", encoding="utf-8") as f:
|
||||
docker_settings = re.findall("(DOCKER_.*=.*)", f.read())
|
||||
for setting in docker_settings:
|
||||
key, value = setting.split("=")
|
||||
@@ -285,7 +285,7 @@ class NS3UnusedSourcesTestCase(unittest.TestCase):
|
||||
continue
|
||||
|
||||
# Open the examples CMakeLists.txt and read it
|
||||
with open(os.path.join(example_directory, "CMakeLists.txt"), "r") as f:
|
||||
with open(os.path.join(example_directory, "CMakeLists.txt"), "r", encoding="utf-8") as f:
|
||||
cmake_contents = f.read()
|
||||
|
||||
# For each file, check if it is in the CMake contents
|
||||
@@ -319,7 +319,7 @@ class NS3UnusedSourcesTestCase(unittest.TestCase):
|
||||
cmake_path = os.path.join(parent_directory, os.path.basename(cmake_path))
|
||||
|
||||
# Open the module CMakeLists.txt and read it
|
||||
with open(cmake_path, "r") as f:
|
||||
with open(cmake_path, "r", encoding="utf-8") as f:
|
||||
cmake_contents = f.read()
|
||||
|
||||
# For each file, check if it is in the CMake contents
|
||||
@@ -358,7 +358,7 @@ class NS3UnusedSourcesTestCase(unittest.TestCase):
|
||||
cmake_path = os.path.join(parent_directory, os.path.basename(cmake_path))
|
||||
|
||||
# Open the module CMakeLists.txt and read it
|
||||
with open(cmake_path, "r") as f:
|
||||
with open(cmake_path, "r", encoding="utf-8") as f:
|
||||
cmake_contents = f.read()
|
||||
|
||||
# For each file, check if it is in the CMake contents
|
||||
@@ -389,7 +389,7 @@ class NS3DependenciesTestCase(unittest.TestCase):
|
||||
for path in module_paths:
|
||||
# Open the module CMakeLists.txt and read it
|
||||
cmake_path = os.path.join(path, "CMakeLists.txt")
|
||||
with open(cmake_path, "r") as f:
|
||||
with open(cmake_path, "r", encoding="utf-8") as f:
|
||||
cmake_contents = f.readlines()
|
||||
|
||||
module_name = os.path.relpath(path, ns3_path)
|
||||
@@ -957,7 +957,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
ns3rc_template = ns3rc_str(ns3rc_type)
|
||||
|
||||
# Now we repeat the command line tests but with the ns3rc file.
|
||||
with open(ns3rc_script, "w") as f:
|
||||
with open(ns3rc_script, "w", encoding="utf-8") as f:
|
||||
f.write(ns3rc_template.format(modules="'lte'", examples="False", tests="True"))
|
||||
|
||||
# Reconfigure.
|
||||
@@ -972,7 +972,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
self.assertLessEqual(len(get_programs_list()), len(self.ns3_executables))
|
||||
|
||||
# Replace the ns3rc file with the wifi module, enabling examples and disabling tests
|
||||
with open(ns3rc_script, "w") as f:
|
||||
with open(ns3rc_script, "w", encoding="utf-8") as f:
|
||||
f.write(ns3rc_template.format(modules="'wifi'", examples="True", tests="False"))
|
||||
|
||||
# Reconfigure
|
||||
@@ -987,7 +987,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
self.assertGreater(len(get_programs_list()), len(self.ns3_executables))
|
||||
|
||||
# Replace the ns3rc file with multiple modules
|
||||
with open(ns3rc_script, "w") as f:
|
||||
with open(ns3rc_script, "w", encoding="utf-8") as f:
|
||||
f.write(ns3rc_template.format(modules="'core','network'", examples="True", tests="False"))
|
||||
|
||||
# Reconfigure
|
||||
@@ -1004,7 +1004,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
|
||||
# Replace the ns3rc file with multiple modules,
|
||||
# in various different ways and with comments
|
||||
with open(ns3rc_script, "w") as f:
|
||||
with open(ns3rc_script, "w", encoding="utf-8") as f:
|
||||
if ns3rc_type == "python":
|
||||
f.write(ns3rc_template.format(modules="""'core', #comment
|
||||
'lte',
|
||||
@@ -1126,7 +1126,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
|
||||
# Cause a sigsegv
|
||||
sigsegv_example = os.path.join(ns3_path, "scratch", "sigsegv.cc")
|
||||
with open(sigsegv_example, "w") as f:
|
||||
with open(sigsegv_example, "w", encoding="utf-8") as f:
|
||||
f.write("""
|
||||
int main (int argc, char *argv[])
|
||||
{
|
||||
@@ -1144,7 +1144,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
|
||||
# Cause an abort
|
||||
abort_example = os.path.join(ns3_path, "scratch", "abort.cc")
|
||||
with open(abort_example, "w") as f:
|
||||
with open(abort_example, "w", encoding="utf-8") as f:
|
||||
f.write("""
|
||||
#include "ns3/core-module.h"
|
||||
|
||||
@@ -1217,7 +1217,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
for path in test_files + backup_files:
|
||||
filepath = os.path.join(ns3_path, path)
|
||||
os.makedirs(os.path.dirname(filepath), exist_ok=True)
|
||||
with open(filepath, "w") as f:
|
||||
with open(filepath, "w", encoding="utf-8") as f:
|
||||
if "main" in path:
|
||||
f.write("int main (int argc, char *argv[]){}")
|
||||
else:
|
||||
@@ -1358,10 +1358,10 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
os.makedirs("contrib/borked/examples", exist_ok=True)
|
||||
|
||||
# Test if configuration succeeds and building the module library fails
|
||||
with open("contrib/borked/examples/CMakeLists.txt", "w") as f:
|
||||
with open("contrib/borked/examples/CMakeLists.txt", "w", encoding="utf-8") as f:
|
||||
f.write("")
|
||||
for invalid_or_nonexistent_library in ["", "gsd", "lib", "libfi", "calibre"]:
|
||||
with open("contrib/borked/CMakeLists.txt", "w") as f:
|
||||
with open("contrib/borked/CMakeLists.txt", "w", encoding="utf-8") as f:
|
||||
f.write("""
|
||||
build_lib(
|
||||
LIBNAME borked
|
||||
@@ -1400,7 +1400,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
# - no additional library (should work)
|
||||
# - invalid library names (should fail to configure)
|
||||
# - valid library names but nonexistent libraries (should not create a target)
|
||||
with open("contrib/borked/CMakeLists.txt", "w") as f:
|
||||
with open("contrib/borked/CMakeLists.txt", "w", encoding="utf-8") as f:
|
||||
f.write("""
|
||||
build_lib(
|
||||
LIBNAME borked
|
||||
@@ -1409,7 +1409,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
)
|
||||
""")
|
||||
for invalid_or_nonexistent_library in ["", "gsd", "lib", "libfi", "calibre"]:
|
||||
with open("contrib/borked/examples/CMakeLists.txt", "w") as f:
|
||||
with open("contrib/borked/examples/CMakeLists.txt", "w", encoding="utf-8") as f:
|
||||
f.write("""
|
||||
build_lib_example(
|
||||
NAME borked-example
|
||||
@@ -1452,9 +1452,9 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
os.makedirs("contrib/calibre/examples", exist_ok=True)
|
||||
|
||||
# Now test if we can have a library with "lib" in it
|
||||
with open("contrib/calibre/examples/CMakeLists.txt", "w") as f:
|
||||
with open("contrib/calibre/examples/CMakeLists.txt", "w", encoding="utf-8") as f:
|
||||
f.write("")
|
||||
with open("contrib/calibre/CMakeLists.txt", "w") as f:
|
||||
with open("contrib/calibre/CMakeLists.txt", "w", encoding="utf-8") as f:
|
||||
f.write("""
|
||||
build_lib(
|
||||
LIBNAME calibre
|
||||
@@ -1539,7 +1539,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
"VERSION_TAG_DISTANCE = '0'\n"
|
||||
"VERSION_BUILD_PROFILE = 'debug'\n"
|
||||
)
|
||||
with open(version_cache_file, "w") as version:
|
||||
with open(version_cache_file, "w", encoding="utf-8") as version:
|
||||
version.write(version_cache_contents)
|
||||
|
||||
# Configuration should now succeed
|
||||
@@ -1549,7 +1549,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
self.assertTrue(os.path.exists(os.path.join(ns3_path, "cmake-cache", "build.ninja")))
|
||||
|
||||
# And contents of version cache should be unchanged
|
||||
with open(version_cache_file, "r") as version:
|
||||
with open(version_cache_file, "r", encoding="utf-8") as version:
|
||||
self.assertEqual(version.read(), version_cache_contents)
|
||||
|
||||
# Third case: we rename the .git directory temporarily and reconfigure
|
||||
@@ -1571,7 +1571,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
container.execute("./ns3 configure -G Ninja --enable-build-version")
|
||||
container.execute("./ns3 build core")
|
||||
self.assertTrue(os.path.exists(os.path.join(ns3_path, "cmake-cache", "build.ninja")))
|
||||
with open(version_cache_file, "r") as version:
|
||||
with open(version_cache_file, "r", encoding="utf-8") as version:
|
||||
self.assertNotEqual(version.read(), version_cache_contents)
|
||||
|
||||
# Remove version cache file if it exists
|
||||
@@ -1638,7 +1638,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
|
||||
# Check if configuration properly detected lld
|
||||
self.assertTrue(os.path.exists(os.path.join(ns3_path, "cmake-cache", "build.ninja")))
|
||||
with open(os.path.join(ns3_path, "cmake-cache", "build.ninja"), "r") as f:
|
||||
with open(os.path.join(ns3_path, "cmake-cache", "build.ninja"), "r", encoding="utf-8") as f:
|
||||
self.assertIn("-fuse-ld=lld", f.read())
|
||||
|
||||
# Try to build using the lld linker
|
||||
@@ -1659,7 +1659,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
|
||||
# Check if configuration properly detected mold
|
||||
self.assertTrue(os.path.exists(os.path.join(ns3_path, "cmake-cache", "build.ninja")))
|
||||
with open(os.path.join(ns3_path, "cmake-cache", "build.ninja"), "r") as f:
|
||||
with open(os.path.join(ns3_path, "cmake-cache", "build.ninja"), "r", encoding="utf-8") as f:
|
||||
self.assertIn("-fuse-ld=mold", f.read())
|
||||
|
||||
# Try to build using the lld linker
|
||||
@@ -1676,7 +1676,7 @@ class NS3ConfigureTestCase(NS3BaseTestCase):
|
||||
|
||||
# Check if configuration properly disabled lld/mold usage
|
||||
self.assertTrue(os.path.exists(os.path.join(ns3_path, "cmake-cache", "build.ninja")))
|
||||
with open(os.path.join(ns3_path, "cmake-cache", "build.ninja"), "r") as f:
|
||||
with open(os.path.join(ns3_path, "cmake-cache", "build.ninja"), "r", encoding="utf-8") as f:
|
||||
self.assertNotIn("-fuse-ld=mold", f.read())
|
||||
|
||||
def test_21_ClangTimeTrace(self):
|
||||
@@ -1958,7 +1958,7 @@ class NS3BuildBaseTestCase(NS3BaseTestCase):
|
||||
self.ns3_libraries = get_libraries_list()
|
||||
|
||||
version_file = os.sep.join([ns3_path, "VERSION"])
|
||||
with open(version_file, "w") as f:
|
||||
with open(version_file, "w", encoding="utf-8") as f:
|
||||
f.write("3-00\n")
|
||||
|
||||
# Reconfigure.
|
||||
@@ -1990,7 +1990,7 @@ class NS3BuildBaseTestCase(NS3BaseTestCase):
|
||||
self.assertTrue(os.path.exists(library))
|
||||
|
||||
# Restore version file.
|
||||
with open(version_file, "w") as f:
|
||||
with open(version_file, "w", encoding="utf-8") as f:
|
||||
f.write("3-dev\n")
|
||||
|
||||
def test_07_OutputDirectory(self):
|
||||
@@ -2077,7 +2077,7 @@ class NS3BuildBaseTestCase(NS3BaseTestCase):
|
||||
|
||||
# 3-dev version format is not supported by CMake, so we use 3.01.
|
||||
version_file = os.sep.join([ns3_path, "VERSION"])
|
||||
with open(version_file, "w") as f:
|
||||
with open(version_file, "w", encoding="utf-8") as f:
|
||||
f.write("3-01\n")
|
||||
|
||||
# Reconfigure setting the installation folder to ns-3-dev/build/install.
|
||||
@@ -2113,7 +2113,7 @@ class NS3BuildBaseTestCase(NS3BaseTestCase):
|
||||
|
||||
# Now create a test CMake project and try to find_package ns-3.
|
||||
test_main_file = os.sep.join([install_prefix, "main.cpp"])
|
||||
with open(test_main_file, "w") as f:
|
||||
with open(test_main_file, "w", encoding="utf-8") as f:
|
||||
f.write("""
|
||||
#include <ns3/core-module.h>
|
||||
using namespace ns3;
|
||||
@@ -2163,7 +2163,7 @@ class NS3BuildBaseTestCase(NS3BaseTestCase):
|
||||
""" + import_method
|
||||
|
||||
test_cmake_project_file = os.sep.join([install_prefix, "CMakeLists.txt"])
|
||||
with open(test_cmake_project_file, "w") as f:
|
||||
with open(test_cmake_project_file, "w", encoding="utf-8") as f:
|
||||
f.write(test_cmake_project)
|
||||
|
||||
# Configure the test project
|
||||
@@ -2215,7 +2215,7 @@ class NS3BuildBaseTestCase(NS3BaseTestCase):
|
||||
|
||||
# Restore 3-dev version file
|
||||
os.remove(version_file)
|
||||
with open(version_file, "w") as f:
|
||||
with open(version_file, "w", encoding="utf-8") as f:
|
||||
f.write("3-dev\n")
|
||||
|
||||
def test_09_Scratches(self):
|
||||
@@ -2999,7 +2999,7 @@ class NS3QualityControlTestCase(unittest.TestCase):
|
||||
continue
|
||||
|
||||
try:
|
||||
with open(filepath, "r") as f:
|
||||
with open(filepath, "r", encoding="utf-8") as f:
|
||||
matches = regex.findall(f.read())
|
||||
|
||||
# Get first group for each match (containing the URL)
|
||||
|
||||
Reference in New Issue
Block a user