Browse Source

First test case for keep-with-previous.

Added checks for the "within-column" part for all three test cases.


git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_KnuthStylePageBreaking@198526 13f79535-47bb-0310-9956-ffa450edef68
Temp_KnuthStylePageBreaking
Jeremias Maerki 19 years ago
parent
commit
235ba2a81b

+ 51
- 18
test/layoutengine/testcases/keep-together1.xml View File

@@ -57,26 +57,48 @@
<fo:flow flow-name="xsl-region-body">
<fo:block>block11</fo:block>
<fo:block>block12</fo:block>
<fo:block-container keep-together.within-page="always">
<fo:block>block13</fo:block>
<fo:block>block14</fo:block>
<fo:block>block15</fo:block>
</fo:block-container>
<fo:block>block16</fo:block>
<fo:block keep-together.within-column="always">block13
<fo:inline font-style="italic">
The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog.
</fo:inline>
</fo:block>
<fo:block>block14</fo:block>
<fo:block>block15</fo:block>
<fo:block keep-together.within-column="always">
<fo:block>block16</fo:block>
<fo:block>block17</fo:block>
<fo:block>block18</fo:block>
<fo:block>block19</fo:block>
</fo:block>
<fo:block>block20</fo:block>
</fo:flow>
</fo:page-sequence>
<fo:page-sequence master-reference="normal">
<fo:flow flow-name="xsl-region-body">
<fo:block>block21</fo:block>
<fo:block>block22</fo:block>
<fo:block-container keep-together.within-page="always">
<fo:block>block23</fo:block>
<fo:block>block24</fo:block>
<fo:block>block25</fo:block>
</fo:block-container>
<fo:block>block26</fo:block>
</fo:flow>
</fo:page-sequence>
<fo:page-sequence master-reference="normal">
<fo:flow flow-name="xsl-region-body">
<fo:block>block31</fo:block>
<fo:block>block32</fo:block>
<fo:block keep-together.within-page="always">
<fo:block-container>
<fo:block>block23</fo:block>
<fo:block>block33</fo:block>
</fo:block-container>
<fo:block>block24</fo:block>
<fo:block>block25</fo:block>
<fo:block>block34</fo:block>
<fo:block>block35</fo:block>
</fo:block>
<fo:block>block26</fo:block>
<fo:block>block36</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
@@ -97,14 +119,25 @@
<eval expected="6" xpath="//lineArea[starts-with(., 'block12')]/ancestor::pageViewport/@nr"/>
<eval expected="7" xpath="//lineArea[starts-with(., 'block13')]/ancestor::pageViewport/@nr"/>
<eval expected="7" xpath="//lineArea[starts-with(., 'block14')]/ancestor::pageViewport/@nr"/>
<eval expected="7" xpath="//lineArea[starts-with(., 'block15')]/ancestor::pageViewport/@nr"/>
<eval expected="7" xpath="//lineArea[starts-with(., 'block16')]/ancestor::pageViewport/@nr"/>
<eval expected="8" xpath="//lineArea[starts-with(., 'block15')]/ancestor::pageViewport/@nr"/>
<eval expected="9" xpath="//lineArea[starts-with(., 'block16')]/ancestor::pageViewport/@nr"/>
<eval expected="9" xpath="//lineArea[starts-with(., 'block17')]/ancestor::pageViewport/@nr"/>
<eval expected="9" xpath="//lineArea[starts-with(., 'block18')]/ancestor::pageViewport/@nr"/>
<eval expected="9" xpath="//lineArea[starts-with(., 'block19')]/ancestor::pageViewport/@nr"/>
<eval expected="10" xpath="//lineArea[starts-with(., 'block20')]/ancestor::pageViewport/@nr"/>
<eval expected="11" xpath="//lineArea[starts-with(., 'block21')]/ancestor::pageViewport/@nr"/>
<eval expected="11" xpath="//lineArea[starts-with(., 'block22')]/ancestor::pageViewport/@nr"/>
<eval expected="12" xpath="//lineArea[starts-with(., 'block23')]/ancestor::pageViewport/@nr"/>
<eval expected="12" xpath="//lineArea[starts-with(., 'block24')]/ancestor::pageViewport/@nr"/>
<eval expected="12" xpath="//lineArea[starts-with(., 'block25')]/ancestor::pageViewport/@nr"/>
<eval expected="12" xpath="//lineArea[starts-with(., 'block26')]/ancestor::pageViewport/@nr"/>

