Exemple #1
0
 def _assert_stored_ddti(self, expected_cnt=1):
     count = dao.count_datatypes(self.test_project.id, DummyDataTypeIndex)
     assert expected_cnt == count
     datatype = dao.try_load_last_entity_of_type(self.test_project.id,
                                                 DummyDataTypeIndex)
     assert datatype.subject == DataTypeMetaData.DEFAULT_SUBJECT, "Wrong data stored."
     return datatype
Exemple #2
0
    def get_entity_count(project, datatype):
        """
        Return the count of stored datatypes with class given by `datatype`

        :param datatype: Take class from this instance amd count for this class
        """
        return dao.count_datatypes(project.id, datatype.__class__)
Exemple #3
0
    def get_entity_count(project, datatype):
        """
        Return the count of stored datatypes with class given by `datatype`

        :param datatype: Take class from this instance amd count for this class
        """
        return dao.count_datatypes(project.id, datatype.__class__)
 def _assert_stored_dt2(self, expected_cnt=1):
     count = dao.count_datatypes(self.test_project.id, Datatype2)
     self.assertEqual(expected_cnt, count)
     datatype = dao.try_load_last_entity_of_type(self.test_project.id,
                                                 Datatype2)
     self.assertEqual(datatype.subject, DataTypeMetaData.DEFAULT_SUBJECT,
                      "Wrong data stored.")
     return datatype
        def _create_measure(conn, op, op_dir, project_id):
            conn_measure = ConnectivityMeasure()
            conn_measure.connectivity = h5.load_from_index(conn)
            conn_measure.array_data = numpy.array(conn.number_of_regions)

            conn_measure_db = h5.store_complete(conn_measure, op_dir)
            conn_measure_db.fk_from_operation = op.id
            dao.store_entity(conn_measure_db)

            count = dao.count_datatypes(project_id, DataTypeMatrix)
            return count
Exemple #6
0
    def import_zip_connectivity(user, project, zip_path=None, subject=DataTypeMetaData.DEFAULT_SUBJECT):

        if zip_path is None:
            zip_path = os.path.join(os.path.dirname(tvb_data.__file__), 'connectivity', 'connectivity_76.zip')
        count = dao.count_datatypes(project.id, ConnectivityIndex)

        view_model = ZIPConnectivityImporterModel()
        view_model.uploaded = zip_path
        view_model.data_subject = subject
        TestFactory.launch_importer(ZIPConnectivityImporter, view_model, user, project.id)

        return TestFactory._assert_one_more_datatype(project, ConnectivityIndex, count)
Exemple #7
0
    def import_surface_zip(user, project, zip_path, surface_type, zero_based=True, same_process=True):

        count = dao.count_datatypes(project.id, SurfaceIndex)

        view_model = ZIPSurfaceImporterModel()
        view_model.uploaded = zip_path
        view_model.should_center = True
        view_model.zero_based_triangles = zero_based
        view_model.surface_type = surface_type
        TestFactory.launch_importer(ZIPSurfaceImporter, view_model, user, project, same_process)

        return TestFactory._assert_one_more_datatype(project, SurfaceIndex, count)
Exemple #8
0
    def test_export_import_figures(self, user_factory, project_factory):
        """
        Test that ResultFigure instances are correctly restores after an export+import project
        """
        # Prepare data
        user = user_factory()
        project = project_factory(user, "TestImportExportFigures")
        zip_path = os.path.join(os.path.dirname(tvb_data.__file__),
                                'connectivity', 'paupau.zip')
        TestFactory.import_zip_connectivity(user, project, zip_path)

        figure_service = FigureService()
        figure_service.store_result_figure(project, user, "png", IMG_DATA,
                                           "bla")
        figure_service.store_result_figure(project, user, "png", IMG_DATA,
                                           "bla")
        figures = list(
            figure_service.retrieve_result_figures(project,
                                                   user)[0].values())[0]
        assert 2 == len(figures)

        # export, delete and the import project
        self.zip_path = ExportManager().export_project(project)
        assert self.zip_path is not None, "Exported file is none"
        self.project_service.remove_project(project.id)

        self.import_service.import_project_structure(self.zip_path, user.id)

        # Check that state is as before export: one operation, one DT, 2 figures
        retrieved_project = self.project_service.retrieve_projects_for_user(
            user.id)[0][0]
        count_operations = dao.get_filtered_operations(retrieved_project.id,
                                                       None,
                                                       is_count=True)
        assert 1 == count_operations
        count_datatypes = dao.count_datatypes(retrieved_project.id, DataType)
        assert 1 == count_datatypes

        figures = list(
            figure_service.retrieve_result_figures(retrieved_project,
                                                   user)[0].values())[0]
        assert 2 == len(figures)
        assert "bla" in figures[0].name
        assert "bla" in figures[1].name
        image_path = utils.url2path(figures[0].file_path)
        img_data = Image.open(image_path).load()
        assert img_data is not None
        def build(project):
            count = dao.count_datatypes(project.id, DataTypeMatrix)
            assert count == 0

            op = operation_factory(test_project=project)
            conn = connectivity_index_factory(op=op)

            count = _create_measure(conn, op, project)
            assert count == 1

            count = _create_measure(conn, op, project)
            assert count == 2

            count = _create_measure(conn, op, project)
            assert count == 3

            return get_filtered_datatypes(project.id, DataTypeMatrix)[0]
