示例#1
0
    def test_put_pointfile(self):
        """Check if the point file is stored."""
        layer_serverdir, layer_host = get_ngserver()

        layer_kws = {}
        layer_kws['ngspace'] = 'FAFB'
        dimensions = _handle_ngdimensions(layer_kws)
        layer_name = 'points'
        points_path = create_pointinfo(dimensions, layer_serverdir, layer_name)

        location_data = [{
            'x': 5,
            'y': 10,
            'z': 20
        }, {
            'x': 15,
            'y': 25,
            'z': 30
        }]

        points = pd.DataFrame(location_data)
        points['description'] = 'dummy data'

        upload_points(points, points_path, 'points', [1, 1, 1])

        pointfilepath = points_path + '/precomputed/' + layer_name + '/spatial0/0_0_0'

        status = os.path.isfile(pointfilepath)

        assert status
示例#2
0
    def test_put_postsynapsefile(self):
        """Check if the synapse file is stored."""
        layer_serverdir, layer_host = get_ngserver()

        layer_kws = {}
        layer_kws['ngspace'] = 'FAFB'
        dimensions = _handle_ngdimensions(layer_kws)
        synapse_path = create_synapseinfo(dimensions, layer_serverdir)

        location_data = [{
            'x': 5,
            'y': 10,
            'z': 20
        }, {
            'x': 15,
            'y': 25,
            'z': 30
        }]

        presynapses = pd.DataFrame(location_data)

        skeletonid = 456
        type = 'postsynapses'

        put_synapsefile(synapse_path, type, presynapses, skeletonid)

        synapsefilepath = synapse_path + '/precomputed/' + \
            type + '/' + type + '_cell/' + str(skeletonid)

        status = os.path.isfile(synapsefilepath)

        assert status
示例#3
0
    def test_upload_skeletontreeneuron(self):
        """Check if skeleton upload works in a tree neuron."""
        # load some example neurons..
        swc_path = os.path.join(BASE_DIR, 'data/swc')
        # print('swc_path: ', swc_path)
        swc_files = glob.glob(os.path.join(swc_path, '*.swc'))
        # print('swc_file: ', swc_files)

        neuronlist = []
        neuronlist += [
            navis.read_swc(f,
                           units='8 nm',
                           connector_labels={
                               'presynapse': 7,
                               'postsynapse': 8
                           },
                           id=int(os.path.splitext(os.path.basename(f))[0]))
            for f in swc_files
        ]

        neuronlist = navis.core.NeuronList(neuronlist)
        treeneuron = neuronlist[0]

        layer_serverdir, layer_host = get_ngserver()

        skelsource, skelseglist, skelsegnamelist = to_ngskeletons(treeneuron)
        uploadskeletons(skelsource, skelseglist, skelsegnamelist,
                        layer_serverdir)

        skeleton_path = os.path.join(layer_serverdir, 'precomputed/skeletons/',
                                     str(treeneuron.id))

        status = os.path.isfile(skeleton_path)

        assert status
示例#4
0
    def test_annotate_annotate_points(self):
        """Check if individual annotation works."""
        layer_serverdir, layer_host = get_ngserver()

        layer_kws = {}
        layer_kws['ngspace'] = 'FAFB'
        dimensions = _handle_ngdimensions(layer_kws)

        location_data = [{
            'x': 5,
            'y': 10,
            'z': 20
        }, {
            'x': 15,
            'y': 25,
            'z': 30
        }]

        points = pd.DataFrame(location_data)
        points['description'] = 'dummy data'

        ngviewer = openviewer(None)
        layer_scale = (1, 1, 1)
        annot_colors = '#ff0000'

        status = annotate_points(ngviewer, dimensions, annot_colors, points,
                                 'points', layer_scale)

        assert status
示例#5
0
    def test_create_fancspace(self):
        """Check if the hemibrain space is created."""
        layer_serverdir, layer_host = get_ngserver()

        create_ngspace(ngspace='hemibrain')

        ngspace = sys.modules['ngspace']

        assert ngspace == 'hemibrain'
示例#6
0
    def test_upload_skeletonexception(self):
        """Check if exception occurs."""
        neuronlist = (1, 2, 3)

        layer_serverdir, layer_host = get_ngserver()

        with pytest.raises(Exception):
            skelsource, skelseglist, skelsegnamelist = to_ngskeletons(
                neuronlist)
