'Tests image resizing, checking output sizes.'

def testResizeToRangeWithMasksPreservesStaticSpatialShape(self):

    in_image_shape_list = [[60, 40, 3], [15, 30, 3]]
    in_masks_shape_list = [[15, 60, 40], [10, 15, 30]]
    min_dim = 50
    max_dim = 100
    expected_image_shape_list = [[75, 50, 3], [50, 100, 3]]
    expected_masks_shape_list = [[15, 75, 50], [10, 50, 100]]
    for (in_image_shape, expected_image_shape, in_masks_shape, expected_mask_shape) in zip(in_image_shape_list, expected_image_shape_list, in_masks_shape_list, expected_masks_shape_list):
        in_image = tf.random_uniform(in_image_shape)
        in_masks = tf.random_uniform(in_masks_shape)
        (out_image, out_masks) = preprocessor.resize_to_range(in_image, in_masks, min_dimension=min_dim, max_dimension=max_dim)
        self.assertAllEqual(out_masks.get_shape().as_list(), expected_mask_shape)
        self.assertAllEqual(out_image.get_shape().as_list(), expected_image_shape)
