def test_xmp_class(self): def config_context(context): context.request.width = 640 context.request.height = 640 size = 640, 640 filt = self.get_filter("universalimages.filters.rmd", "rmd()", config_context=config_context) self.load_file("regions.jpg", filt.engine) api = Xmp_API(filt.engine.metadata) # Check the filter methods self.assertTrue(api.check_valid(size)) self.assertTrue(api.check_allowed()) # Check the meta data area = api.get_area_values_for("Xmp.rmd.CropArea") self.assertEqual(area["x"], 0.5) self.assertEqual(area["y"], 0.5) self.assertEqual(area["w"], 1) self.assertEqual(area["h"], 0.75) self.assertEqual(area["MinWidth"], 480) absolute_values = api.stArea_to_absolute(area, size) self.assertEqual(absolute_values, (0, 80, 640, 560)) area = api.get_area_values_for(b"Xmp.rmd.SafeArea") self.assertEqual(area["x"], 0.5) self.assertEqual(area["y"], 0.5) self.assertEqual(area["w"], 0.46875) self.assertEqual(area["h"], 0.3125) self.assertEqual(area["MaxWidth"], 300) absolute_values = api.stArea_to_absolute(area, size) self.assertEqual(absolute_values, (170, 220, 470, 420)) areas = api.get_area_values_for_array("Xmp.rmd.RecommendedFrames") self.assertEqual(len(areas), 1) area = areas[0] self.assertEqual(area["x"], 0.5) self.assertEqual(area["y"], 0.5) self.assertEqual(area["w"], 1) self.assertEqual(area["h"], 1) self.assertEqual(area["MinAspectRatio"], 1) self.assertEqual(area["MaxAspectRatio"], 1) absolute_values = api.stArea_to_absolute(area, size) self.assertEqual(absolute_values, (0, 0, 640, 640)) area = api.get_area_values_for("Xmp.rmd.PivotPoint") self.assertEqual(area["x"], 0.5) self.assertEqual(area["y"], 0.5)
def test_xmp_class(self): size = 1200, 900 filt = self.get_filter('universalimages.filters.rmd', 'rmd()') self.load_file('monks-regions.jpg', filt.engine) api = Xmp_API(filt.engine.metadata) # Check the filter methods self.assertTrue(api.check_valid(size)) self.assertTrue(api.check_allowed()) # Check the meta data area = api.get_area_values_for('Xmp.rmd.CropArea') self.assertEqual(area['x'], 0.5181107954545454) self.assertEqual(area['y'], 0.5274621212121212) self.assertEqual(area['w'], 0.9026988636363636) self.assertEqual(area['h'], 0.8011363636363636) self.assertEqual(area['MinWidth'], 400) area = api.get_area_values_for(b'Xmp.rmd.SafeArea') self.assertEqual(area['x'], 0.4776278409090909) self.assertEqual(area['y'], 0.5821496212121212) self.assertEqual(area['w'], 0.5987215909090909) self.assertEqual(area['h'], 0.556344696969697) self.assertEqual(area['MaxWidth'], 320) areas = api.get_area_values_for_array('Xmp.rmd.RecommendedFrames') self.assertEqual(len(areas), 2) area = areas[0] self.assertEqual(area['x'], 0.4557883522727273) self.assertEqual(area['y'], 0.5243844696969697) self.assertEqual(area['w'], 0.7120028409090909) self.assertEqual(area['h'], 0.9512310606060606) self.assertEqual(area['MinAspectRatio'], 1) self.assertEqual(area['MaxAspectRatio'], 1) area = areas[1] self.assertEqual(area['x'], 0.4362571022727273) self.assertEqual(area['y'], 0.5712594696969697) self.assertEqual(area['w'], 0.71484375) self.assertEqual(area['h'], 0.6283143939393939) self.assertEqual(area['MinWidth'], 340) self.assertEqual(area['MaxWidth'], 360) area = api.get_area_values_for('Xmp.rmd.PivotPoint') self.assertEqual(area, {})
def test_xmp_class(self): def config_context(context): context.request.width = 640 context.request.height = 640 size = 640, 640 filt = self.get_filter('universalimages.filters.rmd', 'rmd()', config_context=config_context) self.load_file('regions.jpg', filt.engine) api = Xmp_API(filt.engine.metadata) # Check the filter methods self.assertTrue(api.check_valid(size)) self.assertTrue(api.check_allowed()) # Check the meta data area = api.get_area_values_for('Xmp.rmd.CropArea') self.assertEqual(area['x'], 0.5) self.assertEqual(area['y'], 0.5) self.assertEqual(area['w'], 1) self.assertEqual(area['h'], 0.75) self.assertEqual(area['MinWidth'], 480) absolute_values = api.stArea_to_absolute(area, size) self.assertEqual(absolute_values, (0, 80, 640, 560)) area = api.get_area_values_for(b'Xmp.rmd.SafeArea') self.assertEqual(area['x'], 0.5) self.assertEqual(area['y'], 0.5) self.assertEqual(area['w'], 0.46875) self.assertEqual(area['h'], 0.3125) self.assertEqual(area['MaxWidth'], 300) absolute_values = api.stArea_to_absolute(area, size) self.assertEqual(absolute_values, (170, 220, 470, 420)) areas = api.get_area_values_for_array('Xmp.rmd.RecommendedFrames') self.assertEqual(len(areas), 1) area = areas[0] self.assertEqual(area['x'], 0.5) self.assertEqual(area['y'], 0.5) self.assertEqual(area['w'], 1) self.assertEqual(area['h'], 1) self.assertEqual(area['MinAspectRatio'], 1) self.assertEqual(area['MaxAspectRatio'], 1) absolute_values = api.stArea_to_absolute(area, size) self.assertEqual(absolute_values, (0, 0, 640, 640)) area = api.get_area_values_for('Xmp.rmd.PivotPoint') self.assertEqual(area['x'], 0.5) self.assertEqual(area['y'], 0.5)