aboutsummaryrefslogtreecommitdiffstats
path: root/test/layoutengine/standard-testcases
diff options
context:
space:
mode:
Diffstat (limited to 'test/layoutengine/standard-testcases')
-rw-r--r--test/layoutengine/standard-testcases/block_white-space-collapse_1.xml3
-rw-r--r--test/layoutengine/standard-testcases/block_white-space_4.xml24
-rw-r--r--test/layoutengine/standard-testcases/block_white-space_nbsp_1.xml105
-rw-r--r--test/layoutengine/standard-testcases/block_white-space_nbsp_2.xml (renamed from test/layoutengine/standard-testcases/block_white-space_2.xml)20
4 files changed, 130 insertions, 22 deletions
diff --git a/test/layoutengine/standard-testcases/block_white-space-collapse_1.xml b/test/layoutengine/standard-testcases/block_white-space-collapse_1.xml
index f0383be8c..b12666096 100644
--- a/test/layoutengine/standard-testcases/block_white-space-collapse_1.xml
+++ b/test/layoutengine/standard-testcases/block_white-space-collapse_1.xml
@@ -103,8 +103,7 @@
<eval expected="6" xpath="count(//flow/block[1]/lineArea[1]/text[1]/space)"/>
<eval expected="2" xpath="count(//flow/block[1]/lineArea[1]/text[2]/word)"/>
<eval expected="1" xpath="count(//flow/block[1]/lineArea[1]/text[2]/space)"/>
- <eval expected="1" xpath="count(//flow/block[1]/lineArea[1]/text[3]/word)"/>
- <eval expected=" " xpath="//flow/block[1]/lineArea[1]/text[3]/word"/>
+ <eval expected="1" xpath="count(//flow/block[1]/lineArea[1]/text[3]/space)"/>
<eval expected="1" xpath="count(//flow/block[1]/lineArea[1]/text[4]/word)"/>
<eval expected="3" xpath="count(//flow/block[2]/block[1]/lineArea[1]/text/word)"/>
diff --git a/test/layoutengine/standard-testcases/block_white-space_4.xml b/test/layoutengine/standard-testcases/block_white-space_4.xml
index 29f724490..c19c6f529 100644
--- a/test/layoutengine/standard-testcases/block_white-space_4.xml
+++ b/test/layoutengine/standard-testcases/block_white-space_4.xml
@@ -88,7 +88,7 @@
<box w="6672"/>
- <skip>11</skip>
+ <skip>12</skip>
</element-list>
<eval expected="62040" xpath="//block[@prod-id='l-sp']/lineArea/text/@ipd"/>
<eval expected="word" xpath="local-name(//block[@prod-id='l-sp']/lineArea/text/*[1])"/>
@@ -125,7 +125,7 @@
<box w="6672"/>
- <skip>15</skip>
+ <skip>16</skip>
</element-list>
<eval expected="60168" xpath="//block[@prod-id='l-thin-space']/lineArea/text/@ipd"/>
<eval expected="word" xpath="local-name(//block[@prod-id='l-thin-space']/lineArea/text/*[1])"/>
@@ -162,7 +162,7 @@
<box w="6672"/>
- <skip>15</skip>
+ <skip>16</skip>
</element-list>
<eval expected="57768" xpath="//block[@prod-id='l-hair-space']/lineArea/text/@ipd"/>
<true xpath="//block[@prod-id='l-hair-space']/lineArea/text/*[2]/@adj = 'false'"/>
@@ -192,7 +192,7 @@
<box w="6672"/>
- <skip>19</skip>
+ <skip>20</skip>
</element-list>
<eval expected="55368" xpath="//block[@prod-id='l-zwsp']/lineArea/text/@ipd"/>
<true xpath="//block[@prod-id='l-zwsp']/lineArea/text/*[2]/@adj = 'false'"/>
@@ -207,7 +207,7 @@
<box w="26016"/>
- <skip>11</skip>
+ <skip>12</skip>
</element-list>
<eval expected="55368" xpath="//block[@prod-id='l-nosp']/lineArea/text/@ipd"/>
@@ -246,7 +246,7 @@
<box w="6672"/>
- <skip>23</skip>
+ <skip>24</skip>
</element-list>
<eval expected="60168" xpath="//block[@prod-id='c-thin-space']/lineArea/text/@ipd"/>
<eval expected="word" xpath="local-name(//block[@prod-id='c-thin-space']/lineArea/text/*[1])"/>
@@ -277,7 +277,7 @@
<box w="6672"/>
- <skip>5</skip>
+ <skip>6</skip>
</element-list>
<eval expected="190804" xpath="//block[@prod-id='j-sp']/lineArea/text/@ipd"/>
<eval expected="42921" xpath="//block[@prod-id='j-sp']/lineArea/text/@twsadjust"/>
@@ -300,7 +300,7 @@
<box w="6672"/>
- <skip>7</skip>
+ <skip>8</skip>
</element-list>
<eval expected="104277" xpath="//block[@prod-id='j-thin-space']/lineArea/text/@ipd"/>
<eval expected="44109" xpath="//block[@prod-id='j-thin-space']/lineArea/text/@twsadjust"/>
@@ -325,7 +325,7 @@
<box w="6672"/>
- <skip>9</skip>
+ <skip>10</skip>
</element-list>
<eval expected="84280" xpath="//block[@prod-id='j-zwsp']/lineArea/text/@ipd"/>
<eval expected="28912" xpath="//block[@prod-id='j-zwsp']/lineArea/text/@twsadjust"/>
@@ -350,7 +350,7 @@
<box w="6672"/>
- <skip>5</skip>
+ <skip>6</skip>
</element-list>
<eval expected="182404" xpath="//block[@prod-id='lsj-sp']/lineArea/text/@ipd"/>
<eval expected="32121" xpath="//block[@prod-id='lsj-sp']/lineArea/text/@twsadjust"/>
@@ -374,7 +374,7 @@
<box w="6672"/>
- <skip>7</skip>
+ <skip>8</skip>
</element-list>
<eval expected="104777" xpath="//block[@prod-id='lsj-thin-space']/lineArea/text/@ipd"/>
<eval expected="28609" xpath="//block[@prod-id='lsj-thin-space']/lineArea/text/@twsadjust"/>
@@ -400,7 +400,7 @@
<box w="6672"/>
- <skip>9</skip>
+ <skip>10</skip>
</element-list>
<eval expected="85480" xpath="//block[@prod-id='lsj-zwsp']/lineArea/text/@ipd"/>
<eval expected="14112" xpath="//block[@prod-id='lsj-zwsp']/lineArea/text/@twsadjust"/>
diff --git a/test/layoutengine/standard-testcases/block_white-space_nbsp_1.xml b/test/layoutengine/standard-testcases/block_white-space_nbsp_1.xml
new file mode 100644
index 000000000..9ef8ba78e
--- /dev/null
+++ b/test/layoutengine/standard-testcases/block_white-space_nbsp_1.xml
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2005-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 non breaking white space (nbsp).
+ </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" id="single">&#160;single&#160;nbsp&#160;around&#160;</fo:block>
+ <fo:block background-color="red" id="only">&#160;</fo:block>
+ <fo:block background-color="silver" id="double">&#160;&#160;after&#160;&#160;empty&#160;&#160;line&#160;&#160;</fo:block>
+ <fo:block background-color="silver" id="single-justify" text-align="justify" text-align-last="justify" space-before="5pt">&#160;single&#160;nbsp&#160;around&#160;</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="11100" xpath="//flow/block[2]/lineArea/@bpd"/>
+ <eval expected="1" 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="11100" xpath="//flow/block[4]/lineArea/@bpd"/>
+ <eval expected="3" xpath="count(//flow/block[4]/lineArea/text/space)"/> <!-- trailing nbsp is removed by LineLM -->
+
+ <!-- nbsp must be adjustable -->
+ <true xpath="not(//flow/block[4]/lineArea/text/space[1]/@adj = 'false')"/>
+
+ <element-list category="line" id="single">
+ <box w="3336"/>
+ <box/>
+ <box w="3336"/>
+ <box/>
+ <box w="3336"/>
+ <box/>
+ <box w="3336"/>
+ <skip>3</skip>
+ </element-list>
+
+ <element-list category="line" id="only">
+ <box w="3336"/>
+ <skip>3</skip>
+ </element-list>
+
+ <element-list category="line" id="double">
+ <box w="3336"/>
+ <box w="3336"/>
+ <box/>
+ <box w="3336"/>
+ <box w="3336"/>
+ <box/>
+ <box w="3336"/>
+ <box w="3336"/>
+ <box/>
+ <box w="3336"/>
+ <box w="3336"/>
+ <skip>3</skip>
+ </element-list>
+
+ <element-list category="line" id="single-justify">
+ <box w="0"/>
+ <penalty p="INF"/>
+ <glue w="3336" y="1668" z="1112"/>
+ <box/>
+ <box w="0"/>
+ <penalty p="INF"/>
+ <glue w="3336" y="1668" z="1112"/>
+ <box/>
+ <box w="0"/>
+ <penalty p="INF"/>
+ <glue w="3336" y="1668" z="1112"/>
+ <box/>
+ <box w="0"/>
+ <penalty p="INF"/>
+ <glue w="3336" y="1668" z="1112"/>
+ <skip>3</skip>
+ </element-list>
+
+ </checks>
+</testcase>
diff --git a/test/layoutengine/standard-testcases/block_white-space_2.xml b/test/layoutengine/standard-testcases/block_white-space_nbsp_2.xml
index bf6c570c0..ac8d1d76c 100644
--- a/test/layoutengine/standard-testcases/block_white-space_2.xml
+++ b/test/layoutengine/standard-testcases/block_white-space_nbsp_2.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- 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,7 +18,8 @@
<testcase>
<info>
<p>
- This test checks non breaking white space.
+ This test checks non breaking white space (nbsp) specified as fo:character.
+ This is to check if a nbsb as fo:character is processed the same way as a normal nbsb.
</p>
</info>
<fo>
@@ -30,9 +31,10 @@
</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">&#160;single&#160;nbsp&#160;around&#160;</fo:block>
- <fo:block background-color="red">&#160;</fo:block>
- <fo:block background-color="silver">&#160;&#160;after&#160;&#160;empty&#160;&#160;line&#160;&#160;</fo:block>
+ <fo:block background-color="silver">&#160;single<fo:character character="&#160;"/>nbsp&#160;around&#160;</fo:block>
+
+ <fo:block background-color="silver" text-align="justify" text-align-last="justify" space-before="5pt">&#160;single&#160;nbsp&#160;around&#160;</fo:block>
+ <fo:block background-color="silver" text-align="justify" text-align-last="justify">&#160;single<fo:character character="&#160;"/>nbsp&#160;around&#160;</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
@@ -40,9 +42,11 @@
<checks>
<eval expected="11100" xpath="//flow/block[1]/lineArea/@bpd"/>
<eval expected="4" 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)"/>
+ <!-- //flow/block[2] is only for reference -->
<eval expected="11100" xpath="//flow/block[3]/lineArea/@bpd"/>
- <eval expected="8" xpath="count(//flow/block[3]/lineArea/text/space)"/>
+ <eval expected="3" xpath="count(//flow/block[3]/lineArea/text/space)"/> <!-- last nbsp is removed by LineLM -->
+
+ <!-- twsadjust must be the same for block 2 and 3 as they are supposed to be equivalent -->
+ <true xpath="//flow/block[2]/lineArea/text[1]/@twsadjust = //flow/block[3]/lineArea/text[1]/@twsadjust"/>
</checks>
</testcase>