Source code for openpyxl.worksheet.tests.test_views

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

from openpyxl.xml.functions import fromstring, tostring

import pytest

from openpyxl.tests.helper import compare_xml


@pytest.fixture
[docs]def SheetView(): from ..views import SheetView return SheetView
@pytest.mark.parametrize("value, result", [ (True, {'workbookViewId': '0', 'showGridLines':'1'}), (False, {'workbookViewId': '0', 'showGridLines':'0'}) ] )
[docs]def test_show_gridlines(SheetView, value, result): view = SheetView(showGridLines=value) assert dict(view) == result
[docs]def test_parse(SheetView): src = """ <sheetView xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" tabSelected="1" zoomScale="200" zoomScaleNormal="200" zoomScalePageLayoutView="200" workbookViewId="0"> <pane xSplit="5" ySplit="19" topLeftCell="F20" activePane="bottomRight" state="frozenSplit"/> <selection pane="topRight" activeCell="F1" sqref="F1"/> <selection pane="bottomLeft" activeCell="A20" sqref="A20"/> <selection pane="bottomRight" activeCell="E22" sqref="E22"/> </sheetView> """ xml = fromstring(src) view = SheetView.from_tree(xml) assert dict(view) == {'tabSelected': '1', 'zoomScale': '200', 'workbookViewId':"0", 'zoomScaleNormal': '200', 'zoomScalePageLayoutView': '200'} assert len(view.selection) == 3
[docs]def test_serialise(SheetView): view = SheetView() xml = tostring(view.to_tree()) expected = """ <sheetView workbookViewId="0"> <selection activeCell="A1" sqref="A1"></selection> </sheetView> """ diff = compare_xml(xml, expected) assert diff is None, diff
@pytest.fixture
[docs]def SheetViewList(): from ..views import SheetViewList return SheetViewList
[docs]class TestSheetViews:
[docs] def test_ctor(self, SheetViewList): views = SheetViewList() xml = tostring(views.to_tree()) expected = """ <sheetViews > <sheetView workbookViewId="0"> <selection activeCell="A1" sqref="A1"></selection> </sheetView> </sheetViews> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, SheetViewList): src = """ <sheetViews /> """ node = fromstring(src) views = SheetViewList.from_tree(node) assert views == SheetViewList()