<?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 multi-column documents. This test is a special regression test 
      (a section that is not the first span group, is not spanned, is forced to be 
      balanced and breaks over a page).
    </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="320pt" page-height="4in" margin="20pt">
          <fo:region-body column-count="3" column-gap="10pt"/>
        </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>
            <fo:block>line1</fo:block>
            <fo:block>line2</fo:block>
            <fo:block>line3</fo:block>
            <fo:block>line4</fo:block>
            <fo:block>line5</fo:block>
            <fo:block>line6</fo:block>
            <fo:block>line7</fo:block>
            <fo:block>line8</fo:block>
            <fo:block>line9</fo:block>
            <fo:block>line10</fo:block>
            <fo:block>line11</fo:block>
            <fo:block>line12</fo:block>
            <fo:block>line13</fo:block>
          </fo:block>
          <fo:block span="all">
            <fo:block>This line is spanned over all columns.</fo:block>
            <fo:block>This line is spanned over all columns.</fo:block>
            <fo:block>This line is spanned over all columns.</fo:block>
            <fo:block>This line is spanned over all columns.</fo:block>
            <fo:block>This line is spanned over all columns.</fo:block>
            <fo:block>This line is spanned over all columns.</fo:block>
            <fo:block>This line is spanned over all columns.</fo:block>
            <fo:block>This line is spanned over all columns.</fo:block>
            <fo:block>This line is spanned over all columns.</fo:block>
            <fo:block>This line is spanned over all columns.</fo:block>
          </fo:block>
          <fo:block> <!-- this is the interesting block for this test -->
            <fo:block>line1</fo:block>
            <fo:block>line2</fo:block>
            <fo:block>line3</fo:block>
            <fo:block>line4</fo:block>
            <fo:block>line5</fo:block>
            <fo:block>line6</fo:block>
            <fo:block>line7</fo:block>
            <fo:block>line8</fo:block>
            <fo:block>line9</fo:block>
            <fo:block>line10</fo:block>
            <fo:block>line11</fo:block>
            <fo:block>line12</fo:block>
            <fo:block>line13</fo:block>
            <fo:block>line14</fo:block>
            <fo:block>line15</fo:block>
            <fo:block>line16</fo:block>
            <fo:block>line17</fo:block>
            <fo:block>line18</fo:block>
            <fo:block>line19</fo:block>
            <fo:block>line20</fo:block>
            <fo:block>line21</fo:block>
            <fo:block>line22</fo:block>
            <fo:block>line23</fo:block>
            <fo:block>line24</fo:block>
            <fo:block>line25</fo:block>
          </fo:block>
          <fo:block span="all"/>
        </fo:flow>
      </fo:page-sequence>
    </fo:root>
  </fo>
  <checks>
    <eval expected="2" xpath="count(//pageViewport)"/>
    
    <eval expected="2" xpath="count(//pageViewport[@nr=1]//lineArea[.='line6'])"/>
    <!-- the bug cause the second "line7" block to be painted on page 1 instead of 2 -->
    <eval expected="1" xpath="count(//pageViewport[@nr=1]//lineArea[.='line7'])"/>
    <eval expected="1" xpath="count(//pageViewport[@nr=2]//lineArea[.='line7'])"/>

  </checks>
</testcase>
