diff options
author | Jeremias Maerki <jeremias@apache.org> | 2007-11-27 08:36:23 +0000 |
---|---|---|
committer | Jeremias Maerki <jeremias@apache.org> | 2007-11-27 08:36:23 +0000 |
commit | ed5ae377e68e9dcbb849241bf6f2be18fd08ea83 (patch) | |
tree | 1a467b2ca425c51a085db1f1c81b9e4b550f0a01 /test/layoutengine/standard-testcases | |
parent | 80433dd208568dcfa0dabe0bd58e59f14487d353 (diff) | |
download | xmlgraphics-fop-ed5ae377e68e9dcbb849241bf6f2be18fd08ea83.tar.gz xmlgraphics-fop-ed5ae377e68e9dcbb849241bf6f2be18fd08ea83.zip |
Bugzilla #40230:
Bugfix: no empty page is generated anymore if there's no content after a break-after.
Bugzilla #43917:
Bugfix for border-after painting and element list generation when a forced break is involved.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@598558 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'test/layoutengine/standard-testcases')
4 files changed, 99 insertions, 7 deletions
diff --git a/test/layoutengine/standard-testcases/block_border_bug43917.xml b/test/layoutengine/standard-testcases/block_border_bug43917.xml new file mode 100644 index 000000000..5ea0eed7a --- /dev/null +++ b/test/layoutengine/standard-testcases/block_border_bug43917.xml @@ -0,0 +1,87 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You 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 Bugzilla bug #43917 where the lower border wasn't painted if there was + a hard break after the block. + </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:block border="1pt solid black" border-after-width="1.1pt" break-after="page"> + <fo:block>Line 1</fo:block> + <fo:block>Line 2</fo:block> + </fo:block> + </fo:flow> + </fo:page-sequence> + <fo:page-sequence master-reference="normal"> + <fo:flow flow-name="xsl-region-body"> + <fo:block border="1pt solid black" border-after-width="1.1pt"> + <fo:block>Line 1</fo:block> + <fo:block break-after="page">Line 2</fo:block> + </fo:block> + </fo:flow> + </fo:page-sequence> + </fo:root> + </fo> + <checks> + <element-list category="breaker" index="0"> + <box w="0"/> <!-- SpaceHandlingPosition --> + <penalty w="0" p="INF"/> + <glue w="1000"/> <!-- border-before --> + + <box w="14400"/> <!-- Line 1 --> + <penalty w="0" p="0"/> <!--SpabeHandlingBreakPosition--> + <box w="14400"/> <!-- Line 2 --> + + <penalty w="0" p="INF"/> + <glue w="1100"/> <!-- border-after --> + <box w="0" aux="true"/> <!-- aux. block --> + + <skip>3</skip> <!-- the last of the three holds a SpaceHandlingBreakPosition --> + </element-list> + <element-list category="breaker" index="1"> + <box w="0"/> <!-- SpaceHandlingPosition --> + <penalty w="0" p="INF"/> + <glue w="1000"/> <!-- border-before --> + + <box w="14400"/> <!-- Line 1 --> + <penalty w="0" p="0"/> <!--SpabeHandlingBreakPosition--> + <box w="14400"/> <!-- Line 2 --> + + <penalty w="0" p="INF"/> + <glue w="1100"/> <!-- border-after --> + <box w="0" aux="true"/> <!-- aux. block --> + + <skip>3</skip> + </element-list> + <eval expected="(solid,#000000,1000)" xpath="(//flow)[1]/block[1]/@border-before"/> + <eval expected="(solid,#000000,1100)" xpath="(//flow)[1]/block[1]/@border-after"/> + <eval expected="(solid,#000000,1000)" xpath="(//flow)[2]/block[1]/@border-before"/> + <eval expected="(solid,#000000,1100)" xpath="(//flow)[2]/block[1]/@border-after"/> + </checks> +</testcase> diff --git a/test/layoutengine/standard-testcases/page-production_empty_block_only.xml b/test/layoutengine/standard-testcases/page-production_empty_block_only.xml index 6c54a26ef..52ec28067 100644 --- a/test/layoutengine/standard-testcases/page-production_empty_block_only.xml +++ b/test/layoutengine/standard-testcases/page-production_empty_block_only.xml @@ -51,5 +51,9 @@ </fo> <checks> <eval expected="3" xpath="count(//pageViewport)"/> + <element-list category="breaker" index="1"> + <box w="0" aux="true"/> <!-- auxiliary box for empty box --> + <skip>3</skip> + </element-list> </checks> </testcase> diff --git a/test/layoutengine/standard-testcases/table-cell_block_break-after.xml b/test/layoutengine/standard-testcases/table-cell_block_break-after.xml index 20978ffe3..14c5f3b89 100644 --- a/test/layoutengine/standard-testcases/table-cell_block_break-after.xml +++ b/test/layoutengine/standard-testcases/table-cell_block_break-after.xml @@ -84,12 +84,10 @@ <eval expected="75000" xpath="//pageViewport[@nr=2]//flow/block[1]/block[1]/@ipda"/> <eval expected="20800" xpath="//pageViewport[@nr=2]//flow/block[1]/block[1]/@bpd"/> <eval expected="28800" xpath="//pageViewport[@nr=2]//flow/block[1]/block[1]/@bpda"/> - <!-- Two blocks expected in the second cell --> - <eval expected="2" xpath="count(//pageViewport[@nr=2]//flow/block[1]/block[2]/block)"/> - <!-- First block has zero bpd --> - <eval expected="0" xpath="//pageViewport[@nr=2]//flow/block[1]/block[2]/block[1]/@bpd"/> - <!-- One line in the second block --> - <eval expected="1" xpath="count(//pageViewport[@nr=2]//flow/block[1]/block[2]/block[2]//lineArea)"/> + <!-- One block expected in the second cell --> + <eval expected="1" xpath="count(//pageViewport[@nr=2]//flow/block[1]/block[2]/block)"/> + <!-- One line in the block --> + <eval expected="1" xpath="count(//pageViewport[@nr=2]//flow/block[1]/block[2]/block[1]//lineArea)"/> <eval expected="63000" xpath="//pageViewport[@nr=2]//flow/block[1]/block[2]/@ipd"/> <eval expected="75000" xpath="//pageViewport[@nr=2]//flow/block[1]/block[2]/@ipda"/> <eval expected="16800" xpath="//pageViewport[@nr=2]//flow/block[1]/block[2]/@bpd"/> diff --git a/test/layoutengine/standard-testcases/table-cell_conditional-spaces_1.xml b/test/layoutengine/standard-testcases/table-cell_conditional-spaces_1.xml index 3aa9d8871..3f631d3eb 100644 --- a/test/layoutengine/standard-testcases/table-cell_conditional-spaces_1.xml +++ b/test/layoutengine/standard-testcases/table-cell_conditional-spaces_1.xml @@ -153,7 +153,10 @@ <penalty p="0" w="0"/> <glue w="25000"/> <!-- The space between lines --> <box w="16800"/> <!-- Line 2 --> - <skip>3</skip> <!-- glue for end of page TODO missing element for border-after!! --> + <penalty p="INF" w="0"/> + <glue w="4000"/> <!-- The border after --> + <box w="0" aux="true"/> <!-- aux. box to prohibit cutting away the border --> + <skip>3</skip> <!-- glue for end of page --> </element-list> </checks> </testcase> |