def test_from_tree(self): from openpyxl25.chart.series import Series, attribute_mapping src = """ <ser> <idx val="0"/> <order val="0"/> <spPr> <a:ln xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"> <a:prstDash val="solid" /> </a:ln> </spPr> <val> <numRef> <f>Blatt1!$A$1:$A$12</f> </numRef> </val> </ser> """ node = fromstring(src) ser = Series.from_tree(node) assert ser.idx == 0 assert ser.order == 0 assert ser.val.numRef.ref == 'Blatt1!$A$1:$A$12' ser.__elements__ = attribute_mapping['area'] xml = tostring(ser.to_tree()) diff = compare_xml(xml, src) assert diff is None, diff
def test_set_catgories(self, ChartBase): from openpyxl25.chart.series import Series s1 = Series() s1.__elements__ = ('cat',) chart = ChartBase() chart.ser = [s1] chart.set_categories("Sheet!A1:A4") xml = tostring(s1.to_tree()) expected = """ <ser> <cat> <numRef> <f>Sheet!$A$1:$A$4</f> </numRef> </cat> </ser> """ diff = compare_xml(xml, expected) assert diff is None, diff
def test_from_tree(self): from openpyxl25.chart.series import Series, attribute_mapping src = """ <ser> <idx val="0"/> <order val="0"/> <spPr> <a:ln xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"> <a:prstDash val="solid" /> </a:ln> </spPr> <xVal> <numRef> <f>Blatt1!$A$1:$A$12</f> </numRef> </xVal> <yVal> <numRef> <f>Blatt1!$B$1:$B$12</f> </numRef> </yVal> <bubbleSize> <numLit> <formatCode>General</formatCode> <ptCount val="12"/> <pt idx="0"> <v>1.1</v> </pt> <pt idx="1"> <v>1.1</v> </pt> <pt idx="2"> <v>1.1</v> </pt> <pt idx="3"> <v>1.1</v> </pt> <pt idx="4"> <v>1.1</v> </pt> <pt idx="5"> <v>1.1</v> </pt> <pt idx="6"> <v>1.1</v> </pt> <pt idx="7"> <v>1.1</v> </pt> <pt idx="8"> <v>1.1</v> </pt> <pt idx="9"> <v>1.1</v> </pt> <pt idx="10"> <v>1.1</v> </pt> <pt idx="11"> <v>1.1</v> </pt> </numLit> </bubbleSize> </ser> """ node = fromstring(src) ser = Series.from_tree(node) assert ser.idx == 0 assert ser.order == 0 assert ser.xVal.numRef.ref == 'Blatt1!$A$1:$A$12' assert ser.yVal.numRef.ref == 'Blatt1!$B$1:$B$12' assert ser.bubbleSize.numLit.ptCount == 12 assert ser.bubbleSize.numLit.pt[0].v == 1.1 ser.__elements__ = attribute_mapping['bubble'] xml = tostring(ser.to_tree()) diff = compare_xml(xml, src) assert diff is None, diff
def test_invalid_add(self, ChartBase): chart = ChartBase() s = Series() with pytest.raises(TypeError): chart += s
def test_ctor(self, StockChart): from openpyxl25.chart.series import Series chart = StockChart(ser=[Series(), Series(), Series()]) xml = tostring(chart.to_tree()) expected = """ <stockChart xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"> <ser> <idx val="0" /> <order val="0" /> <spPr> <a:ln > <a:prstDash val="solid" /> </a:ln> </spPr> <marker> <symbol val="none"/> <spPr> <a:ln> <a:prstDash val="solid" /> </a:ln> </spPr> </marker> </ser> <ser> <idx val="1" /> <order val="1" /> <spPr> <a:ln> <a:prstDash val="solid" /> </a:ln> </spPr> <marker> <symbol val="none"/> <spPr> <a:ln> <a:prstDash val="solid" /> </a:ln> </spPr> </marker> </ser> <ser> <idx val="2"></idx> <order val="2"></order> <spPr> <a:ln> <a:prstDash val="solid" /> </a:ln> </spPr> <marker> <symbol val="none"/> <spPr> <a:ln> <a:prstDash val="solid" /> </a:ln> </spPr> </marker> </ser> <axId val="10"></axId> <axId val="100"></axId> </stockChart> """ diff = compare_xml(xml, expected) assert diff is None, diff