package test.svg; import net.sf.latexdraw.parsers.svg.MalformedSVGDocument; import net.sf.latexdraw.parsers.svg.SVGAttributes; import net.sf.latexdraw.parsers.svg.SVGElements; import net.sf.latexdraw.parsers.svg.SVGImageElement; import org.junit.Test; import static org.junit.Assert.*; public class TestSVGImageElement extends AbstractTestSVGElement { @SuppressWarnings("unused") @Test public void testContructor() throws MalformedSVGDocument { try { new SVGImageElement(null, ""); //$NON-NLS-1$ fail(); }catch(Exception e) { /**/} try { new SVGImageElement(node, null); fail(); }catch(MalformedSVGDocument e) { /**/} try { node.setAttribute(SVGAttributes.SVG_WIDTH, "dsd"); //$NON-NLS-1$ node.setAttribute(SVGAttributes.SVG_HEIGHT, "dsd"); //$NON-NLS-1$ new SVGImageElement(node, null); fail(); }catch(MalformedSVGDocument e) { /**/} try { node.setAttribute(SVGAttributes.SVG_WIDTH, "1"); //$NON-NLS-1$ new SVGImageElement(node, null); fail(); }catch(MalformedSVGDocument e) { /**/} try { node.setAttribute(SVGAttributes.SVG_WIDTH, "-1"); //$NON-NLS-1$ node.setAttribute(SVGAttributes.SVG_HEIGHT, "10"); //$NON-NLS-1$ new SVGImageElement(node, null); fail(); }catch(MalformedSVGDocument e) { /**/} try { node.setAttribute(SVGAttributes.SVG_WIDTH, "10"); //$NON-NLS-1$ node.setAttribute(SVGAttributes.SVG_HEIGHT, "-1"); //$NON-NLS-1$ new SVGImageElement(node, null); fail(); }catch(MalformedSVGDocument e) { /**/} node.setAttribute(SVGAttributes.SVG_HEIGHT, "20"); //$NON-NLS-1$ new SVGImageElement(node, null); } @Test public void testGetHeight() throws MalformedSVGDocument { node.setAttribute(SVGAttributes.SVG_WIDTH, "10"); //$NON-NLS-1$ node.setAttribute(SVGAttributes.SVG_HEIGHT, "20"); //$NON-NLS-1$ SVGImageElement e = new SVGImageElement(node, null); assertEquals(e.getHeight(), 20., 0.0001); } @Test public void testGetWidth() throws MalformedSVGDocument { node.setAttribute(SVGAttributes.SVG_WIDTH, "10"); //$NON-NLS-1$ node.setAttribute(SVGAttributes.SVG_HEIGHT, "20"); //$NON-NLS-1$ SVGImageElement e = new SVGImageElement(node, null); assertEquals(e.getWidth(), 10., 0.0001); } @Test public void testGetURI() throws MalformedSVGDocument { node.setAttribute(SVGAttributes.SVG_WIDTH, "10"); //$NON-NLS-1$ node.setAttribute(SVGAttributes.SVG_HEIGHT, "20"); //$NON-NLS-1$ SVGImageElement e = new SVGImageElement(node, null); assertNull(e.getURI()); node.setAttribute("xlink:href", "/dir/file"); //$NON-NLS-1$ //$NON-NLS-2$ e = new SVGImageElement(node, null); assertEquals(e.getURI(), "/dir/file"); //$NON-NLS-1$ } @Test public void testEnableRendering() throws MalformedSVGDocument { node.setAttribute(SVGAttributes.SVG_WIDTH, "10"); //$NON-NLS-1$ node.setAttribute(SVGAttributes.SVG_HEIGHT, "20"); //$NON-NLS-1$ SVGImageElement e = new SVGImageElement(node, null); assertFalse(e.enableRendering()); node.setAttribute("xlink:href", "/rerzerojcsf/dsqdsdfgdre"); //$NON-NLS-1$ //$NON-NLS-2$ e = new SVGImageElement(node, null); assertFalse(e.enableRendering()); node.setAttribute("xlink:href", "build.xml"); //$NON-NLS-1$ //$NON-NLS-2$ e = new SVGImageElement(node, null); assertFalse(e.enableRendering()); node.setAttribute(SVGAttributes.SVG_WIDTH, "0"); //$NON-NLS-1$ e = new SVGImageElement(node, null); assertFalse(e.enableRendering()); node.setAttribute(SVGAttributes.SVG_HEIGHT, "0"); //$NON-NLS-1$ e = new SVGImageElement(node, null); assertFalse(e.enableRendering()); node.setAttribute(SVGAttributes.SVG_WIDTH, "20"); //$NON-NLS-1$ e = new SVGImageElement(node, null); assertFalse(e.enableRendering()); } @Test public void testGetY() throws MalformedSVGDocument { node.setAttribute(SVGAttributes.SVG_WIDTH, "10"); //$NON-NLS-1$ node.setAttribute(SVGAttributes.SVG_HEIGHT, "20"); //$NON-NLS-1$ SVGImageElement e = new SVGImageElement(node, null); assertEquals(e.getY(), 0., 0.0001); node.setAttribute(SVGAttributes.SVG_Y, "1"); //$NON-NLS-1$ e = new SVGImageElement(node, null); assertEquals(1., e.getY(), 0.0001); } @Test public void testGetX() throws MalformedSVGDocument { node.setAttribute(SVGAttributes.SVG_WIDTH, "10"); //$NON-NLS-1$ node.setAttribute(SVGAttributes.SVG_HEIGHT, "20"); //$NON-NLS-1$ SVGImageElement e = new SVGImageElement(node, null); assertEquals(e.getX(), 0., 0.0001); node.setAttribute(SVGAttributes.SVG_X, "1"); //$NON-NLS-1$ e = new SVGImageElement(node, null); assertEquals(1., e.getX(), 0.0001); } @Override public String getNameNode() { return SVGElements.SVG_IMAGE; } }