def METHOD_NAME():
    p.setup(1.0)
    p.set_number_of_neurons_per_core(p.IF_curr_exp, 3)
    inp = p.Population(10, p.SpikeSourceArray(spike_times=[1.0]),
                       label="SpikeSourceArray")
    out = p.Population(10, p.IF_curr_exp(), label="IF_curr_exp", seed=1235)
    out.record("spikes")
    param_projections = [
        (1.0, 1.0),
        (p.RandomDistribution("uniform", low=1.0, high=10.0), 2.0),
        (3.0, 17.0),
        (4.0, p.RandomDistribution("normal", mu=22.0, sigma=10.0)),
        (5.0, p.RandomDistribution(
            "normal_clipped", mu=22.0, sigma=10.0,
            low=5.0, high=32.0)),
        (6.0, p.RandomDistribution(
            "normal_clipped_to_boundary", mu=12.0, sigma=5.0,
            low=6.0, high=16.0)),
        (7.0, p.RandomDistribution("exponential", beta=5.0)),
    ]
    connectors = [
        (p.OneToOneConnector, functools.partial(check_one_to_one, 10)),
        (p.AllToAllConnector,
         functools.partial(check_all_to_all, 10, True)),
        (functools.partial(p.AllToAllConnector,
                           allow_self_connections=False),
         functools.partial(check_all_to_all, 10, False)),
        (functools.partial(p.FixedProbabilityConnector, 0.5),
         functools.partial(check_fixed_prob, 10, 0.5, 3)),
        (functools.partial(p.FixedTotalNumberConnector, 50,
                           with_replacement=True),
         functools.partial(check_fixed_total, 10, 50)),
        (functools.partial(p.FixedTotalNumberConnector, 20,
                           with_replacement=False),
         functools.partial(check_fixed_total, 10, 20))
    ]
    projs = list()
    for weight, delay in param_projections:
        for connector, check in connectors:
            conn = connector()
            projs.append((
                weight, delay, conn, False, p.Projection(
                    inp, out, conn,
                    p.StaticSynapse(weight=weight, delay=delay)),
                check))
            projs.append((
                weight, delay, conn, True, p.Projection(
                    inp, out, conn,
                    p.STDPMechanism(
                        p.SpikePairRule(), p.AdditiveWeightDependence(),
                        weight=weight, delay=delay)),
                check))
    p.run(10)
    for weight, delay, connector, is_stdp, proj, check in projs:
        try:
            weights = proj.get("weight", "list", with_address=False)
            delays = proj.get("delay", "list", with_address=False)
            conns = proj.get([], "list")
            if not is_stdp:
                check_params(weight, weights)
            check_params(delay, delays)
            check(conns)
        except AssertionError as e:
            print(proj)
            print("Weight:", weight, ":-", weights)
            print("Delay:", delay, ":-", delays)
            p.end()
            raise e
    p.end()