X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Futil%2FImageMakerTest.java;fp=test%2Fjalview%2Futil%2FImageMakerTest.java;h=c8f53e17d96e6f6c3b59e5378f161001d7de67b2;hb=b122ba188c2ffcbb302809bafc02058e355643ee;hp=0000000000000000000000000000000000000000;hpb=e91b3bef83f320e13c59ad5d21d69f0abf3d7507;p=jalview.git diff --git a/test/jalview/util/ImageMakerTest.java b/test/jalview/util/ImageMakerTest.java new file mode 100644 index 0000000..c8f53e1 --- /dev/null +++ b/test/jalview/util/ImageMakerTest.java @@ -0,0 +1,112 @@ +package jalview.util; + +import org.testng.Assert; +import org.testng.annotations.Test; + +import jalview.bin.Cache; +import jalview.util.imagemaker.BitmapImageSizing; + +public class ImageMakerTest +{ + @Test(groups = { "Functional" }) + public void testParseScaleWidthHeightStrings() + { + Cache.setPropsAreReadOnly(true); + Cache.loadProperties("test/jalview/bin/testProps.jvprops"); + + Cache.removeProperty(BitmapImageSizing.BITMAP_SCALE); + Cache.removeProperty(BitmapImageSizing.BITMAP_HEIGHT); + Cache.removeProperty(BitmapImageSizing.BITMAP_WIDTH); + + BitmapImageSizing bis = null; + + // No defaults set, 3 values given. Should be the 3 values. + bis = ImageMaker.parseScaleWidthHeightStrings("1.2", "3", "4"); + Assert.assertEquals(bis.scale(), 1.2f, + "scale not parsed and set to value given"); + Assert.assertEquals(bis.width(), 3, + "width not parsed and set to value given"); + Assert.assertEquals(bis.height(), 4, + "height not parsed and set to value given"); + + // No defaults set, 1 value given. Should be the 1 value and 2 0s. + bis = ImageMaker.parseScaleWidthHeightStrings("1.2", null, null); + Assert.assertEquals(bis.scale(), 1.2f, + "scale not parsed and set to value given"); + Assert.assertEquals(bis.width(), 0, "width not parsed and set to 0"); + Assert.assertEquals(bis.height(), 0, "height not parsed and set to 0"); + + // No defaults set, 1 value given. Should be the 1 value and 2 0s. (checking + // the other value) + bis = ImageMaker.parseScaleWidthHeightStrings(null, "1", null); + Assert.assertEquals(bis.scale(), 0f, "scale not parsed and set to 0f"); + Assert.assertEquals(bis.width(), 1, + "width not parsed and set to value given"); + Assert.assertEquals(bis.height(), 0, "height not parsed and set to 0"); + + // No defaults set, no values given, these should first look at defaults and + // then set all to 0 + bis = ImageMaker.parseScaleWidthHeightStrings(null, null, null); + Assert.assertEquals(bis.scale(), 0f, + "scale not parsed and set to undefined default 0f"); + Assert.assertEquals(bis.width(), 0, + "width not parsed and set to undefined default 0"); + Assert.assertEquals(bis.height(), 0, + "height not parsed and set to undefined default 0"); + + Cache.setProperty(BitmapImageSizing.BITMAP_HEIGHT, "1"); + // 1 default set, bis should detect this + Assert.assertEquals(bis.scale(), 0f, + "scale not parsed and set to undefined default 0f"); + Assert.assertEquals(bis.width(), 0, + "width not parsed and set to undefined default 0"); + Assert.assertEquals(bis.height(), 1, + "height not parsed and set to default 1"); + + Cache.setProperty(BitmapImageSizing.BITMAP_SCALE, "3.4"); + Cache.setProperty(BitmapImageSizing.BITMAP_WIDTH, "2"); + // Now all 3 defaults set, bis should detect this + Assert.assertEquals(bis.scale(), 3.4f, + "scale not parsed and set to undefined default 3.2f"); + Assert.assertEquals(bis.width(), 2, + "width not parsed and set to undefined default 2"); + Assert.assertEquals(bis.height(), 1, + "height not parsed and set to default 1"); + + // 3 defaults set, and 3 values given, should use the 3 values + bis = ImageMaker.parseScaleWidthHeightStrings("1.2", "3", "4"); + Assert.assertEquals(bis.scale(), 1.2f, + "scale not parsed and set to value given"); + Assert.assertEquals(bis.width(), 3, + "width not parsed and set to value given"); + Assert.assertEquals(bis.height(), 4, + "height not parsed and set to value given"); + + // 3 defaults set, and 1 value given, should use the 1 value and 2 0s + bis = ImageMaker.parseScaleWidthHeightStrings("1.2", null, null); + Assert.assertEquals(bis.scale(), 1.2f, + "scale not parsed and set to value given"); + Assert.assertEquals(bis.width(), 0, + "width not parsed and set to undefined 0"); + Assert.assertEquals(bis.height(), 0, + "height not parsed and set to undefined 0"); + + // 3 defaults set, and 1 value given, should use the 1 value and 2 0s + bis = ImageMaker.parseScaleWidthHeightStrings(null, null, "5"); + Assert.assertEquals(bis.scale(), 0f, + "scale not parsed and set to undefined 0f"); + Assert.assertEquals(bis.width(), 0, + "width not parsed and set to undefined 0"); + Assert.assertEquals(bis.height(), 5, + "height not parsed and set to value given"); + + // 3 defaults set, and no values given, should use the 3 default values + bis = ImageMaker.parseScaleWidthHeightStrings(null, null, null); + Assert.assertEquals(bis.scale(), 3.4f, + "scale not parsed and set to undefined default 3.4f"); + Assert.assertEquals(bis.width(), 2, + "width not parsed and set to undefined default 2"); + Assert.assertEquals(bis.height(), 1, + "height not parsed and set to default 1"); + } +}