def METHOD_NAME():
    def _run_hnn_core_fixture(backend=None, n_procs=None, n_jobs=1,
                              reduced=False, record_vsec=False,
                              record_isec=False, postproc=False,
                              electrode_array=None):
        hnn_core_root = op.dirname(hnn_core.__file__)
        # default params
        params_fname = op.join(hnn_core_root, 'param', 'default.json')
        params = read_params(params_fname)
        tstop = 170.
        legacy_mode = True
        if reduced:
            params.update({'N_pyr_x': 3,
                           'N_pyr_y': 3,
                           't_evprox_1': 5,
                           't_evdist_1': 10,
                           't_evprox_2': 20,
                           'N_trials': 2})
            tstop = 40.
            legacy_mode = False
        # Legacy mode necessary for exact dipole comparison test
        net = jones_2009_model(params, add_drives_from_params=True,
                               legacy_mode=legacy_mode)
        if electrode_array is not None:
            for name, positions in electrode_array.items():
                net.add_electrode_array(name, positions)
        if backend == 'mpi':
            with MPIBackend(n_procs=n_procs, mpi_cmd='mpiexec'):
                dpls = simulate_dipole(net, record_vsec=record_vsec,
                                       record_isec=record_isec,
                                       postproc=postproc, tstop=tstop)
        elif backend == 'joblib':
            with JoblibBackend(n_jobs=n_jobs):
                dpls = simulate_dipole(net, record_vsec=record_vsec,
                                       record_isec=record_isec,
                                       postproc=postproc, tstop=tstop)
        else:
            dpls = simulate_dipole(net, record_vsec=record_vsec,
                                   record_isec=record_isec,
                                   postproc=postproc, tstop=tstop)
        # check that the network object is picklable after the simulation
        pickle.dumps(net)
        # number of trials simulated
        for drive in net.external_drives.values():
            assert len(drive['events']) == params['N_trials']
        return dpls, net
    return _run_hnn_core_fixture