def project_datasets(self, user1): """Return Project with Datasets and an orphaned Dataset.""" # Create and name all the objects project = ProjectI() project.name = rstring('Project') # Create 5 Datasets, each with 0-4 images. for d in range(5): dataset1 = DatasetI() dataset1.name = rstring('Dataset%s' % d) for i in range(d): image = self.create_test_image(size_x=5, size_y=5, session=user1[0].getSession(), name="Image%s" % i) image = ImageI(image.id.val, False) dataset1.linkImage(image) project.linkDataset(dataset1) # Create single orphaned Dataset dataset = DatasetI() dataset.name = rstring('Dataset') project = get_update_service(user1).saveAndReturnObject(project) dataset = get_update_service(user1).saveAndReturnObject(dataset) return project, dataset
def project_dataset(request, itest, update_service): """ Returns a new OMERO Project and linked Dataset with required fields set. """ project = ProjectI() project.name = rstring(itest.uuid()) dataset = DatasetI() dataset.name = rstring(itest.uuid()) project.linkDataset(dataset) return update_service.saveAndReturnObject(project)
def project_dataset(self): """ Returns a new OMERO Project and linked Dataset with required fields set. """ project = ProjectI() project.name = rstring(self.uuid()) dataset = DatasetI() dataset.name = rstring(self.uuid()) project.linkDataset(dataset) return self.update.saveAndReturnObject(project)
def project_dataset_image(self): """ Returns a new OMERO Project, linked Dataset and linked Image populated by an L{test.integration.library.ITest} instance with required fields set. """ project = ProjectI() project.name = rstring(self.uuid()) dataset = DatasetI() dataset.name = rstring(self.uuid()) image = self.new_image(name=self.uuid()) dataset.linkImage(image) project.linkDataset(dataset) return self.update.saveAndReturnObject(project)
def project_dataset_image(request, itest, update_service): """ Returns a new OMERO Project, linked Dataset and linked Image populated by an L{test.integration.library.ITest} instance with required fields set. """ project = ProjectI() project.name = rstring(itest.uuid()) dataset = DatasetI() dataset.name = rstring(itest.uuid()) image = itest.new_image(name=itest.uuid()) dataset.linkImage(image) project.linkDataset(dataset) return update_service.saveAndReturnObject(project)
def project_hierarchy_user1_group1(self, user1): """ Returns OMERO Projects with Dataset Children with Image Children Note: This returns a list of mixed objects in a specified order """ # Create and name all the objects project1 = ProjectI() project1.name = rstring('Project1') project2 = ProjectI() project2.name = rstring('Project2') dataset1 = DatasetI() dataset1.name = rstring('Dataset1') dataset2 = DatasetI() dataset2.name = rstring('Dataset2') image1 = self.new_image(name='Image1') image2 = self.new_image(name='Image2') # Link them together like so: # project1 # dataset1 # image1 # image2 # dataset2 # image2 # project2 # dataset2 # image2 project1.linkDataset(dataset1) project1.linkDataset(dataset2) project2.linkDataset(dataset2) dataset1.linkImage(image1) dataset1.linkImage(image2) dataset2.linkImage(image2) to_save = [project1, project2] projects = get_update_service(user1).saveAndReturnArray(to_save) projects.sort(key=lambda x: lower_or_none(unwrap(x.name))) datasets = projects[0].linkedDatasetList() datasets.sort(key=lambda x: lower_or_none(unwrap(x.name))) images = datasets[0].linkedImageList() images.sort(key=lambda x: lower_or_none(unwrap(x.name))) return projects + datasets + images
def datasets(self): """ Returns four new OMERO Datasets with required fields set and with names that can be used to exercise sorting semantics. """ to_save = [DatasetI(), DatasetI(), DatasetI(), DatasetI()] for index, dataset in enumerate(to_save): dataset.name = rstring(self.names[index]) # Non-orphaned Dataset to catch issues with queries where non-orphaned # datasets are included in the results. project = ProjectI() project.name = rstring(self.uuid()) dataset = DatasetI() dataset.name = rstring(self.uuid()) project.linkDataset(dataset) self.update.saveAndReturnObject(project) return self.update.saveAndReturnArray(to_save)
def datasets(request, itest, update_service, names): """ Returns four new OMERO Datasets with required fields set and with names that can be used to exercise sorting semantics. """ to_save = [DatasetI(), DatasetI(), DatasetI(), DatasetI()] for index, dataset in enumerate(to_save): dataset.name = rstring(names[index]) # Non-orphaned Dataset to catch issues with queries where non-orphaned # datasets are included in the results. project = ProjectI() project.name = rstring(itest.uuid()) dataset = DatasetI() dataset.name = rstring(itest.uuid()) project.linkDataset(dataset) update_service.saveAndReturnObject(project) return update_service.saveAndReturnArray(to_save)
def projects_dataset_image_tag(self): """ Returns 2 new OMERO Projects, linked Dataset and linked Image populated by an L{test.integration.library.ITest} instance with required fields set. Also a Tag linked to both Projects. """ project1 = ProjectI() project1.name = rstring(f'P1_{self.uuid()}') project2 = ProjectI() project2.name = rstring(f'P2_{self.uuid()}') dataset = DatasetI() dataset.name = rstring(f'D{self.uuid()}') image = self.new_image(f'I{self.uuid()}') dataset.linkImage(image) project1.linkDataset(dataset) project2.linkDataset(dataset) tag = TagAnnotationI() tag.textValue = rstring("ChgrpTag") project1.linkAnnotation(tag) project2.linkAnnotation(tag) return self.update.saveAndReturnArray([project1, project2])
def create_project(with_datasets=False, with_images=False): project = ProjectI() project.id = rlong(1L) project.name = rstring("the_name") project.description = rstring("the_description") dataset_count = 2 if not with_datasets: return project for dataset_id in range(0, dataset_count): dataset = DatasetI() dataset.id = rlong(dataset_id + 1) dataset.name = rstring("dataset_name_%d" % (dataset_id + 1)) dataset.description = rstring("dataset_description_%d" % (dataset_id + 1)) project.linkDataset(dataset) if not with_images: continue for image_id in range(1, 3): image_id = (dataset_id * dataset_count) + image_id dataset.linkImage(create_image(image_id)) return project
def projects_dataset_image_tag(self): """ Returns 2 new OMERO Projects, linked Dataset and linked Image populated by an L{test.integration.library.ITest} instance with required fields set. Also a Tag linked to both Projects. """ project1 = ProjectI() project1.name = rstring(self.uuid()) project2 = ProjectI() project2.name = rstring(self.uuid()) dataset = DatasetI() dataset.name = rstring(self.uuid()) image = self.new_image(name=self.uuid()) dataset.linkImage(image) project1.linkDataset(dataset) project2.linkDataset(dataset) tag = TagAnnotationI() tag.textValue = rstring("ChgrpTag") project1.linkAnnotation(tag) project2.linkAnnotation(tag) return self.update.saveAndReturnArray([project1, project2])
def create_project(with_datasets=False, with_images=False): project = ProjectI() project.id = rlong(1) project.name = rstring('the_name') project.description = rstring('the_description') dataset_count = 2 if not with_datasets: return project for dataset_id in range(0, dataset_count): dataset = DatasetI() dataset.id = rlong(dataset_id + 1) dataset.name = rstring('dataset_name_%d' % (dataset_id + 1)) dataset.description = rstring('dataset_description_%d' % (dataset_id + 1)) project.linkDataset(dataset) if not with_images: continue for image_id in range(1, 3): image_id = (dataset_id * dataset_count) + image_id dataset.linkImage(create_image(image_id)) return project