aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorJeremias Maerki <jeremias@apache.org>2006-02-09 08:54:06 +0000
committerJeremias Maerki <jeremias@apache.org>2006-02-09 08:54:06 +0000
commit88879d05069e6d5fff9da743bd08f77d3a883f22 (patch)
treeebd124d6cc3fd309399229b91ec0e6b2e3e92ad4 /test
parent3606df4b663e7b7189a625efeec89974eed5c41d (diff)
downloadxmlgraphics-fop-88879d05069e6d5fff9da743bd08f77d3a883f22.tar.gz
xmlgraphics-fop-88879d05069e6d5fff9da743bd08f77d3a883f22.zip
Bugfix: padding-top and padding-bottom on list-items could lead to wrong page break decisions and thus to overlapping text.
Bugfix: break-before and break-after were ignored on list-items. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@376226 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'test')
-rw-r--r--test/layoutengine/standard-testcases/list-item_break-before_break-after.xml83
-rw-r--r--test/layoutengine/standard-testcases/list-item_padding.xml82
2 files changed, 165 insertions, 0 deletions
diff --git a/test/layoutengine/standard-testcases/list-item_break-before_break-after.xml b/test/layoutengine/standard-testcases/list-item_break-before_break-after.xml
new file mode 100644
index 000000000..b74f27497
--- /dev/null
+++ b/test/layoutengine/standard-testcases/list-item_break-before_break-after.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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$ -->
+<testcase>
+ <info>
+ <p>
+ This test checks element list generation with breaks on list-items.
+ </p>
+ </info>
+ <fo>
+ <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="normal" page-width="5in" page-height="5in">
+ <fo:region-body/>
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+ <fo:page-sequence master-reference="normal">
+ <fo:flow flow-name="xsl-region-body">
+ <fo:list-block provisional-distance-between-starts="1in" provisional-label-separation="0.1in">
+ <fo:list-item background-color="yellow" break-after="page">
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>label 1</fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block>
+ body 1: We'll break after this yellow list item.
+ </fo:block>
+ </fo:list-item-body>
+ </fo:list-item>
+ <fo:list-item>
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>label 2</fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block>
+ body 2: This is just a boring list item.
+ </fo:block>
+ </fo:list-item-body>
+ </fo:list-item>
+ <fo:list-item background-color="orange" break-before="page">
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>label 3</fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block>
+ body 3: We had a break before this orange list item.
+ </fo:block>
+ </fo:list-item-body>
+ </fo:list-item>
+ </fo:list-block>
+ </fo:flow>
+ </fo:page-sequence>
+ </fo:root>
+ </fo>
+ <checks>
+ <element-list category="breaker" index="0">
+ <box w="14400"/>
+ <skip>3</skip>
+ </element-list>
+ <element-list category="breaker" index="1">
+ <box w="14400"/>
+ <skip>3</skip>
+ </element-list>
+ <element-list category="breaker" index="2">
+ <box w="14400"/>
+ <skip>3</skip>
+ </element-list>
+ </checks>
+</testcase>
diff --git a/test/layoutengine/standard-testcases/list-item_padding.xml b/test/layoutengine/standard-testcases/list-item_padding.xml
new file mode 100644
index 000000000..fa76cdef1
--- /dev/null
+++ b/test/layoutengine/standard-testcases/list-item_padding.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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$ -->
+<testcase>
+ <info>
+ <p>
+ This test checks element list generation with padding in lists (list-item).
+ </p>
+ </info>
+ <fo>
+ <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="normal" page-width="5in" page-height="5in">
+ <fo:region-body/>
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+ <fo:page-sequence master-reference="normal">
+ <fo:flow flow-name="xsl-region-body">
+ <fo:list-block provisional-distance-between-starts="1in" provisional-label-separation="0.1in">
+ <fo:list-item padding-top="5pt" padding-bottom="8pt" background-color="yellow">
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>label 1</fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block>
+ body 1: We should have 5pt padding-before and 8pt padding-after for this yellow list item.
+ </fo:block>
+ </fo:list-item-body>
+ </fo:list-item>
+ <fo:list-item padding-top="5pt" padding-bottom="8pt">
+ <fo:list-item-label end-indent="label-end()">
+ <fo:block>label 2</fo:block>
+ </fo:list-item-label>
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block>
+ body 2: We should have 5pt padding-before and 8pt padding-after for this list item.
+ </fo:block>
+ </fo:list-item-body>
+ </fo:list-item>
+ </fo:list-block>
+ </fo:flow>
+ </fo:page-sequence>
+ </fo:root>
+ </fo>
+ <checks>
+ <element-list category="breaker">
+ <box w="0"/> <!-- Starting SpaceHandlingPosition -->
+ <penalty w="0" p="INF"/>
+ <glue w="5000" y="0" z="0"/>
+ <box w="28800"/>
+ <penalty w="0" p="INF"/>
+ <glue w="8000" y="0" z="0"/>
+
+ <penalty w="0" p="0"/>
+
+ <box w="0"/>
+ <penalty w="0" p="INF"/>
+ <glue w="5000" y="0" z="0"/>
+ <box w="28800"/>
+ <box w="0"/> <!-- SpaceHandlingPosition -->
+ <penalty w="0" p="INF"/>
+ <glue w="8000" y="0" z="0"/>
+ <box w="0"/>
+
+ <skip>3</skip>
+ </element-list>
+ </checks>
+</testcase>