Source code for bmtk.tests.builder.auxi.test_edge_connectors

import pytest
import numpy as np

from bmtk.builder.auxi.edge_connectors import distance_connector, connect_random


[docs] class MockNode(object): def __init__(self, node_id, **node_params): self.node_id = node_id self.node_params = node_params def __getitem__(self, item): return self.node_params[item]
[docs] def test_distance_connector(): np.random.seed(1) # Avoids self connections n1 = MockNode(0, positions=[0.0, 0.0, 1.0]) nsyns = distance_connector(source=n1, target=n1, d_weight_min=1.0, d_weight_max=100.0, d_max=1.0, nsyn_min=5, nsyn_max=10) assert(nsyns is None) # distance is too great n1 = MockNode(0, positions=[1.0, 1.0, 0.0]) n2 = MockNode(1, positions=[-1.0, -1.0, 0.0]) nsyns = distance_connector(source=n1, target=n2, d_weight_min=1.0, d_weight_max=100.0, d_max=1.0, nsyn_min=5, nsyn_max=10) assert(nsyns is None) n1 = MockNode(0, positions=[0.3, 1.0, 0.0]) n2 = MockNode(1, positions=[0.5, 1.0, 0.0]) nsyns = distance_connector(source=n1, target=n2, d_weight_min=1.0, d_weight_max=100.0, d_max=1.0, nsyn_min=5, nsyn_max=10) assert(10 >= nsyns >= 5)
[docs] def test_connect_random(): np.random.seed(1) n1 = MockNode(node_id=0) n2 = MockNode(node_id=1) nsyns = connect_random(source=n1, target=n2, nsyn_min=5, nsyn_max=10) assert (10 >= nsyns >= 5)
if __name__ == '__main__': # test_distance_connector() test_connect_random()