aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/java/org/apache/fop/UtilityCodeTestSuite.java6
-rw-r--r--test/java/org/apache/fop/intermediate/AreaTreeParserTestCase.java241
-rw-r--r--test/java/org/apache/fop/intermediate/IntermediateFormatTestSuite.java66
-rw-r--r--test/java/org/apache/fop/layoutengine/LayoutEngineTestSuite.java34
-rw-r--r--test/java/org/apache/fop/traits/BorderPropsTestCase.java53
-rw-r--r--test/java/org/apache/fop/traits/TraitColorTestCase.java75
-rw-r--r--test/layoutengine/standard-testcases/external-graphic_border_padding.xml4
-rw-r--r--test/layoutengine/standard-testcases/external-graphic_display-align.xml10
-rw-r--r--test/layoutengine/standard-testcases/external-graphic_svg.xml8
-rw-r--r--test/layoutengine/standard-testcases/instream-foreign-object_border_padding.xml4
-rw-r--r--test/layoutengine/standard-testcases/instream-foreign-object_display-align.xml10
11 files changed, 478 insertions, 33 deletions
diff --git a/test/java/org/apache/fop/UtilityCodeTestSuite.java b/test/java/org/apache/fop/UtilityCodeTestSuite.java
index 719ffa655..86b086c53 100644
--- a/test/java/org/apache/fop/UtilityCodeTestSuite.java
+++ b/test/java/org/apache/fop/UtilityCodeTestSuite.java
@@ -1,5 +1,5 @@
/*
- * Copyright 1999-2005 The Apache Software Foundation.
+ * Copyright 1999-2006 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,6 +18,8 @@
package org.apache.fop;
+import org.apache.fop.traits.BorderPropsTestCase;
+import org.apache.fop.traits.TraitColorTestCase;
import org.apache.fop.util.ASCII85InputStreamTestCase;
import org.apache.fop.util.ASCII85OutputStreamTestCase;
import org.apache.fop.util.PDFNumberTestCase;
@@ -41,6 +43,8 @@ public class UtilityCodeTestSuite {
suite.addTest(new TestSuite(ASCII85OutputStreamTestCase.class));
suite.addTest(new TestSuite(ASCII85InputStreamTestCase.class));
suite.addTest(new TestSuite(PDFNumberTestCase.class));
+ suite.addTest(new TestSuite(TraitColorTestCase.class));
+ suite.addTest(new TestSuite(BorderPropsTestCase.class));
//$JUnit-END$
return suite;
}
diff --git a/test/java/org/apache/fop/intermediate/AreaTreeParserTestCase.java b/test/java/org/apache/fop/intermediate/AreaTreeParserTestCase.java
new file mode 100644
index 000000000..637966580
--- /dev/null
+++ b/test/java/org/apache/fop/intermediate/AreaTreeParserTestCase.java
@@ -0,0 +1,241 @@
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* $Id$ */
+
+package org.apache.fop.intermediate;
+
+import java.io.BufferedOutputStream;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.OutputStream;
+import java.net.MalformedURLException;
+
+import javax.xml.transform.Result;
+import javax.xml.transform.Source;
+import javax.xml.transform.Templates;
+import javax.xml.transform.Transformer;
+import javax.xml.transform.TransformerConfigurationException;
+import javax.xml.transform.dom.DOMResult;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.transform.sax.SAXResult;
+import javax.xml.transform.sax.SAXTransformerFactory;
+import javax.xml.transform.sax.TransformerHandler;
+import javax.xml.transform.stream.StreamResult;
+import javax.xml.transform.stream.StreamSource;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.io.output.ByteArrayOutputStream;
+import org.apache.fop.apps.FOUserAgent;
+import org.apache.fop.apps.Fop;
+import org.apache.fop.apps.MimeConstants;
+import org.apache.fop.area.AreaTreeModel;
+import org.apache.fop.area.AreaTreeParser;
+import org.apache.fop.area.RenderPagesModel;
+import org.apache.fop.fonts.FontInfo;
+import org.apache.fop.render.Renderer;
+import org.apache.fop.render.xml.XMLRenderer;
+
+//XML Unit 1.0: See http://xmlunit.sourceforge.net (BSD-style License)
+import org.custommonkey.xmlunit.XMLTestCase;
+import org.w3c.dom.Document;
+
+/**
+ * Tests the area tree parser.
+ */
+public class AreaTreeParserTestCase extends XMLTestCase {
+
+ private static SAXTransformerFactory tFactory
+ = (SAXTransformerFactory)SAXTransformerFactory.newInstance();
+ private static Templates stylesheet = null;
+
+ private File mainDir = new File("test/layoutengine");
+ private File testDir = new File(mainDir, "standard-testcases");
+
+ private String name;
+ private File testFile;
+
+ private File outputDir;
+ private Document intermediate;
+
+ /** @see junit.framework.TestCase#TestCase(String) */
+ public AreaTreeParserTestCase(String name) {
+ super(name);
+ }
+
+ /**
+ * Constructor for the test suite that is used for each test file.
+ * @param testFile the test file to run
+ */
+ public AreaTreeParserTestCase(File testFile) {
+ super(testFile.getName());
+ this.testFile = testFile;
+ }
+
+ private Templates getStylesheet() throws TransformerConfigurationException {
+ if (stylesheet == null) {
+ File xsltFile = new File(mainDir, "testcase2fo.xsl");
+ stylesheet = tFactory.newTemplates(new StreamSource(xsltFile));
+ }
+ return stylesheet;
+ }
+
+ /** @see junit.framework.TestCase#setUp() */
+ protected void setUp() throws Exception {
+ super.setUp();
+ String s = System.getProperty("fop.intermediate.outdir");
+ if (s != null && s.length() > 0) {
+ outputDir = new File(s);
+ outputDir.mkdirs();
+ }
+ File srcFile;
+ if (testFile != null) {
+ srcFile = testFile;
+ } else {
+ srcFile = new File(testDir, "block_font-style.xml");
+ }
+ this.name = srcFile.getName();
+ intermediate = buildAreaTreeXML(new StreamSource(srcFile), getStylesheet());
+ if (outputDir != null) {
+ saveDOM(intermediate, new File(outputDir, name + ".at1.xml"));
+ }
+ }
+
+
+ /**
+ * Tests the area tree parser by running the parsed area tree again through the area tree
+ * renderer. The source and result documents are compared to each other.
+ * @throws Exception if the test fails
+ */
+ public void testParserToAT() throws Exception {
+
+ Source src = new DOMSource(intermediate);
+ Document doc = parseAndRenderToAreaTree(src);
+ if (outputDir != null) {
+ File tgtFile = new File(outputDir, name + ".at2.xml");
+ saveDOM(doc, tgtFile);
+ }
+
+ assertXMLEqual(intermediate, doc);
+ }
+
+ private void saveDOM(Document doc, File tgtFile) throws Exception {
+ Transformer transformer = tFactory.newTransformer();
+ Source src = new DOMSource(doc);
+ Result res = new StreamResult(tgtFile);
+ transformer.transform(src, res);
+ }
+
+ /**
+ * Tests the area tree parser by sending the parsed area tree to the PDF Renderer. Some
+ * errors might be caught by the PDFRenderer.
+ * @throws Exception if the test fails
+ */
+ public void testParserToPDF() throws Exception {
+ OutputStream out;
+ if (outputDir != null) {
+ File tgtFile = new File(outputDir, name + ".pdf");
+ out = new FileOutputStream(tgtFile);
+ out = new BufferedOutputStream(out);
+ } else {
+ out = new ByteArrayOutputStream();
+ }
+ try {
+ Source src = new DOMSource(intermediate);
+ parseAndRender(src, out, MimeConstants.MIME_PDF);
+ } finally {
+ IOUtils.closeQuietly(out);
+ }
+ }
+
+ private FOUserAgent createUserAgent() {
+ FOUserAgent userAgent = new FOUserAgent();
+ try {
+ userAgent.setBaseURL(testDir.toURL().toExternalForm());
+ } catch (MalformedURLException e) {
+ //ignore, won't happen
+ }
+ return userAgent;
+ }
+
+ private Document buildAreaTreeXML(Source src, Templates stylesheet) throws Exception {
+ Transformer transformer;
+ if (stylesheet != null) {
+ transformer = stylesheet.newTransformer();
+ } else {
+ transformer = tFactory.newTransformer();
+ }
+
+ //Set up XMLRenderer to render to a DOM
+ TransformerHandler handler = tFactory.newTransformerHandler();
+ DOMResult domResult = new DOMResult();
+ handler.setResult(domResult);
+
+ FOUserAgent userAgent = createUserAgent();
+
+ //Create an instance of the target renderer so the XMLRenderer can use its font setup
+ Renderer targetRenderer = userAgent.getRendererFactory().createRenderer(
+ userAgent, MimeConstants.MIME_PDF);
+
+ XMLRenderer renderer = new XMLRenderer();
+ renderer.mimicRenderer(targetRenderer);
+ renderer.setTransformerHandler(handler);
+ renderer.setUserAgent(userAgent);
+
+ userAgent.setRendererOverride(renderer);
+
+ Fop fop = new Fop(MimeConstants.MIME_FOP_AREA_TREE, userAgent);
+ Result res = new SAXResult(fop.getDefaultHandler());
+ transformer.transform(src, res);
+
+ return (Document)domResult.getNode();
+ }
+
+ private void parseAndRender(Source src, OutputStream out, String mime) throws Exception {
+ AreaTreeParser parser = new AreaTreeParser();
+
+ FOUserAgent userAgent = createUserAgent();
+ FontInfo fontInfo = new FontInfo();
+ AreaTreeModel treeModel = new RenderPagesModel(userAgent,
+ mime, fontInfo, out);
+ parser.parse(src, treeModel, userAgent);
+ treeModel.endDocument();
+ }
+
+ private Document parseAndRenderToAreaTree(Source src) throws Exception {
+ AreaTreeParser parser = new AreaTreeParser();
+
+ //Set up XMLRenderer to render to a DOM
+ TransformerHandler handler = tFactory.newTransformerHandler();
+ DOMResult domResult = new DOMResult();
+ handler.setResult(domResult);
+ XMLRenderer renderer = new XMLRenderer();
+ renderer.setTransformerHandler(handler);
+
+ FOUserAgent userAgent = createUserAgent();
+ userAgent.setRendererOverride(renderer);
+ renderer.setUserAgent(userAgent);
+
+ FontInfo fontInfo = new FontInfo();
+ AreaTreeModel treeModel = new RenderPagesModel(userAgent,
+ MimeConstants.MIME_FOP_AREA_TREE, fontInfo, null);
+ parser.parse(src, treeModel, userAgent);
+ treeModel.endDocument();
+
+ return (Document)domResult.getNode();
+ }
+
+}
diff --git a/test/java/org/apache/fop/intermediate/IntermediateFormatTestSuite.java b/test/java/org/apache/fop/intermediate/IntermediateFormatTestSuite.java
new file mode 100644
index 000000000..77ade702c
--- /dev/null
+++ b/test/java/org/apache/fop/intermediate/IntermediateFormatTestSuite.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* $Id$ */
+
+package org.apache.fop.intermediate;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.Collection;
+import java.util.Iterator;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+import org.apache.fop.layoutengine.LayoutEngineTestSuite;
+
+/**
+ * JUnit test suite for the intermediate format
+ */
+public class IntermediateFormatTestSuite {
+
+ /**
+ * @return the test suite with all the tests (one for each XML file)
+ * @throws IOException in case of an I/O problem
+ */
+ public static Test suite() throws IOException {
+ TestSuite suite = new TestSuite();
+
+ Collection files = LayoutEngineTestSuite.getTestFiles();
+
+ Iterator i = files.iterator();
+ while (i.hasNext()) {
+ File f = (File)i.next();
+ addTestCase(suite, f);
+ }
+
+ return suite;
+ }
+
+ private static void addTestCase(TestSuite suite,
+ final File f) {
+ suite.addTest(new AreaTreeParserTestCase(f) {
+ public void runTest() throws Exception {
+ org.apache.commons.logging.LogFactory.getLog(
+ this.getClass()).info("Starting " + f.getName());
+ testParserToAT();
+ testParserToPDF();
+ }
+ });
+ }
+
+}
diff --git a/test/java/org/apache/fop/layoutengine/LayoutEngineTestSuite.java b/test/java/org/apache/fop/layoutengine/LayoutEngineTestSuite.java
index f90d9f8e7..12e6834f8 100644
--- a/test/java/org/apache/fop/layoutengine/LayoutEngineTestSuite.java
+++ b/test/java/org/apache/fop/layoutengine/LayoutEngineTestSuite.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2005 The Apache Software Foundation.
+ * Copyright 2006 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,11 +18,8 @@
package org.apache.fop.layoutengine;
-import java.io.BufferedReader;
import java.io.File;
-import java.io.FileReader;
import java.io.IOException;
-import java.io.Reader;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
@@ -129,18 +126,11 @@ public class LayoutEngineTestSuite {
}
/**
- * @return the test suite with all the tests (one for each XML file)
- * @throws IOException in case of an I/O problem
+ * @return a Collection of File instances containing all the test cases set up for processing.
+ * @throws IOException if there's a problem gathering the list of test files
*/
- public static Test suite() throws IOException {
- TestSuite suite = new TestSuite();
-
+ public static Collection getTestFiles() throws IOException {
File mainDir = new File("test/layoutengine");
- File backupDir = new File("build/test-results/layoutengine");
- backupDir.mkdirs();
-
- final LayoutEngineTester tester = new LayoutEngineTester(backupDir);
-
IOFileFilter filter;
String single = System.getProperty("fop.layoutengine.single");
String startsWith = System.getProperty("fop.layoutengine.starts-with");
@@ -166,6 +156,22 @@ public class LayoutEngineTestSuite {
filter, TrueFileFilter.INSTANCE);
files.addAll(privateFiles);
}
+ return files;
+ }
+
+ /**
+ * @return the test suite with all the tests (one for each XML file)
+ * @throws IOException in case of an I/O problem
+ */
+ public static Test suite() throws IOException {
+ TestSuite suite = new TestSuite();
+
+ File backupDir = new File("build/test-results/layoutengine");
+ backupDir.mkdirs();
+
+ Collection files = getTestFiles();
+
+ final LayoutEngineTester tester = new LayoutEngineTester(backupDir);
Iterator i = files.iterator();
while (i.hasNext()) {
File f = (File)i.next();
diff --git a/test/java/org/apache/fop/traits/BorderPropsTestCase.java b/test/java/org/apache/fop/traits/BorderPropsTestCase.java
new file mode 100644
index 000000000..17cbcb22e
--- /dev/null
+++ b/test/java/org/apache/fop/traits/BorderPropsTestCase.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* $Id$ */
+
+package org.apache.fop.traits;
+
+import org.apache.fop.area.Trait;
+import org.apache.fop.fo.Constants;
+
+import junit.framework.TestCase;
+
+/**
+ * Tests the BorderProps class.
+ */
+public class BorderPropsTestCase extends TestCase {
+
+ /**
+ * Test serialization and deserialization to/from String.
+ * @throws Exception if an error occurs
+ */
+ public void testSerialization() throws Exception {
+ Trait.Color col = new Trait.Color(1.0f, 1.0f, 0.5f, 1.0f);
+ //Normalize: Avoid false alarms due to color conversion (rounding)
+ col = Trait.Color.valueOf(col.toString());
+
+ BorderProps b1 = new BorderProps(Constants.EN_DOUBLE, 1250,
+ col, BorderProps.COLLAPSE_OUTER);
+ String ser = b1.toString();
+ BorderProps b2 = BorderProps.valueOf(ser);
+ assertEquals(b1, b2);
+
+ b1 = new BorderProps(Constants.EN_INSET, 9999,
+ col, BorderProps.SEPARATE);
+ ser = b1.toString();
+ b2 = BorderProps.valueOf(ser);
+ assertEquals(b1, b2);
+ }
+
+}
diff --git a/test/java/org/apache/fop/traits/TraitColorTestCase.java b/test/java/org/apache/fop/traits/TraitColorTestCase.java
new file mode 100644
index 000000000..4df691f8d
--- /dev/null
+++ b/test/java/org/apache/fop/traits/TraitColorTestCase.java
@@ -0,0 +1,75 @@
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* $Id$ */
+
+package org.apache.fop.traits;
+
+import org.apache.fop.area.Trait;
+
+import junit.framework.TestCase;
+
+/**
+ * Tests the Trait.Color class.
+ */
+public class TraitColorTestCase extends TestCase {
+
+ /**
+ * Test serialization to String.
+ * @throws Exception if an error occurs
+ */
+ public void testSerialization() throws Exception {
+ Trait.Color col = new Trait.Color(1.0f, 1.0f, 0.5f, 1.0f);
+ String s = col.toString();
+ assertEquals("#ffff7f", s);
+
+ col = new Trait.Color(1.0f, 0.0f, 0.0f, 0.8f);
+ s = col.toString();
+ assertEquals("#ff0000cc", s);
+ }
+
+ /**
+ * Test deserialization from String.
+ * @throws Exception if an error occurs
+ */
+ public void testDeserialization() throws Exception {
+ float tolerance = 0.5f / 255; //due to color value conversion
+
+ Trait.Color col = Trait.Color.valueOf("#ffff7f");
+ assertEquals(1.0f, col.getRed(), 0.0f);
+ assertEquals(1.0f, col.getGreen(), 0.0f);
+ assertEquals(0.5f, col.getBlue(), tolerance);
+ assertEquals(1.0f, col.getAlpha(), 0.0f);
+
+ col = Trait.Color.valueOf("#ff0000cc");
+ assertEquals(1.0f, col.getRed(), 0.0f);
+ assertEquals(0.0f, col.getGreen(), 0.0f);
+ assertEquals(0.0f, col.getBlue(), 0.0f);
+ assertEquals(0.8f, col.getAlpha(), tolerance);
+ }
+
+ /**
+ * Test equals().
+ * @throws Exception if an error occurs
+ */
+ public void testEquals() throws Exception {
+ Trait.Color col1 = Trait.Color.valueOf("#ff0000cc");
+ Trait.Color col2 = Trait.Color.valueOf("#ff0000cc");
+ assertTrue(col1 != col2);
+ assertEquals(col1, col2);
+ }
+
+}
diff --git a/test/layoutengine/standard-testcases/external-graphic_border_padding.xml b/test/layoutengine/standard-testcases/external-graphic_border_padding.xml
index a05c367b9..a91722b74 100644
--- a/test/layoutengine/standard-testcases/external-graphic_border_padding.xml
+++ b/test/layoutengine/standard-testcases/external-graphic_border_padding.xml
@@ -60,7 +60,7 @@
<eval expected="10000" xpath="//flow/block[1]/lineArea/viewport/@padding-after"/>
<eval expected="5000" xpath="//flow/block[1]/lineArea/viewport/@padding-start"/>
<eval expected="20000" xpath="//flow/block[1]/lineArea/viewport/@padding-end"/>
- <eval expected="20000 20000 46080 46080" xpath="//flow/block[1]/lineArea/viewport/image/@pos"/>
+ <eval expected="20000 20000 46080 46080" xpath="//flow/block[1]/lineArea/viewport/@pos"/>
<!-- second e-g -->
<eval expected="46080" xpath="//flow/block[2]/lineArea/viewport/@ipd"/>
<eval expected="46080" xpath="//flow/block[2]/lineArea/viewport/@bpd"/>
@@ -76,6 +76,6 @@
<eval expected="10000" xpath="//flow/block[2]/lineArea/viewport/@padding-after"/>
<eval expected="5000" xpath="//flow/block[2]/lineArea/viewport/@padding-start"/>
<eval expected="20000" xpath="//flow/block[2]/lineArea/viewport/@padding-end"/>
- <eval expected="20000 20000 46080 46080" xpath="//flow/block[2]/lineArea/viewport/image/@pos"/>
+ <eval expected="20000 20000 46080 46080" xpath="//flow/block[2]/lineArea/viewport/@pos"/>
</checks>
</testcase>
diff --git a/test/layoutengine/standard-testcases/external-graphic_display-align.xml b/test/layoutengine/standard-testcases/external-graphic_display-align.xml
index 76d74b791..4a8d7eb9c 100644
--- a/test/layoutengine/standard-testcases/external-graphic_display-align.xml
+++ b/test/layoutengine/standard-testcases/external-graphic_display-align.xml
@@ -60,26 +60,26 @@
<eval expected="46080" xpath="//flow/block[2]/lineArea/viewport/@ipda"/>
<eval expected="60000" xpath="//flow/block[2]/lineArea/viewport/@bpd"/>
<eval expected="60000" xpath="//flow/block[2]/lineArea/viewport/@bpda"/>
- <eval expected="0 0 46080 46080" xpath="//flow/block[2]/lineArea/viewport/image/@pos"/>
+ <eval expected="0 0 46080 46080" xpath="//flow/block[2]/lineArea/viewport/@pos"/>
<eval expected="46080" xpath="//flow/block[4]/lineArea/viewport/@ipd"/>
<eval expected="46080" xpath="//flow/block[4]/lineArea/viewport/@ipda"/>
<eval expected="60000" xpath="//flow/block[4]/lineArea/viewport/@bpd"/>
<eval expected="60000" xpath="//flow/block[4]/lineArea/viewport/@bpda"/>
- <eval expected="0 0 46080 46080" xpath="//flow/block[4]/lineArea/viewport/image/@pos"/>
+ <eval expected="0 0 46080 46080" xpath="//flow/block[4]/lineArea/viewport/@pos"/>
<eval expected="46080" xpath="//flow/block[6]/lineArea/viewport/@ipd"/>
<eval expected="46080" xpath="//flow/block[6]/lineArea/viewport/@ipda"/>
<eval expected="60000" xpath="//flow/block[6]/lineArea/viewport/@bpd"/>
<eval expected="60000" xpath="//flow/block[6]/lineArea/viewport/@bpda"/>
- <eval expected="0 0 46080 46080" xpath="//flow/block[6]/lineArea/viewport/image/@pos"/>
+ <eval expected="0 0 46080 46080" xpath="//flow/block[6]/lineArea/viewport/@pos"/>
<eval expected="46080" xpath="//flow/block[8]/lineArea/viewport/@ipd"/>
<eval expected="46080" xpath="//flow/block[8]/lineArea/viewport/@ipda"/>
<eval expected="60000" xpath="//flow/block[8]/lineArea/viewport/@bpd"/>
<eval expected="60000" xpath="//flow/block[8]/lineArea/viewport/@bpda"/>
- <eval expected="0 6960 46080 46080" xpath="//flow/block[8]/lineArea/viewport/image/@pos"/>
+ <eval expected="0 6960 46080 46080" xpath="//flow/block[8]/lineArea/viewport/@pos"/>
<eval expected="46080" xpath="//flow/block[10]/lineArea/viewport/@ipd"/>
<eval expected="46080" xpath="//flow/block[10]/lineArea/viewport/@ipda"/>
<eval expected="60000" xpath="//flow/block[10]/lineArea/viewport/@bpd"/>
<eval expected="60000" xpath="//flow/block[10]/lineArea/viewport/@bpda"/>
- <eval expected="0 13920 46080 46080" xpath="//flow/block[10]/lineArea/viewport/image/@pos"/>
+ <eval expected="0 13920 46080 46080" xpath="//flow/block[10]/lineArea/viewport/@pos"/>
</checks>
</testcase>
diff --git a/test/layoutengine/standard-testcases/external-graphic_svg.xml b/test/layoutengine/standard-testcases/external-graphic_svg.xml
index 5f13dc313..6c60296b1 100644
--- a/test/layoutengine/standard-testcases/external-graphic_svg.xml
+++ b/test/layoutengine/standard-testcases/external-graphic_svg.xml
@@ -56,19 +56,19 @@
<eval expected="144000" xpath="//flow/block[2]/lineArea/viewport/@ipda"/>
<eval expected="144000" xpath="//flow/block[2]/lineArea/viewport/@bpd"/>
<eval expected="144000" xpath="//flow/block[2]/lineArea/viewport/@bpda"/>
- <eval expected="0 0 144000 144000" xpath="//flow/block[2]/lineArea/viewport/image/@pos"/>
+ <eval expected="0 0 144000 144000" xpath="//flow/block[2]/lineArea/viewport/@pos"/>
<eval expected="288000" xpath="//flow/block[4]/lineArea/viewport/@ipd"/>
<eval expected="288000" xpath="//flow/block[4]/lineArea/viewport/@ipda"/>
<eval expected="288000" xpath="//flow/block[4]/lineArea/viewport/@bpd"/>
<eval expected="288000" xpath="//flow/block[4]/lineArea/viewport/@bpda"/>
- <eval expected="0 0 288000 288000" xpath="//flow/block[4]/lineArea/viewport/image/@pos"/>
+ <eval expected="0 0 288000 288000" xpath="//flow/block[4]/lineArea/viewport/@pos"/>
<eval expected="432000" xpath="//flow/block[6]/lineArea/viewport/@ipd"/>
<eval expected="432000" xpath="//flow/block[6]/lineArea/viewport/@ipda"/>
<eval expected="288000" xpath="//flow/block[6]/lineArea/viewport/@bpd"/>
<eval expected="288000" xpath="//flow/block[6]/lineArea/viewport/@bpda"/>
- <eval expected="0 0 432000 288000" xpath="//flow/block[6]/lineArea/viewport/image/@pos"/>
+ <eval expected="0 0 432000 288000" xpath="//flow/block[6]/lineArea/viewport/@pos"/>
<!-- TODO: This evaluates nicely to 16000mpt with 72dpi in the FOUserAgent but will result
in 16080 for 300dpi which is caused by rounding errors because pixels are used internally. -->
@@ -76,6 +76,6 @@
<eval expected="16000" xpath="//flow/block[8]/lineArea/viewport/@ipda"/>
<eval expected="16000" xpath="//flow/block[8]/lineArea/viewport/@bpd"/>
<eval expected="16000" xpath="//flow/block[8]/lineArea/viewport/@bpda"/>
- <eval expected="0 0 16000 16000" xpath="//flow/block[8]/lineArea/viewport/image/@pos"/>
+ <eval expected="0 0 16000 16000" xpath="//flow/block[8]/lineArea/viewport/@pos"/>
</checks>
</testcase>
diff --git a/test/layoutengine/standard-testcases/instream-foreign-object_border_padding.xml b/test/layoutengine/standard-testcases/instream-foreign-object_border_padding.xml
index 16d89eb22..aadcb4bf9 100644
--- a/test/layoutengine/standard-testcases/instream-foreign-object_border_padding.xml
+++ b/test/layoutengine/standard-testcases/instream-foreign-object_border_padding.xml
@@ -74,7 +74,7 @@
<eval expected="10000" xpath="//flow/block[1]/lineArea/viewport/@padding-after"/>
<eval expected="5000" xpath="//flow/block[1]/lineArea/viewport/@padding-start"/>
<eval expected="20000" xpath="//flow/block[1]/lineArea/viewport/@padding-end"/>
- <eval expected="20000 20000 20000 20000" xpath="//flow/block[1]/lineArea/viewport/foreignObject/@pos"/>
+ <eval expected="20000 20000 20000 20000" xpath="//flow/block[1]/lineArea/viewport/@pos"/>
<!-- second i-f-o -->
<eval expected="20000" xpath="//flow/block[2]/lineArea/viewport/@ipd"/>
<eval expected="20000" xpath="//flow/block[2]/lineArea/viewport/@bpd"/>
@@ -90,6 +90,6 @@
<eval expected="10000" xpath="//flow/block[2]/lineArea/viewport/@padding-after"/>
<eval expected="5000" xpath="//flow/block[2]/lineArea/viewport/@padding-start"/>
<eval expected="20000" xpath="//flow/block[2]/lineArea/viewport/@padding-end"/>
- <eval expected="20000 20000 20000 20000" xpath="//flow/block[2]/lineArea/viewport/foreignObject/@pos"/>
+ <eval expected="20000 20000 20000 20000" xpath="//flow/block[2]/lineArea/viewport/@pos"/>
</checks>
</testcase>
diff --git a/test/layoutengine/standard-testcases/instream-foreign-object_display-align.xml b/test/layoutengine/standard-testcases/instream-foreign-object_display-align.xml
index a113ccc54..758c0f676 100644
--- a/test/layoutengine/standard-testcases/instream-foreign-object_display-align.xml
+++ b/test/layoutengine/standard-testcases/instream-foreign-object_display-align.xml
@@ -95,26 +95,26 @@
<eval expected="20000" xpath="//flow/block[2]/lineArea/viewport/@ipda"/>
<eval expected="30000" xpath="//flow/block[2]/lineArea/viewport/@bpd"/>
<eval expected="30000" xpath="//flow/block[2]/lineArea/viewport/@bpda"/>
- <eval expected="0 0 20000 20000" xpath="//flow/block[2]/lineArea/viewport/foreignObject/@pos"/>
+ <eval expected="0 0 20000 20000" xpath="//flow/block[2]/lineArea/viewport/@pos"/>
<eval expected="20000" xpath="//flow/block[4]/lineArea/viewport/@ipd"/>
<eval expected="20000" xpath="//flow/block[4]/lineArea/viewport/@ipda"/>
<eval expected="30000" xpath="//flow/block[4]/lineArea/viewport/@bpd"/>
<eval expected="30000" xpath="//flow/block[4]/lineArea/viewport/@bpda"/>
- <eval expected="0 0 20000 20000" xpath="//flow/block[4]/lineArea/viewport/foreignObject/@pos"/>
+ <eval expected="0 0 20000 20000" xpath="//flow/block[4]/lineArea/viewport/@pos"/>
<eval expected="20000" xpath="//flow/block[6]/lineArea/viewport/@ipd"/>
<eval expected="20000" xpath="//flow/block[6]/lineArea/viewport/@ipda"/>
<eval expected="30000" xpath="//flow/block[6]/lineArea/viewport/@bpd"/>
<eval expected="30000" xpath="//flow/block[6]/lineArea/viewport/@bpda"/>
- <eval expected="0 0 20000 20000" xpath="//flow/block[6]/lineArea/viewport/foreignObject/@pos"/>
+ <eval expected="0 0 20000 20000" xpath="//flow/block[6]/lineArea/viewport/@pos"/>
<eval expected="20000" xpath="//flow/block[8]/lineArea/viewport/@ipd"/>
<eval expected="20000" xpath="//flow/block[8]/lineArea/viewport/@ipda"/>
<eval expected="30000" xpath="//flow/block[8]/lineArea/viewport/@bpd"/>
<eval expected="30000" xpath="//flow/block[8]/lineArea/viewport/@bpda"/>
- <eval expected="0 5000 20000 20000" xpath="//flow/block[8]/lineArea/viewport/foreignObject/@pos"/>
+ <eval expected="0 5000 20000 20000" xpath="//flow/block[8]/lineArea/viewport/@pos"/>
<eval expected="20000" xpath="//flow/block[10]/lineArea/viewport/@ipd"/>
<eval expected="20000" xpath="//flow/block[10]/lineArea/viewport/@ipda"/>
<eval expected="30000" xpath="//flow/block[10]/lineArea/viewport/@bpd"/>
<eval expected="30000" xpath="//flow/block[10]/lineArea/viewport/@bpda"/>
- <eval expected="0 10000 20000 20000" xpath="//flow/block[10]/lineArea/viewport/foreignObject/@pos"/>
+ <eval expected="0 10000 20000 20000" xpath="//flow/block[10]/lineArea/viewport/@pos"/>
</checks>
</testcase>