diff options
author | Luca Furini <lfurini@apache.org> | 2006-02-07 12:29:19 +0000 |
---|---|---|
committer | Luca Furini <lfurini@apache.org> | 2006-02-07 12:29:19 +0000 |
commit | 5769a0fe9fb13878a9573ea45b5544ca481c1d00 (patch) | |
tree | 7ff32da452664e4d95ed0ca11552016379d856b9 /test | |
parent | f6bf4a418239b8600d5e4957febd12fdef6a61dd (diff) | |
download | xmlgraphics-fop-5769a0fe9fb13878a9573ea45b5544ca481c1d00.tar.gz xmlgraphics-fop-5769a0fe9fb13878a9573ea45b5544ca481c1d00.zip |
Fix for bug 38507: the elements representing a non-breaking space were not always correct, sometimes allowing a break.
This also solves another bug concerning the incorrect suppression of a nbsp at the beginning of a line.
A bit of clean-up in TextLayoutManager
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@375585 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'test')
4 files changed, 20 insertions, 79 deletions
diff --git a/test/layoutengine/disabled-testcases.xml b/test/layoutengine/disabled-testcases.xml index d2dd47b35..308cedb40 100755 --- a/test/layoutengine/disabled-testcases.xml +++ b/test/layoutengine/disabled-testcases.xml @@ -62,19 +62,6 @@ stacking constraints which it shouldn't.</description> </testcase> <testcase> - <name>Non breaking space removal</name> - <file>block_white-space_2.xml</file> - <description>A non breaking space is incorrectly - removed from the start of a line.</description> - </testcase> - <testcase> - <name>Non breaking spaces must not be breakable</name> - <file>block_white-space_3.xml</file> - <description>A non breaking space incorrectly - causes a break possibility. The element list is wrong.</description> - <reference>http://issues.apache.org/bugzilla/show_bug.cgi?id=38507</reference> - </testcase> - <testcase> <name>block white-space-collapse 2</name> <file>block_white-space-collapse_2.xml</file> <description>First line-break occurs after the fifth space following the diff --git a/test/layoutengine/standard-testcases/block_white-space_2.xml b/test/layoutengine/standard-testcases/block_white-space_2.xml index e1dfa24c0..bf6c570c0 100644 --- a/test/layoutengine/standard-testcases/block_white-space_2.xml +++ b/test/layoutengine/standard-testcases/block_white-space_2.xml @@ -19,11 +19,6 @@ <info> <p> This test checks non breaking white space. - Note: This test currently fails because the first non breaking space on - each line is incorrectly removed. There is a duplicate test - block_white-space_2a.xml whose checks have been adjusted to cater for - this defect. Once the problem is fixed block_white-space_2a.xml should - be removed from the test suite. </p> </info> <fo> diff --git a/test/layoutengine/standard-testcases/block_white-space_2a.xml b/test/layoutengine/standard-testcases/block_white-space_2a.xml deleted file mode 100644 index c14b0a32f..000000000 --- a/test/layoutengine/standard-testcases/block_white-space_2a.xml +++ /dev/null @@ -1,57 +0,0 @@ -<?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 non breaking white space. - Note: This test should fail because the first nb space in each line is - incorrectly removed. However, the checks below have been adjusted to - cater for this defect so this test passes. This has been done to have some - test cases which are being run in the test suite for non breaking spaces. - This test is otherwise identical to block_white-space_2.xml. Once the problem - is fixed this file can be deleted from the test suite. - </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"> - <fo:region-body/> - </fo:simple-page-master> - </fo:layout-master-set> - <fo:page-sequence master-reference="normal" white-space-collapse="true"> - <fo:flow flow-name="xsl-region-body"> - <fo:block background-color="silver"> single nbsp around </fo:block> - <fo:block background-color="red"> </fo:block> - <fo:block background-color="silver">  after  empty  line  </fo:block> - </fo:flow> - </fo:page-sequence> - </fo:root> - </fo> - <checks> - <eval expected="11100" xpath="//flow/block[1]/lineArea/@bpd"/> - <!--<eval expected="4" xpath="count(//flow/block[1]/lineArea/text/space)"/>--> - <eval expected="3" xpath="count(//flow/block[1]/lineArea/text/space)"/> - <eval expected="11100" xpath="//flow/block[2]/lineArea/@bpd"/> - <!--<eval expected="1" xpath="count(//flow/block[2]/lineArea/text/space)"/>--> - <eval expected="0" xpath="count(//flow/block[2]/lineArea/text/space)"/> - <eval expected="11100" xpath="//flow/block[3]/lineArea/@bpd"/> - <!--<eval expected="8" xpath="count(//flow/block[3]/lineArea/text/space)"/>--> - <eval expected="7" xpath="count(//flow/block[3]/lineArea/text/space)"/> - </checks> -</testcase> diff --git a/test/layoutengine/standard-testcases/block_white-space_3.xml b/test/layoutengine/standard-testcases/block_white-space_3.xml index b5276700b..112d6bed6 100644 --- a/test/layoutengine/standard-testcases/block_white-space_3.xml +++ b/test/layoutengine/standard-testcases/block_white-space_3.xml @@ -32,6 +32,7 @@ <fo:flow flow-name="xsl-region-body"> <fo:block background-color="yellow">« text »</fo:block><!-- normal spaces here --> <fo:block background-color="red">« text »</fo:block> + <fo:block background-color="blue" text-align="justify">« text »</fo:block> </fo:flow> </fo:page-sequence> </fo:root> @@ -60,16 +61,31 @@ <box/> <!-- first nbsp --> - <penalty w="0" p="INF"/> - <glue w="3336" y="0" z="0"/> + <box w="3336"/> + + <box/> + + <!-- second nbsp --> + <box w="3336"/> + + <box/> + + <skip>3</skip> + </element-list> + <element-list category="line" index="2"> + <box/> + + <!-- first nbsp --> <box w="0"/> + <penalty w="0" p="inf"/> + <glue w="3336" y="1668" z="1112"/> <box/> <!-- second nbsp --> - <penalty w="0" p="INF"/> - <glue w="3336" y="0" z="0"/> <box w="0"/> + <penalty w="0" p="inf"/> + <glue w="3336" y="1668" z="1112"/> <box/> |