Exemple #10
0
    def build(test_user, test_project):
        view_model = BaseBCTModel()
        view_model.connectivity = get_filtered_datatypes(test_project.id, ConnectivityIndex, page_size=1)[0][0][2]

        adapter = ABCAdapter.build_adapter_from_class(TransitivityBinaryDirected)
        op = OperationService().fire_operation(adapter, test_user, test_project.id, view_model=view_model)
        # wait for the operation to finish
        tries = 5
        while not op.has_finished and tries > 0:
            sleep(5)
            tries = tries - 1
            op = dao.get_operation_by_id(op.id)

        value_wrapper = try_get_last_datatype(test_project.id, ValueWrapperIndex)
        count = dao.count_datatypes(test_project.id, ValueWrapperIndex)
        assert 1 == count
        return value_wrapper
        def build(project):
            count = dao.count_datatypes(project.id, DataTypeMatrix)
            assert count == 0

            op = operation_factory(test_project=project)
            conn = connectivity_index_factory(op=op)
            storage_path = FilesHelper().get_project_folder(
                op.project, str(op.id))

            count = _create_measure(conn, op, storage_path, project.id)
            assert count == 1

            count = _create_measure(conn, op, storage_path, project.id)
            assert count == 2

            count = _create_measure(conn, op, storage_path, project.id)
            assert count == 3

            return get_filtered_datatypes(project.id, DataTypeMatrix)[0]
Exemple #12
0
 def validate_first_fragment(form, project_id, conn_idx):
     conn_count = dao.count_datatypes(project_id, conn_idx)
     if conn_count == 0:
         form.connectivity.errors.append(
             "No connectivity in the project! Simulation cannot be started without "
             "a connectivity!")
 def _assert_no_dt2(self):
     count = dao.count_datatypes(self.test_project.id, Datatype2)
     self.assertEqual(0, count)
Exemple #14
0
 def blue_datatypes_in(self, project_id):
     return dao.count_datatypes(project_id, SensorsIndex)
Exemple #15
0
 def red_datatypes_in(self, project_id):
     return dao.count_datatypes(project_id, ConnectivityIndex)
Exemple #16
0
 def _assert_one_more_datatype(project, dt_class, prev_count=0):
     dt = try_get_last_datatype(project.id, dt_class)
     count = dao.count_datatypes(project.id, dt_class)
     assert prev_count + 1 == count, "Project should contain only one new DT."
     assert dt is not None, "Retrieved DT should not be empty"
     return dt
Exemple #17
0
 def _assert_no_ddti(self):
     count = dao.count_datatypes(self.test_project.id, DummyDataTypeIndex)
     assert 0 == count
 def _assert_no_dt2(self):
     count = dao.count_datatypes(self.test_project.id, Datatype2)
     assert 0 == count
 def _assert_stored_dt2(self, expected_cnt=1):
     count = dao.count_datatypes(self.test_project.id, Datatype2)
     assert expected_cnt == count
     datatype = dao.try_load_last_entity_of_type(self.test_project.id, Datatype2)
     assert datatype.subject == DataTypeMetaData.DEFAULT_SUBJECT, "Wrong data stored."
     return datatype
 def _assert_no_dt2(self):
     count = dao.count_datatypes(self.test_project.id, Datatype2)
     self.assertEqual(0, count)
 def _assert_no_dt2(self):
     count = dao.count_datatypes(self.test_project.id, Datatype2)
     assert 0 == count