示例#7
0
    def test_create_fafbspace(self):
        """Check if the fafb ngspace is created."""
        layer_serverdir, layer_host = get_ngserver()

        create_ngspace(ngspace='FAFB')

        ngspace = sys.modules['ngspace']

        assert ngspace == 'FAFB'
示例#8
0
    def test_create_ngsegmentlayer(self):
        """Check if the segdataset seg_20190805 is created."""
        layer_serverdir, layer_host = get_ngserver()

        ngviewer = openviewer(None)

        ngviewer2 = create_nglayer(ngviewer=ngviewer,
                                   layer_kws={'type': 'segdataset', 'ngspace': 'FAFB', 'name': 'seg_20190805'})

        assert ngviewer2 == ngviewer
示例#9
0
    def test_create_ngsynapticcleftslayer(self):
        """Check if the synaptic clefts layer is created."""
        layer_serverdir, layer_host = get_ngserver()

        ngviewer = openviewer(None)

        ngviewer2 = create_nglayer(ngviewer=ngviewer,
                                   layer_kws={'type': 'synapticclefts', 'ngspace': 'FAFB',
                                              'name': 'clefts_Heinrich_etal'})

        assert ngviewer2 == ngviewer
示例#10
0
    def test_create_ngbuhmannsynapselayer(self):
        """Check if the buhmann synapse layer is created."""
        layer_serverdir, layer_host = get_ngserver()

        ngviewer = openviewer(None)

        ngviewer2 = create_nglayer(ngviewer=ngviewer,
                                   layer_kws={'type': 'synapticlayer', 'ngspace': 'FAFB',
                                              'name': 'synapses_buhmann2019'})

        assert ngviewer2 == ngviewer
示例#11
0
    def test_create_ngexceptionlayoutlayer(self):
        """Check exception is layout is not set."""
        layer_serverdir, layer_host = get_ngserver()

        location_data = [{'x': 5, 'y': 10, 'z': 20}, {'x': 15, 'y': 25, 'z': 30}]

        points = pd.DataFrame(location_data)
        points['description'] = 'dummy data'

        with pytest.raises(Exception):
            create_nglayer(layout='xy-nd', layer_kws={'type': 'points', 'name': 'points1',
                                                      'source': points, 'scale': [8, 8, 8], 'color': 'yellow'})
示例#12
0
    def test_create_pointinfo(self):
        """Check if the point info is stored."""
        layer_serverdir, layer_host = get_ngserver()

        layer_kws = {}
        layer_kws['ngspace'] = 'FAFB'
        dimensions = _handle_ngdimensions(layer_kws)
        create_pointinfo(dimensions, layer_serverdir, 'points')

        status = os.path.isfile(
            os.path.join(layer_serverdir, 'precomputed/points', 'info'))

        assert status
示例#13
0
    def test_annotate_synapsesexception(self):
        """Check if exception occurs."""
        neuronlist = (1, 2, 3)

        layer_serverdir, layer_host = get_ngserver()

        ngviewer = openviewer(None)
        layer_kws = {}
        layer_kws['ngspace'] = 'FAFB'
        dimensions = _handle_ngdimensions(layer_kws)

        with pytest.raises(Exception):
            annotate_synapses(ngviewer, dimensions, neuronlist)
示例#14
0
    def test_upload_synapsesexception(self):
        """Check if exception occurs."""
        neuronlist = (1, 2, 3)

        layer_serverdir, layer_host = get_ngserver()

        presynlayer_kws = {
            'type': 'synapses',
            'ngspace': 'FAFB',
            'source': neuronlist
        }

        with pytest.raises(Exception):
            create_nglayer(layer_kws=presynlayer_kws)
示例#15
0
    def test_create_ngpointslayer(self):
        """Check if the points layer is created."""
        layer_serverdir, layer_host = get_ngserver()

        ngviewer = openviewer(None)

        location_data = [{'x': 5, 'y': 10, 'z': 20}, {'x': 15, 'y': 25, 'z': 30}]

        points = pd.DataFrame(location_data)
        points['description'] = 'dummy data'

        ngviewer2 = create_nglayer(layer_kws={'type': 'points', 'name': 'points1', 'ngspace': 'FAFB',
                                              'source': points, 'scale': [8, 8, 8], 'color': 'yellow'})

        assert ngviewer2 == ngviewer