<eval expected="8" xpath="//lineArea[starts-with(., 'block21')]/ancestor::pageViewport/@nr"/>
<eval expected="8" xpath="//lineArea[starts-with(., 'block22')]/ancestor::pageViewport/@nr"/>
<eval expected="9" xpath="//lineArea[starts-with(., 'block23')]/ancestor::pageViewport/@nr"/>
<eval expected="9" xpath="//lineArea[starts-with(., 'block24')]/ancestor::pageViewport/@nr"/>
<eval expected="9" xpath="//lineArea[starts-with(., 'block25')]/ancestor::pageViewport/@nr"/>
<eval expected="9" xpath="//lineArea[starts-with(., 'block26')]/ancestor::pageViewport/@nr"/>
<eval expected="13" xpath="//lineArea[starts-with(., 'block31')]/ancestor::pageViewport/@nr"/>
<eval expected="13" xpath="//lineArea[starts-with(., 'block32')]/ancestor::pageViewport/@nr"/>
<eval expected="14" xpath="//lineArea[starts-with(., 'block33')]/ancestor::pageViewport/@nr"/>
<eval expected="14" xpath="//lineArea[starts-with(., 'block34')]/ancestor::pageViewport/@nr"/>
<eval expected="14" xpath="//lineArea[starts-with(., 'block35')]/ancestor::pageViewport/@nr"/>
<eval expected="14" xpath="//lineArea[starts-with(., 'block36')]/ancestor::pageViewport/@nr"/>
</checks>
</testcase>

+ 29
- 0
test/layoutengine/testcases/keep-with-next1.xml View File

@@ -48,6 +48,23 @@
<fo:block>block11</fo:block>
</fo:flow>
</fo:page-sequence>
<fo:page-sequence master-reference="normal">
<fo:flow flow-name="xsl-region-body">
<fo:block>block21</fo:block>
<fo:block>block22</fo:block>
<fo:block keep-with-next.within-column="always">block23</fo:block>
<fo:block keep-with-next.within-column="always">block24</fo:block>
<fo:block>block25</fo:block>
<fo:block keep-with-next.within-column="always">
<fo:block>block26</fo:block>
<fo:block>block27</fo:block>
<fo:block>block28</fo:block>
<fo:block>block29</fo:block>
<fo:block>block30</fo:block>
</fo:block>
<fo:block>block31</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
</fo>
<checks>
@@ -62,5 +79,17 @@
<eval expected="3" xpath="//lineArea[starts-with(., 'block9')]/ancestor::pageViewport/@nr"/>
<eval expected="4" xpath="//lineArea[starts-with(., 'block10')]/ancestor::pageViewport/@nr"/>
<eval expected="4" xpath="//lineArea[starts-with(., 'block11')]/ancestor::pageViewport/@nr"/>

<eval expected="5" xpath="//lineArea[starts-with(., 'block21')]/ancestor::pageViewport/@nr"/>
<eval expected="5" xpath="//lineArea[starts-with(., 'block22')]/ancestor::pageViewport/@nr"/>
<eval expected="6" xpath="//lineArea[starts-with(., 'block23')]/ancestor::pageViewport/@nr"/>
<eval expected="6" xpath="//lineArea[starts-with(., 'block24')]/ancestor::pageViewport/@nr"/>
<eval expected="6" xpath="//lineArea[starts-with(., 'block25')]/ancestor::pageViewport/@nr"/>
<eval expected="6" xpath="//lineArea[starts-with(., 'block26')]/ancestor::pageViewport/@nr"/>
<eval expected="7" xpath="//lineArea[starts-with(., 'block27')]/ancestor::pageViewport/@nr"/>
<eval expected="7" xpath="//lineArea[starts-with(., 'block28')]/ancestor::pageViewport/@nr"/>
<eval expected="7" xpath="//lineArea[starts-with(., 'block29')]/ancestor::pageViewport/@nr"/>
<eval expected="8" xpath="//lineArea[starts-with(., 'block30')]/ancestor::pageViewport/@nr"/>
<eval expected="8" xpath="//lineArea[starts-with(., 'block31')]/ancestor::pageViewport/@nr"/>
</checks>
</testcase>

+ 95
- 0
test/layoutengine/testcases/keep-with-previous1.xml View File

