]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
the broken inline border padding with nested block test
authorManuel Mall <manuel@apache.org>
Thu, 13 Oct 2005 14:17:25 +0000 (14:17 +0000)
committerManuel Mall <manuel@apache.org>
Thu, 13 Oct 2005 14:17:25 +0000 (14:17 +0000)
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@320778 13f79535-47bb-0310-9956-ffa450edef68

test/layoutengine/testcases/inline_border_padding_block_nested_2.xml [new file with mode: 0755]

diff --git a/test/layoutengine/testcases/inline_border_padding_block_nested_2.xml b/test/layoutengine/testcases/inline_border_padding_block_nested_2.xml
new file mode 100755 (executable)
index 0000000..a8043e3
--- /dev/null
@@ -0,0 +1,169 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 2005 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$ -->
+<testcase>
+  <info>
+    <p>
+      This test checks fo:inlines with border and padding properties and nested inner blocks.
+      The 2nd and 3rd tests currently fail with a class cast exception - once that is fixed the checks
+      below need to be updated to the correct measurements.
+    </p>
+  </info>
+  <fo>
+    <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:svg="http://www.w3.org/2000/svg">
+      <fo:layout-master-set>
+        <fo:simple-page-master master-name="normal" page-width="5in" page-height="5in" margin="5pt">
+          <fo:region-body/>
+        </fo:simple-page-master>
+      </fo:layout-master-set>
+      <fo:page-sequence master-reference="normal" white-space-collapse="true" language="en">
+        <fo:flow flow-name="xsl-region-body" font-size="10pt">
+          <fo:block background-color="silver" margin="3pt 0pt 3pt 0pt">
+            Before inline
+            <fo:inline 
+              border="solid 1pt red" 
+              border-start-width.length="1pt" 
+              border-start-width.conditionality="retain" 
+              border-end-width.length="1pt" 
+              border-end-width.conditionality="retain" 
+              padding="2pt"
+              padding-start.length="2pt" 
+              padding-start.conditionality="retain" 
+              padding-end.length="2pt" 
+              padding-end.conditionality="retain" 
+              background-color="yellow"><fo:block>starting with a block</fo:block>
+              after block</fo:inline>
+            After inline with conditionality="retain"
+          </fo:block>
+          <fo:block background-color="silver" margin="3pt 0pt 3pt 0pt">
+            Before inline
+            <fo:inline 
+              border="solid 1pt red" 
+              border-start-width.length="1pt" 
+              border-start-width.conditionality="retain" 
+              border-end-width.length="1pt" 
+              border-end-width.conditionality="retain" 
+              padding="2pt"
+              padding-start.length="2pt" 
+              padding-start.conditionality="retain" 
+              padding-end.length="2pt" 
+              padding-end.conditionality="retain" 
+              background-color="yellow">before block
+              <fo:block>having a block at the end of an inline</fo:block></fo:inline>
+            After inline with conditionality="retain"
+          </fo:block>
+          <fo:block background-color="silver" margin="3pt 0pt 3pt 0pt">
+            Before inline
+            <fo:inline 
+              border="solid 1pt red"
+              border-start-width.length="1pt" 
+              border-end-width.length="1pt" 
+              border-start-width.length="1pt" 
+              border-start-width.conditionality="retain" 
+              border-end-width.length="1pt" 
+              border-end-width.conditionality="retain" 
+              padding="2pt"
+              padding-start.length="2pt" 
+              padding-start.conditionality="retain" 
+              padding-end.length="2pt" 
+              padding-end.conditionality="retain" 
+              background-color="yellow">before block
+              <fo:block>As far as the laws of mathematics refer to reality, they are not certain,
+            and as far as they are certain, they do not refer to reality - Albert Einstein</fo:block>
+            after block</fo:inline>
+            After inline with conditionality="retain"
+          </fo:block>
+        </fo:flow>
+      </fo:page-sequence>
+    </fo:root>
+  </fo>
+  <checks>
+    <eval expected="344000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@ipd"/>
+    <eval expected="350000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@ipda"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@border-after"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@border-before"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@border-start"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@border-end"/>
+    <eval expected="2000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@padding-after"/>
+    <eval expected="2000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@padding-before"/>
+    <eval expected="2000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@padding-start"/>
+    <eval expected="2000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@padding-end"/>
+    <eval expected="46130" xpath="//flow/block[2]/lineArea[3]/inlineparent/@ipd"/>
+    <eval expected="52130" xpath="//flow/block[2]/lineArea[3]/inlineparent/@ipda"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[3]/inlineparent/@border-after"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[3]/inlineparent/@border-before"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[3]/inlineparent/@border-start"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[3]/inlineparent/@border-end"/>
+    <eval expected="2000" xpath="//flow/block[2]/lineArea[3]/inlineparent/@padding-after"/>
+    <eval expected="2000" xpath="//flow/block[2]/lineArea[3]/inlineparent/@padding-before"/>
+    <eval expected="2000" xpath="//flow/block[2]/lineArea[3]/inlineparent/@padding-start"/>
+    <eval expected="2000" xpath="//flow/block[2]/lineArea[3]/inlineparent/@padding-end"/>
+
+    <eval expected="54470" xpath="//flow/block[5]/lineArea[1]/inlineparent/@ipd"/>
+    <eval expected="60470" xpath="//flow/block[5]/lineArea[1]/inlineparent/@ipda"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[1]/inlineparent/@border-after"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[1]/inlineparent/@border-before"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[1]/inlineparent/@border-start"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[1]/inlineparent/@border-end"/>
+    <eval expected="2000" xpath="//flow/block[5]/lineArea[1]/inlineparent/@padding-after"/>
+    <eval expected="2000" xpath="//flow/block[5]/lineArea[1]/inlineparent/@padding-before"/>
+    <eval expected="2000" xpath="//flow/block[5]/lineArea[1]/inlineparent/@padding-start"/>
+    <eval expected="2000" xpath="//flow/block[5]/lineArea[1]/inlineparent/@padding-end"/>
+    <eval expected="344000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@ipd"/>
+    <eval expected="350000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@ipda"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@border-after"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@border-before"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@border-start"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@border-end"/>
+    <eval expected="2000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@padding-after"/>
+    <eval expected="2000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@padding-before"/>
+    <eval expected="2000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@padding-start"/>
+    <eval expected="2000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@padding-end"/>
+    
+    <eval expected="54470" xpath="//flow/block[8]/lineArea[1]/inlineparent/@ipd"/>
+    <eval expected="60470" xpath="//flow/block[8]/lineArea[1]/inlineparent/@ipda"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[1]/inlineparent/@border-after"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[1]/inlineparent/@border-before"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[1]/inlineparent/@border-start"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[1]/inlineparent/@border-end"/>
+    <eval expected="2000" xpath="//flow/block[8]/lineArea[1]/inlineparent/@padding-after"/>
+    <eval expected="2000" xpath="//flow/block[8]/lineArea[1]/inlineparent/@padding-before"/>
+    <eval expected="2000" xpath="//flow/block[8]/lineArea[1]/inlineparent/@padding-start"/>
+    <eval expected="2000" xpath="//flow/block[8]/lineArea[1]/inlineparent/@padding-end"/>
+    <eval expected="344000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@ipd"/>
+    <eval expected="350000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@ipda"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@border-after"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@border-before"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@border-start"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@border-end"/>
+    <eval expected="2000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@padding-after"/>
+    <eval expected="2000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@padding-before"/>
+    <eval expected="2000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@padding-start"/>
+    <eval expected="2000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@padding-end"/>
+    <eval expected="46130" xpath="//flow/block[8]/lineArea[3]/inlineparent/@ipd"/>
+    <eval expected="49130" xpath="//flow/block[8]/lineArea[3]/inlineparent/@ipda"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[3]/inlineparent/@border-after"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[3]/inlineparent/@border-before"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[3]/inlineparent/@border-start"/>
+    <eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[3]/inlineparent/@border-end"/>
+    <eval expected="1000" xpath="//flow/block[8]/lineArea[3]/inlineparent/@padding-after"/>
+    <eval expected="1000" xpath="//flow/block[8]/lineArea[3]/inlineparent/@padding-before"/>
+    <eval expected="2000" xpath="//flow/block[8]/lineArea[3]/inlineparent/@padding-start"/>
+    <eval expected="2000" xpath="//flow/block[8]/lineArea[3]/inlineparent/@padding-end"/>
+    
+  </checks>
+</testcase>