Source code for openpyxl.worksheet.tests.test_page

from __future__ import absolute_import
# Copyright (c) 2010-2017 openpyxl

import pytest

from openpyxl.xml.functions import tostring
from openpyxl.tests.helper import compare_xml


@pytest.fixture
[docs]def PageMargins(): from .. page import PageMargins return PageMargins
[docs]class TestPageMargins:
[docs] def test_ctor(self, PageMargins): pm = PageMargins() assert dict(pm) == {'bottom': '1', 'footer': '0.5', 'header': '0.5', 'left': '0.75', 'right': '0.75', 'top': '1'}
[docs] def test_write(self, PageMargins): page_margins = PageMargins() page_margins.left = 2.0 page_margins.right = 2.0 page_margins.top = 2.0 page_margins.bottom = 2.0 page_margins.header = 1.5 page_margins.footer = 1.5 xml = tostring(page_margins.to_tree()) expected = """ <pageMargins xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" left="2" right="2" top="2" bottom="2" header="1.5" footer="1.5"/> """ diff = compare_xml(xml, expected) assert diff is None, diff
@pytest.fixture
[docs]def PrintPageSetup(): from .. page import PrintPageSetup return PrintPageSetup
@pytest.fixture
[docs]def DummyWorksheet(): from openpyxl import Workbook wb = Workbook() return wb.active
[docs]class TestPageSetup:
[docs] def test_ctor(self, PrintPageSetup): p = PrintPageSetup() assert dict(p) == {} p.scale = 1 assert p.scale == 1 p.paperHeight = "24.73mm" assert p.paperHeight == "24.73mm" assert p.cellComments == None p.orientation = "default" assert p.orientation == "default" p.id = 'a12' assert dict(p) == {'scale':'1', 'paperHeight': '24.73mm', 'orientation': 'default', 'id':'a12'}
[docs] def test_fitToPage(self, DummyWorksheet): ws = DummyWorksheet p = ws.page_setup assert p.fitToPage is None p.fitToPage = 1 assert p.fitToPage == True
[docs] def test_autoPageBreaks(self, DummyWorksheet): ws = DummyWorksheet p = ws.page_setup assert p.autoPageBreaks is None p.autoPageBreaks = 1 assert p.autoPageBreaks == True
[docs] def test_write(self, PrintPageSetup): page_setup = PrintPageSetup() page_setup.orientation = "landscape" page_setup.paperSize = 3 page_setup.fitToHeight = False page_setup.fitToWidth = True xml = tostring(page_setup.to_tree()) expected = """ <pageSetup orientation="landscape" paperSize="3" fitToHeight="0" fitToWidth="1"/> """ diff = compare_xml(xml, expected) assert diff is None, diff
@pytest.fixture
[docs]def PrintOptions(): from .. page import PrintOptions return PrintOptions
[docs]class TestPrintOptions:
[docs] def test_ctor(self, PrintOptions): p = PrintOptions() assert dict(p) == {} p.horizontalCentered = True p.verticalCentered = True assert dict(p) == {'verticalCentered': '1', 'horizontalCentered': '1'}
[docs] def test_write(self, PrintOptions): print_options = PrintOptions() print_options.horizontalCentered = True print_options.verticalCentered = True xml = tostring(print_options.to_tree()) expected = """ <printOptions horizontalCentered="1" verticalCentered="1"/> """ diff = compare_xml(xml, expected) assert diff is None, diff