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 SurfaceChart():
from ..surface_chart import SurfaceChart
return SurfaceChart
[docs]class TestSurfaceChart:
[docs] def test_ctor(self, SurfaceChart):
chart = SurfaceChart()
xml = tostring(chart.to_tree())
expected = """
<surfaceChart>
<axId val="10"></axId>
<axId val="100"></axId>
<axId val="1000"></axId>
</surfaceChart>
"""
diff = compare_xml(xml, expected)
assert diff is None, diff
[docs] def test_from_xml(self, SurfaceChart):
src = """
<surfaceChart>
<wireframe val="0"/>
<ser>
<idx val="0"/>
<order val="0"/>
</ser>
<ser>
<idx val="1"/>
<order val="1"/>
</ser>
<bandFmts/>
<axId val="2086876920"/>
<axId val="2078923400"/>
<axId val="2079274408"/>
</surfaceChart>
"""
node = fromstring(src)
chart = SurfaceChart.from_tree(node)
assert [a.val for a in chart.axId] == [10, 100, 1000]
@pytest.fixture
[docs]def SurfaceChart3D():
from ..surface_chart import SurfaceChart3D
return SurfaceChart3D
[docs]class TestSurfaceChart3D:
[docs] def test_ctor(self, SurfaceChart3D):
chart = SurfaceChart3D()
xml = tostring(chart.to_tree())
expected = """
<surface3DChart>
<axId val="10"></axId>
<axId val="100"></axId>
<axId val="1000"></axId>
</surface3DChart>
"""
diff = compare_xml(xml, expected)
assert diff is None, diff
[docs] def test_from_xml(self, SurfaceChart3D):
src = """
<surface3DChart>
<wireframe val="0"/>
<ser>
<idx val="0"/>
<order val="0"/>
<val>
<numRef>
<f>Blatt1!$A$1:$A$12</f>
</numRef>
</val>
</ser>
<ser>
<idx val="1"/>
<order val="1"/>
<val>
<numRef>
<f>Blatt1!$B$1:$B$12</f>
</numRef>
</val>
</ser>
<bandFmts/>
<axId val="2082935272"/>
<axId val="2082938248"/>
<axId val="2082941288"/>
</surface3DChart>
"""
node = fromstring(src)
chart = SurfaceChart3D.from_tree(node)
assert len(chart.ser) == 2
assert [a.val for a in chart.axId] == [10, 100, 1000]
@pytest.fixture
@pytest.fixture