@@ -0,0 +1,95 @@
<?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 keep-with-previous.
</p>
<p>
Widows and Orphans are disabled in this test to avoid side-effects.
</p>
</info>
<fo>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:svg="http://www.w3.org/2000/svg" white-space-collapse="true" widows="0" orphans="0">
<fo:layout-master-set>
<fo:simple-page-master master-name="normal" page-width="5in" page-height="4.5 * 14.4pt">
<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>block1</fo:block>
<fo:block>block2</fo:block>
<fo:block>block3</fo:block>
<fo:block keep-with-previous.within-page="always">block4</fo:block>
<fo:block keep-with-previous.within-page="always">block5</fo:block>
<fo:block>
<fo:block>block6</fo:block>
<fo:block>block7</fo:block>
<fo:block>block8</fo:block>
<fo:block>block9</fo:block>
<fo:block>block10</fo:block>
</fo:block>
<fo:block keep-with-previous.within-page="always">block11</fo:block>
</fo:flow>
</fo:page-sequence>
<fo:page-sequence master-reference="normal">
<fo:flow flow-name="xsl-region-body">
<fo:block>block21</fo:block>
<fo:block>block22</fo:block>
<fo:block>block23</fo:block>
<fo:block keep-with-previous.within-column="always">block24</fo:block>
<fo:block keep-with-previous.within-column="always">block25</fo:block>
<fo:block>
<fo:block>block26</fo:block>
<fo:block>block27</fo:block>
<fo:block>block28</fo:block>
<fo:block>block29</fo:block>
<fo:block>block30</fo:block>
</fo:block>
<fo:block keep-with-previous.within-column="always">block31</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
</fo>
<checks>
<eval expected="1" xpath="//lineArea[starts-with(., 'block1')]/ancestor::pageViewport/@nr"/>
<eval expected="1" xpath="//lineArea[starts-with(., 'block2')]/ancestor::pageViewport/@nr"/>
<eval expected="2" xpath="//lineArea[starts-with(., 'block3')]/ancestor::pageViewport/@nr"/>
<eval expected="2" xpath="//lineArea[starts-with(., 'block4')]/ancestor::pageViewport/@nr"/>
<eval expected="2" xpath="//lineArea[starts-with(., 'block5')]/ancestor::pageViewport/@nr"/>
<eval expected="2" xpath="//lineArea[starts-with(., 'block6')]/ancestor::pageViewport/@nr"/>
<eval expected="3" xpath="//lineArea[starts-with(., 'block7')]/ancestor::pageViewport/@nr"/>
<eval expected="3" xpath="//lineArea[starts-with(., 'block8')]/ancestor::pageViewport/@nr"/>
<eval expected="3" xpath="//lineArea[starts-with(., 'block9')]/ancestor::pageViewport/@nr"/>
<eval expected="4" xpath="//lineArea[starts-with(., 'block10')]/ancestor::pageViewport/@nr"/>
<eval expected="4" xpath="//lineArea[starts-with(., 'block11')]/ancestor::pageViewport/@nr"/>

<eval expected="5" xpath="//lineArea[starts-with(., 'block21')]/ancestor::pageViewport/@nr"/>
<eval expected="5" xpath="//lineArea[starts-with(., 'block22')]/ancestor::pageViewport/@nr"/>
<eval expected="6" xpath="//lineArea[starts-with(., 'block23')]/ancestor::pageViewport/@nr"/>
<eval expected="6" xpath="//lineArea[starts-with(., 'block24')]/ancestor::pageViewport/@nr"/>
<eval expected="6" xpath="//lineArea[starts-with(., 'block25')]/ancestor::pageViewport/@nr"/>
<eval expected="6" xpath="//lineArea[starts-with(., 'block26')]/ancestor::pageViewport/@nr"/>
<eval expected="7" xpath="//lineArea[starts-with(., 'block27')]/ancestor::pageViewport/@nr"/>
<eval expected="7" xpath="//lineArea[starts-with(., 'block28')]/ancestor::pageViewport/@nr"/>
<eval expected="7" xpath="//lineArea[starts-with(., 'block29')]/ancestor::pageViewport/@nr"/>
<eval expected="8" xpath="//lineArea[starts-with(., 'block30')]/ancestor::pageViewport/@nr"/>
<eval expected="8" xpath="//lineArea[starts-with(., 'block31')]/ancestor::pageViewport/@nr"/>
</checks>
</testcase>

Loading…
Cancel
Save