Source code for openpyxl.drawing.tests.test_graphic

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

import pytest

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


@pytest.fixture
[docs]def NonVisualGraphicFrameProperties(): from ..graphic import NonVisualGraphicFrameProperties return NonVisualGraphicFrameProperties
[docs]class TestNonVisualGraphicFrameProperties:
[docs] def test_ctor(self, NonVisualGraphicFrameProperties): graphic = NonVisualGraphicFrameProperties() xml = tostring(graphic.to_tree()) expected = """ <cNvGraphicFramePr></cNvGraphicFramePr> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, NonVisualGraphicFrameProperties): src = """ <cNvGraphicFramePr></cNvGraphicFramePr> """ node = fromstring(src) graphic = NonVisualGraphicFrameProperties.from_tree(node) assert graphic == NonVisualGraphicFrameProperties()
@pytest.fixture
[docs]def NonVisualDrawingProps(): from ..graphic import NonVisualDrawingProps return NonVisualDrawingProps
[docs]class TestNonVisualDrawingProps:
[docs] def test_ctor(self, NonVisualDrawingProps): graphic = NonVisualDrawingProps(id=2, name="Chart 1") xml = tostring(graphic.to_tree()) expected = """ <cNvPr id="2" name="Chart 1"></cNvPr> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, NonVisualDrawingProps): src = """ <cNvPr id="3" name="Chart 2"></cNvPr> """ node = fromstring(src) graphic = NonVisualDrawingProps.from_tree(node) assert graphic == NonVisualDrawingProps(id=3, name="Chart 2")
@pytest.fixture
[docs]def NonVisualGraphicFrame(): from ..graphic import NonVisualGraphicFrame return NonVisualGraphicFrame
[docs]class TestNonVisualGraphicFrame:
[docs] def test_ctor(self, NonVisualGraphicFrame): graphic = NonVisualGraphicFrame() xml = tostring(graphic.to_tree()) expected = """ <nvGraphicFramePr> <cNvPr id="0" name="Chart 0"></cNvPr> <cNvGraphicFramePr></cNvGraphicFramePr> </nvGraphicFramePr> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, NonVisualGraphicFrame): src = """ <nvGraphicFramePr> <cNvPr id="0" name="Chart 0"></cNvPr> <cNvGraphicFramePr></cNvGraphicFramePr> </nvGraphicFramePr> """ node = fromstring(src) graphic = NonVisualGraphicFrame.from_tree(node) assert graphic == NonVisualGraphicFrame()
@pytest.fixture
[docs]def GraphicData(): from ..graphic import GraphicData return GraphicData
[docs]class TestGraphicData:
[docs] def test_ctor(self, GraphicData): graphic = GraphicData() xml = tostring(graphic.to_tree()) expected = """ <graphicData xmlns="http://schemas.openxmlformats.org/drawingml/2006/main" uri="http://schemas.openxmlformats.org/drawingml/2006/chart" /> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, GraphicData): src = """ <graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/chart" /> """ node = fromstring(src) graphic = GraphicData.from_tree(node) assert graphic == GraphicData()
@pytest.fixture
[docs]def GraphicObject(): from ..graphic import GraphicObject return GraphicObject
[docs]class TestGraphicObject:
[docs] def test_ctor(self, GraphicObject): graphic = GraphicObject() xml = tostring(graphic.to_tree()) expected = """ <graphic xmlns="http://schemas.openxmlformats.org/drawingml/2006/main"> <graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/chart"></graphicData> </graphic> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, GraphicObject): src = """ <graphic> <graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/chart"></graphicData> </graphic> """ node = fromstring(src) graphic = GraphicObject.from_tree(node) assert graphic == GraphicObject()
@pytest.fixture
[docs]def GraphicFrame(): from ..graphic import GraphicFrame return GraphicFrame
[docs]class TestGraphicFrame:
[docs] def test_ctor(self, GraphicFrame): graphic = GraphicFrame() xml = tostring(graphic.to_tree()) expected = """ <graphicFrame xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"> <nvGraphicFramePr> <cNvPr id="0" name="Chart 0"></cNvPr> <cNvGraphicFramePr></cNvGraphicFramePr> </nvGraphicFramePr> <xfrm></xfrm> <a:graphic> <a:graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/chart" /> </a:graphic> </graphicFrame> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, GraphicFrame): src = """ <graphicFrame> <nvGraphicFramePr> <cNvPr id="0" name="Chart 0"></cNvPr> <cNvGraphicFramePr></cNvGraphicFramePr> </nvGraphicFramePr> <xfrm></xfrm> <graphic> <graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/chart"></graphicData> </graphic> </graphicFrame> """ node = fromstring(src) graphic = GraphicFrame.from_tree(node) assert graphic == GraphicFrame()
@pytest.fixture
[docs]def ChartRelation(): from ..graphic import ChartRelation return ChartRelation
[docs]class TestChartRelation:
[docs] def test_ctor(self, ChartRelation): rel = ChartRelation('rId1') xml = tostring(rel.to_tree()) expected = """ <c:chart xmlns:c="http://schemas.openxmlformats.org/drawingml/2006/chart" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" r:id="rId1"/> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, ChartRelation): src = """ <c:chart xmlns:c="http://schemas.openxmlformats.org/drawingml/2006/chart" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" r:id="rId1"/> """ node = fromstring(src) rel = ChartRelation.from_tree(node) assert rel == ChartRelation("rId1")
@pytest.fixture
[docs]def PictureLocking(): from ..graphic import PictureLocking return PictureLocking
[docs]class TestPictureLocking:
[docs] def test_ctor(self, PictureLocking): graphic = PictureLocking(noChangeAspect=True) xml = tostring(graphic.to_tree()) expected = """ <picLocks xmlns="http://schemas.openxmlformats.org/drawingml/2006/main" noChangeAspect="1" /> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, PictureLocking): src = """ <picLocks noRot="1" /> """ node = fromstring(src) graphic = PictureLocking.from_tree(node) assert graphic == PictureLocking(noRot=1)
@pytest.fixture
[docs]def NonVisualPictureProperties(): from ..graphic import NonVisualPictureProperties return NonVisualPictureProperties
[docs]class TestNonVisualPictureProperties:
[docs] def test_ctor(self, NonVisualPictureProperties): graphic = NonVisualPictureProperties() xml = tostring(graphic.to_tree()) expected = """ <cNvPicPr /> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, NonVisualPictureProperties): src = """ <cNvPicPr /> """ node = fromstring(src) graphic = NonVisualPictureProperties.from_tree(node) assert graphic == NonVisualPictureProperties()
@pytest.fixture
[docs]def PictureNonVisual(): from ..graphic import PictureNonVisual return PictureNonVisual
[docs]class TestPictureNonVisual:
[docs] def test_ctor(self, PictureNonVisual): graphic = PictureNonVisual() xml = tostring(graphic.to_tree()) expected = """ <nvPicPr> <cNvPr descr="Name of file" id="0" name="Image 1" /> <cNvPicPr /> </nvPicPr> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, PictureNonVisual): src = """ <nvPicPr> <cNvPr descr="Name of file" id="0" name="Image 1" /> <cNvPicPr /> </nvPicPr> """ node = fromstring(src) graphic = PictureNonVisual.from_tree(node) assert graphic == PictureNonVisual()
@pytest.fixture
[docs]def PictureFrame(): from ..graphic import PictureFrame return PictureFrame
[docs]class TestPicture:
[docs] def test_ctor(self, PictureFrame): graphic = PictureFrame() xml = tostring(graphic.to_tree()) expected = """ <pic xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"> <nvPicPr> <cNvPr descr="Name of file" id="0" name="Image 1" /> <cNvPicPr /> </nvPicPr> <blipFill> <a:stretch > <a:fillRect/> </a:stretch> </blipFill> <spPr> <a:ln> <a:prstDash val="solid" /> </a:ln> </spPr> </pic> """ diff = compare_xml(xml, expected) assert diff is None, diff
[docs] def test_from_xml(self, PictureFrame): src = """ <pic /> """ node = fromstring(src) graphic = PictureFrame.from_tree(node) assert graphic == PictureFrame()