Пример #1
0
def test_register_neurite_feature_nrns():
    def npts(neurite):
        return len(neurite.points)

    def vol(neurite):
        return neurite.volume

    features.register_neurite_feature('foo', npts)

    n_points_ref = [len(n.points) for n in iter_neurites(NRNS)]
    n_points = get_feature('foo', NRNS)
    assert_items_equal(n_points, n_points_ref)

    # test neurite type filtering
    n_points_ref = [
        len(n.points)
        for n in iter_neurites(NRNS, filt=_is_type(NeuriteType.axon))
    ]
    n_points = get_feature('foo', NRNS, neurite_type=NeuriteType.axon)
    assert_items_equal(n_points, n_points_ref)

    features.register_neurite_feature('bar', vol)

    n_volume_ref = [n.volume for n in iter_neurites(NRNS)]
    n_volume = get_feature('bar', NRNS)
    assert_items_equal(n_volume, n_volume_ref)

    # test neurite type filtering
    n_volume_ref = [
        n.volume for n in iter_neurites(NRNS, filt=_is_type(NeuriteType.axon))
    ]
    n_volume = get_feature('bar', NRNS, neurite_type=NeuriteType.axon)
    assert_items_equal(n_volume, n_volume_ref)
Пример #2
0
def test_register_neurite_feature_pop():
    def npts(neurite):
        return len(neurite.points)

    def vol(neurite):
        return neurite.volume

    features.register_neurite_feature('foo', npts)

    n_points_ref = [len(n.points) for n in iter_neurites(POP)]
    n_points = get_feature('foo', POP)
    assert_items_equal(n_points, n_points_ref)

    # test neurite type filtering
    n_points_ref = [
        len(n.points)
        for n in iter_neurites(POP, filt=_is_type(NeuriteType.basal_dendrite))
    ]
    n_points = get_feature('foo', POP, neurite_type=NeuriteType.basal_dendrite)
    assert_items_equal(n_points, n_points_ref)

    features.register_neurite_feature('bar', vol)

    n_volume_ref = [n.volume for n in iter_neurites(POP)]
    n_volume = get_feature('bar', POP)
    assert_items_equal(n_volume, n_volume_ref)

    # test neurite type filtering
    n_volume_ref = [
        n.volume
        for n in iter_neurites(POP, filt=_is_type(NeuriteType.basal_dendrite))
    ]
    n_volume = get_feature('bar', POP, neurite_type=NeuriteType.basal_dendrite)
    assert_items_equal(n_volume, n_volume_ref)
Пример #3
0
def test_register_existing_feature_raises():
    features.register_neurite_feature('total_length', lambda n: None)
Пример #4
0
def test_register_existing_feature_raises():
    with pytest.raises(NeuroMError):
        features.register_neurite_feature('total_length', lambda n: None)