

def write_test_serialisation(self, tests, datafile):
    arr = []
    for t in tests:
        exe = t.get_exe()
        if isinstance(exe, dependencies.ExternalProgram):
            fname = exe.fullpath
        else:
            fname = [os.path.join(self.environment.get_build_dir(), self.get_target_filename(t.get_exe()))]
        is_cross = (self.environment.is_cross_build() and self.environment.cross_info.need_cross_compiler())
        if is_cross:
            exe_wrapper = self.environment.cross_info.config['binaries'].get('exe_wrapper', None)
        else:
            exe_wrapper = None
        if mesonlib.is_windows():
            extra_paths = self.determine_windows_extra_paths(exe)
        else:
            extra_paths = []
        cmd_args = []
        for a in t.cmd_args:
            if isinstance(a, mesonlib.File):
                a = os.path.join(self.environment.get_build_dir(), a.rel_to_builddir(self.build_to_src))
            cmd_args.append(a)
        ts = TestSerialisation(t.get_name(), t.suite, fname, is_cross, exe_wrapper, t.is_parallel, cmd_args, t.env, t.should_fail, t.valgrind_args, t.timeout, t.workdir, arr)
        arr.append(ts)
    pickle.dump(arr, datafile)

dataset/ETHPy150Open mesonbuild/meson/mesonbuild/backend/backends.py Backend.write_test_serialisation/VarMisuse@281/364 `extra_paths`->`arr`