def test_01_get_measurement_columns(): module = ( cellprofiler.modules.measureobjectintensitydistribution.MeasureObjectIntensityDistribution() ) module.images_list.value = "DNA, Cytoplasm, Actin" for i, object_name, center_name in ( (0, "Nucleii", None), (1, "Cells", "Nucleii"), (2, "Cytoplasm", "Nucleii"), ): if i: module.add_object() module.objects[i].object_name.value = object_name if center_name is None: module.objects[ i ].center_choice.value = ( cellprofiler.modules.measureobjectintensitydistribution.C_SELF ) else: module.objects[ i ].center_choice.value = ( cellprofiler.modules.measureobjectintensitydistribution.C_CENTERS_OF_OTHER ) module.objects[i].center_object_name.value = center_name for i, bin_count in enumerate((4, 5, 6)): if i: module.add_bin_count() module.bin_counts[i].bin_count.value = bin_count module.bin_counts[2].wants_scaled.value = False columns = module.get_measurement_columns(None) column_dictionary = {} for object_name, feature, coltype in columns: key = (object_name, feature) assert not (key in column_dictionary) assert coltype == cellprofiler_core.measurement.COLTYPE_FLOAT column_dictionary[key] = (object_name, feature, coltype) for object_name in [x.object_name.value for x in module.objects]: for image_name in module.images_list.value: for bin_count, wants_scaled in [ (x.bin_count.value, x.wants_scaled.value) for x in module.bin_counts ]: for bin in range(1, bin_count + (1 if wants_scaled else 2)): for feature_fn in ( feature_frac_at_d, feature_mean_frac, feature_radial_cv, ): measurement = feature_fn(bin, bin_count, image_name) key = (object_name, measurement) assert key in column_dictionary del column_dictionary[key] assert len(column_dictionary) == 0
def test_default_heatmap_values(): module = (cellprofiler.modules.measureobjectintensitydistribution. MeasureObjectIntensityDistribution()) module.add_heatmap() module.heatmaps[0].image_name.value = IMAGE_NAME module.heatmaps[0].object_name.value = OBJECT_NAME module.heatmaps[0].bin_count.value = 10 module.images_list.value = "Bar" module.objects[0].object_name.value = "Foo" module.bin_counts[0].bin_count.value = 2 assert module.heatmaps[0].image_name.get_image_name() == "Bar" assert not module.heatmaps[0].image_name.is_visible() assert module.heatmaps[0].object_name.get_objects_name() == "Foo" assert not module.heatmaps[0].object_name.is_visible() assert module.heatmaps[0].get_number_of_bins() == 2 module.images_list.value = "Bar, MoreBar" assert module.heatmaps[0].image_name.is_visible() assert module.heatmaps[0].image_name.get_image_name() == IMAGE_NAME module.add_object() assert module.heatmaps[0].object_name.is_visible() assert module.heatmaps[0].object_name.get_objects_name() == OBJECT_NAME module.add_bin_count() assert module.heatmaps[0].get_number_of_bins() == 10
def test_01_get_measurements(): module = (cellprofiler.modules.measureobjectintensitydistribution. MeasureObjectIntensityDistribution()) module.images_list.value = "DNA, Cytoplasm, Actin" for i, object_name, center_name in ( (0, "Nucleii", None), (1, "Cells", "Nucleii"), (2, "Cytoplasm", "Nucleii"), ): if i: module.add_object() module.objects[i].object_name.value = object_name if center_name is None: module.objects[i].center_choice.value = ( cellprofiler.modules.measureobjectintensitydistribution.C_SELF) else: module.objects[i].center_choice.value = ( cellprofiler.modules.measureobjectintensitydistribution. C_CENTERS_OF_OTHER) module.objects[i].center_object_name.value = center_name for i, bin_count in ((0, 4), (0, 5), (0, 6)): if i: module.add_bin_count() module.bin_counts[i].bin_count.value = bin_count for object_name in [x.object_name.value for x in module.objects]: assert tuple(module.get_categories(None, object_name)) == ( cellprofiler.modules.measureobjectintensitydistribution.M_CATEGORY, ) for feature in cellprofiler.modules.measureobjectintensitydistribution.F_ALL: assert feature in module.get_measurements( None, object_name, cellprofiler.modules.measureobjectintensitydistribution. M_CATEGORY, ) for image_name in module.images_list.value: for ( feature ) in cellprofiler.modules.measureobjectintensitydistribution.F_ALL: assert image_name in module.get_measurement_images( None, object_name, cellprofiler.modules.measureobjectintensitydistribution. M_CATEGORY, feature, ) for bin_count in [x.bin_count.value for x in module.bin_counts]: for bin in range(1, bin_count + 1): for ( feature ) in cellprofiler.modules.measureobjectintensitydistribution.F_ALL: assert "%dof%d" % ( bin, bin_count, ) in module.get_measurement_scales( None, object_name, cellprofiler.modules. measureobjectintensitydistribution.M_CATEGORY, feature, image_name, )