diff options
author | Jeremias Maerki <jeremias@apache.org> | 2005-06-22 15:01:17 +0000 |
---|---|---|
committer | Jeremias Maerki <jeremias@apache.org> | 2005-06-22 15:01:17 +0000 |
commit | b4e0a4ded3a473345fd67564b7ff4391815014cb (patch) | |
tree | e93df75d30af38018990af5fc778deca07250825 /test | |
parent | e3262c749a4db01da99a5ab1bed99c104633c922 (diff) | |
download | xmlgraphics-fop-b4e0a4ded3a473345fd67564b7ff4391815014cb.tar.gz xmlgraphics-fop-b4e0a4ded3a473345fd67564b7ff4391815014cb.zip |
Tests for breaks on tables.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198766 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'test')
-rw-r--r-- | test/layoutengine/testcases/breaks3.xml | 73 | ||||
-rw-r--r-- | test/layoutengine/testcases/breaks4.xml | 63 | ||||
-rw-r--r-- | test/layoutengine/testcases/breaks5.xml | 70 | ||||
-rw-r--r-- | test/layoutengine/testcases/breaks6.xml | 56 | ||||
-rw-r--r-- | test/layoutengine/testcases/breaks7.xml | 56 |
5 files changed, 318 insertions, 0 deletions
diff --git a/test/layoutengine/testcases/breaks3.xml b/test/layoutengine/testcases/breaks3.xml new file mode 100644 index 000000000..e4df0baec --- /dev/null +++ b/test/layoutengine/testcases/breaks3.xml @@ -0,0 +1,73 @@ +<?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 breaks on tables: breaks inside table-cell content. + </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:table table-layout="fixed" width="100%"> + <fo:table-column/> + <fo:table-column/> + <fo:table-body> + <fo:table-row> + <fo:table-cell> + <fo:block>cell1 - line 1</fo:block> + <fo:block>cell1 - line 2</fo:block> + <fo:block>cell1 - line 3</fo:block> + </fo:table-cell> + <fo:table-cell background-color="yellow"> + <fo:block>cell2 - line 1</fo:block> + <fo:block break-before="page">cell2 - line 2</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="orange"> + <fo:block>cell3</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block>cell4</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:flow> + </fo:page-sequence> + </fo:root> + </fo> + <checks> + <eval expected="2" xpath="count(//pageViewport)"/> + <!-- page 1 --> + <eval expected="1" xpath="count(//pageViewport[@nr=1]/page/regionViewport/regionBody/mainReference/span/flow/block[1]/block[1]//lineArea)"/> + <eval expected="1" xpath="count(//pageViewport[@nr=1]/page/regionViewport/regionBody/mainReference/span/flow/block[1]/block[2]//lineArea)"/> + <!-- page 2 --> + <eval expected="2" xpath="count(//pageViewport[@nr=2]/page/regionViewport/regionBody/mainReference/span/flow/block[1]/block[1]//lineArea)"/> + <eval expected="1" xpath="count(//pageViewport[@nr=2]/page/regionViewport/regionBody/mainReference/span/flow/block[1]/block[2]//lineArea)"/> + <eval expected="1" xpath="count(//pageViewport[@nr=2]/page/regionViewport/regionBody/mainReference/span/flow/block[1]/block[3]//lineArea)"/> + <eval expected="1" xpath="count(//pageViewport[@nr=2]/page/regionViewport/regionBody/mainReference/span/flow/block[1]/block[4]//lineArea)"/> + </checks> +</testcase> diff --git a/test/layoutengine/testcases/breaks4.xml b/test/layoutengine/testcases/breaks4.xml new file mode 100644 index 000000000..693f27775 --- /dev/null +++ b/test/layoutengine/testcases/breaks4.xml @@ -0,0 +1,63 @@ +<?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 breaks on tables. Breaks on table-row during row spanning are ignored + (XSL 1.0, 7.19.1 and 7.19.2). + </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:table table-layout="fixed" width="100%"> + <fo:table-column/> + <fo:table-column/> + <fo:table-body> + <fo:table-row> + <fo:table-cell number-rows-spanned="2" background-color="orange"> + <fo:block>cell1 line 1</fo:block> + <fo:block>cell1 line 2</fo:block> + <fo:block>cell1 line 3</fo:block> + </fo:table-cell> + <fo:table-cell background-color="yellow"> + <fo:block>cell2</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row break-before="page"> + <fo:table-cell> + <fo:block>cell4</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:flow> + </fo:page-sequence> + </fo:root> + </fo> + <checks> + <eval expected="1" xpath="count(//pageViewport)"/> + <!-- If the break would be respected we'd get 2 pages. Watch for the warning in the log. --> + </checks> +</testcase> diff --git a/test/layoutengine/testcases/breaks5.xml b/test/layoutengine/testcases/breaks5.xml new file mode 100644 index 000000000..ca3357e44 --- /dev/null +++ b/test/layoutengine/testcases/breaks5.xml @@ -0,0 +1,70 @@ +<?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 breaks on tables, especially breaks on table-rows in the middle of a table. + </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:table table-layout="fixed" width="100%"> + <fo:table-column/> + <fo:table-column/> + <fo:table-body> + <fo:table-row> + <fo:table-cell> + <fo:block>cell1</fo:block> + </fo:table-cell> + <fo:table-cell background-color="yellow"> + <fo:block>cell2</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row break-before="odd-page" break-after="odd-page"> + <fo:table-cell background-color="orange"> + <fo:block>cell3</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block>cell4</fo:block> + </fo:table-cell> + </fo:table-row> + <fo:table-row> + <fo:table-cell background-color="yellow"> + <fo:block>cell5</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block>cell6</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + </fo:flow> + </fo:page-sequence> + </fo:root> + </fo> + <checks> + <eval expected="5" xpath="count(//pageViewport)"/> + </checks> +</testcase> diff --git a/test/layoutengine/testcases/breaks6.xml b/test/layoutengine/testcases/breaks6.xml new file mode 100644 index 000000000..d939c2599 --- /dev/null +++ b/test/layoutengine/testcases/breaks6.xml @@ -0,0 +1,56 @@ +<?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 breaks on tables, especially breaks on the first and last table-rows. + </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>before the table</fo:block> + <fo:table table-layout="fixed" width="100%"> + <fo:table-column/> + <fo:table-column/> + <fo:table-body> + <fo:table-row break-before="odd-page" break-after="odd-page"> + <fo:table-cell background-color="orange"> + <fo:block>cell3</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block>cell4</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + <fo:block>after the table</fo:block> + </fo:flow> + </fo:page-sequence> + </fo:root> + </fo> + <checks> + <eval expected="5" xpath="count(//pageViewport)"/> + </checks> +</testcase> diff --git a/test/layoutengine/testcases/breaks7.xml b/test/layoutengine/testcases/breaks7.xml new file mode 100644 index 000000000..af2df2e0b --- /dev/null +++ b/test/layoutengine/testcases/breaks7.xml @@ -0,0 +1,56 @@ +<?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 breaks on fo:table. + </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>before the table</fo:block> + <fo:table table-layout="fixed" width="100%" break-before="odd-page" break-after="odd-page"> + <fo:table-column/> + <fo:table-column/> + <fo:table-body> + <fo:table-row> + <fo:table-cell background-color="orange"> + <fo:block>cell3</fo:block> + </fo:table-cell> + <fo:table-cell> + <fo:block>cell4</fo:block> + </fo:table-cell> + </fo:table-row> + </fo:table-body> + </fo:table> + <fo:block>after the table</fo:block> + </fo:flow> + </fo:page-sequence> + </fo:root> + </fo> + <checks> + <eval expected="5" xpath="count(//pageViewport)"/> + </checks> +</testcase> |