def test_literal(): con_fnc = connector.create(connector=100.0) assert (con_fnc() == 100.0) con_fnc1 = connector.create( connector=101.0, a=10, b='10') # parameters in literals should be ignored assert (con_fnc1() == 101.0)
def test_list(): con_fnc = connector.create(connector=['a', 'b', 'c']) assert (con_fnc == ['a', 'b', 'c']) con_fnc1 = connector.create(connector=[100, 200, 300], p1=1, p2='2', p34=(3, 4)) assert (con_fnc1 == [100, 200, 300])
def test_all2one_list(net): vals = [v.node_id for v in net.nodes(ei='i')] conr = connector.create(vals) itr = iterator.create('all_to_one', conr) for v in itr(net.nodes(ei='i'), net.nodes(ei='e'), conr): src_id, trg_id, val = v assert (src_id == val)
def test_one2all_list(): net = network() vals = [v.node_id for v in net.nodes(ei='e')] conr = connector.create(vals) itr = iterator.create('one_to_all', conr) for v in itr(net.nodes(ei='i'), net.nodes(ei='e'), conr): src_id, trg_id, val = v assert(trg_id == val)
def test_one2one_list(): net = network() vals = [s.node_id*t.node_id for s,t in itertools.product(net.nodes(ei='i'), net.nodes(ei='e'))] conr = connector.create(vals) itr = iterator.create('one_to_one', conr) for v in itr(net.nodes(ei='i'), net.nodes(ei='e'), conr): src_id, trg_id, val = v assert(src_id*trg_id == val)
def test_dict(): con_fnc = connector.create(connector={'a': 1, 'b': 'b', 'c': [5, 6]}) assert ('a' in con_fnc()) assert ('b' in con_fnc()) assert ('c' in con_fnc()) con_fnc = connector.create(connector={ 'a': 1, 'b': 'b', 'c': [5, 6] }, p1='p1', p2=2) assert ('a' in con_fnc()) assert ('b' in con_fnc()) assert ('c' in con_fnc()) #test_dict() #test_connector_fnc_params() #test_connector_fnc_noparams()
def test_literal(net): conr = connector.create(100) itr = iterator.create('one_to_one', conr) count = 0 for v in itr(net.nodes(ei='i'), net.nodes(ei='e'), conr): src_id, trg_id, val = v assert (src_id < 100) assert (trg_id >= 100) assert (val == 100) count += 1 assert (count == 5000)
def test_dict(net): conr = connector.create({'nsyn': 10, 'target': 'axon'}) itr = iterator.create('one_to_one', conr) count = 0 for v in itr(net.nodes(ei='i'), net.nodes(ei='e'), conr): src_id, trg_id, val = v assert (src_id < 100) assert (trg_id >= 100) assert (val['nsyn'] == 10) assert (val['target'] == 'axon') count += 1 assert (count == 5000)
def test_one2one_fnc(net): def connector_fnc(s, t): assert (s['ei'] == 'i') assert (t['ei'] == 'e') return '100' conr = connector.create(connector_fnc) itr = iterator.create('one_to_one', conr) count = 0 for v in itr(net.nodes(ei='i'), net.nodes(ei='e'), conr): src_id, trg_id, val = v assert (src_id < 100) assert (trg_id >= 100) assert (val == '100') count += 1 assert (count == 100 * 50)
def test_all2one_fnc(net): def connector_fnc(ss, t): assert (isinstance(t, Node)) assert (t['ei'] == 'e') assert (len(ss) == 100) return [100] * 100 conr = connector.create(connector_fnc) itr = iterator.create('all_to_one', conr) count = 0 for v in itr(net.nodes(ei='i'), net.nodes(ei='e'), conr): src_id, trg_id, val = v assert (src_id < 100) assert (trg_id >= 100) assert (val == 100) count += 1 assert (count == 5000)
def test_one2all_fnc(): def connector_fnc(s, ts): assert(isinstance(s, Node)) assert(s['ei'] == 'i') assert(len(ts) == 50) return [100]*50 net = network() conr = connector.create(connector_fnc) itr = iterator.create('one_to_all', conr) count = 0 for v in itr(net.nodes(ei='i'), net.nodes(ei='e'), conr): src_id, trg_id, val = v assert(src_id < 100) assert(trg_id >= 100) assert(val == 100) count += 1 assert(count == 5000)
def test_fnc_noparams(): con_fnc = connector.create(connector=lambda x, p, a: x**p + a, a=10) assert (con_fnc(2, 3) == 2**3 + 10)
def test_fnc_params(): con_fnc = connector.create(connector=lambda x, p: x**p) assert (con_fnc(2, 3) == 2**3)