示例#16
0
    def test_create_ngvolumelayer(self):
        """Check if the volume layer is created."""
        layer_serverdir, layer_host = get_ngserver()

        ngviewer = openviewer(None)

        segid = 10
        vertices = [(0, 0, 0), (0, 1, 0), (0, 2, 0)]
        faces = [(0, 1, 2)]
        testvolume = navis.Volume(vertices=vertices, faces=faces, name='test', id=segid)

        ngviewer2 = create_nglayer(layer_kws={'type': 'volumes', 'source': testvolume, 'ngspace': 'FAFB',
                                              'color': 'white', 'alpha': 0.3})

        assert ngviewer2 == ngviewer
示例#17
0
    def test_upload_synapsescatmaidneuron(self):
        """Check if synapse upload works in a tree neuronlist."""
        # load some example neurons..
        swc_path = os.path.join(BASE_DIR, 'data/swc')
        # print('swc_path: ', swc_path)
        swc_files = glob.glob(os.path.join(swc_path, '*.swc'))
        # print('swc_file: ', swc_files)

        neuronlist = []
        neuronlist += [
            navis.read_swc(f,
                           units='8 nm',
                           connector_labels={
                               'presynapse': 7,
                               'postsynapse': 8
                           },
                           id=int(os.path.splitext(os.path.basename(f))[0]))
            for f in swc_files
        ]

        catmaidneuron = pymaid.core.CatmaidNeuron(neuronlist[0])

        layer_serverdir, layer_host = get_ngserver()

        layer_kws = {}
        layer_kws['ngspace'] = 'FAFB'
        dimensions = _handle_ngdimensions(layer_kws)
        synapse_path = create_synapseinfo(dimensions, layer_serverdir)

        presynlayer_kws = {
            'type': 'synapses',
            'ngspace': 'FAFB',
            'source': catmaidneuron
        }

        create_nglayer(layer_kws=presynlayer_kws)
        type = 'presynapses'
        synapsefilepath = synapse_path + '/precomputed/' +\
            type + '/' + type + '_cell/' + str(catmaidneuron.id)

        status = os.path.isfile(synapsefilepath)

        assert status
示例#18
0
    def test_meshupload(self):
        """Check if the meshupload is done."""
        segid = 10
        vertices = [(0, 0, 0), (0, 1, 0), (0, 2, 0)]
        faces = [(0, 1, 2)]
        testvolume = navis.Volume(vertices=vertices,
                                  faces=faces,
                                  name='test',
                                  id=segid)

        volumedatasource, volumeidlist, volumenamelist = to_ngmesh(testvolume)
        # segmentColors = dict(zip(volumeidlist, '#ffff00'))

        layer_serverdir, layer_host = get_ngserver()
        uploadmeshes(volumedatasource, volumeidlist, volumenamelist,
                     layer_serverdir, 'testvolume')

        status = os.path.exists(
            os.path.join(layer_serverdir, 'precomputed/testvolume/mesh',
                         str(segid)))

        assert status
示例#19
0
    def test_upload_skeletoncatmaidneuron(self):
        """Check if skeleton upload works in a catmaid neuron."""
        # load some example neurons..
        swc_path = os.path.join(BASE_DIR, 'data/swc')
        # print('swc_path: ', swc_path)
        swc_files = glob.glob(os.path.join(swc_path, '*.swc'))
        # print('swc_file: ', swc_files)

        neuronlist = []
        neuronlist += [
            navis.read_swc(f,
                           units='8 nm',
                           connector_labels={
                               'presynapse': 7,
                               'postsynapse': 8
                           },
                           id=int(os.path.splitext(os.path.basename(f))[0]))
            for f in swc_files
        ]

        catmaidneuron = pymaid.core.CatmaidNeuron(neuronlist[0])
        catmaidneuron.soma = None  # set this so you don't have to fetch from remote instance

        layer_serverdir, layer_host = get_ngserver()

        skelsource, skelseglist, skelsegnamelist = to_ngskeletons(
            catmaidneuron)
        uploadskeletons(skelsource, skelseglist, skelsegnamelist,
                        layer_serverdir)

        skeleton_path = os.path.join(layer_serverdir, 'precomputed/skeletons/',
                                     str(catmaidneuron.id))

        status = os.path.isfile(skeleton_path)

        assert status