<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../resources/js-test-pre.js"></script>
<script src="resources/paged-media-test-utils.js"></script>
</head>
<body>
<p id="description"></p>
<div id="console"></div>
<div id="sandbox"></div>
<script>
description("Test for allowed page breaks");

function test()
{
    // See CSS3: Paged Media 9.4. Allowed page breaks.
    // http://dev.w3.org/csswg/css3-page/#allowed-pg-brk
    createBlockWithRatioToPageHeight("page1", 0.8).style.pageBreakBefore = "always";
    // We shoud break a page between block 'page1' and block 'page2' instead of
    // breaking inside block 'page2' because there is no allowed page break points
    // inside block 'page2'. Breaking at non-allowed position should be a last resort.
    createBlockWithRatioToPageHeight("page2", 0.8);

    createBlockWithRatioToPageHeight("page3-1", 0.6).style.pageBreakBefore = "always";
    // We can break inside block 'page3-2' because page breaks may occur between
    // line boxes inside a block box.
    createBlockWithNumberOfLines("page3-2", 20);

    pageNumberForElementShouldBe("page1", 1);
    pageNumberForElementShouldBe("page2", 2);
    pageNumberForElementShouldBe("page3-1", 3);
    pageNumberForElementShouldBe("page3-2", 3);

    document.body.removeChild(document.getElementById("sandbox"));
}

var successfullyParsed = true;
</script>
<script>runPrintingTest(test);</script>
<script src="../resources/js-test-post.js"></script>
</body>
</html>
