public function testTypeLineMarker()
{
$expectedSymbol1 = Marker::SYMBOL_PLUS;
$expectedSymbol2 = Marker::SYMBOL_DASH;
$expectedSymbol3 = Marker::SYMBOL_DOT;
$expectedSymbol4 = Marker::SYMBOL_TRIANGLE;
$expectedSymbol5 = Marker::SYMBOL_NONE;
$expectedElement = '/office:document-content/office:automatic-styles/style:style[@style:name=\'styleSeries0\'][@style:family=\'chart\']/style:chart-properties';
$expectedSize = rand(1, 100);
$expectedSizeCm = number_format(CommonDrawing::pointsToCentimeters($expectedSize), 2, '.', '') . 'cm';
$oPhpPresentation = new PhpPresentation();
$oSlide = $oPhpPresentation->getActiveSlide();
$oShape = $oSlide->createChartShape();
$oLine = new Line();
$oSeries = new Series('Downloads', array('A' => 1, 'B' => 2, 'C' => 4, 'D' => 3, 'E' => 2));
$oSeries->getMarker()->setSymbol($expectedSymbol1)->setSize($expectedSize);
$oLine->addSeries($oSeries);
$oShape->getPlotArea()->setType($oLine);
$oXMLDoc = TestHelperDOCX::getDocument($oPhpPresentation, 'ODPresentation');
$this->assertTrue($oXMLDoc->fileExists('Object 1/content.xml'));
$this->assertTrue($oXMLDoc->elementExists($expectedElement, 'Object 1/content.xml'));
$this->assertEquals($expectedSymbol1, $oXMLDoc->getElementAttribute($expectedElement, 'chart:symbol-name', 'Object 1/content.xml'));
$this->assertEquals($expectedSizeCm, $oXMLDoc->getElementAttribute($expectedElement, 'chart:symbol-width', 'Object 1/content.xml'));
$this->assertEquals($expectedSizeCm, $oXMLDoc->getElementAttribute($expectedElement, 'chart:symbol-height', 'Object 1/content.xml'));
$oSeries->getMarker()->setSymbol($expectedSymbol2);
$oLine->setSeries(array($oSeries));
$oXMLDoc = TestHelperDOCX::getDocument($oPhpPresentation, 'ODPresentation');
$this->assertEquals('horizontal-bar', $oXMLDoc->getElementAttribute($expectedElement, 'chart:symbol-name', 'Object 1/content.xml'));
$oSeries->getMarker()->setSymbol($expectedSymbol3);
$oLine->setSeries(array($oSeries));
$oXMLDoc = TestHelperDOCX::getDocument($oPhpPresentation, 'ODPresentation');
$this->assertEquals('circle', $oXMLDoc->getElementAttribute($expectedElement, 'chart:symbol-name', 'Object 1/content.xml'));
$oSeries->getMarker()->setSymbol($expectedSymbol4);
$oLine->setSeries(array($oSeries));
$oXMLDoc = TestHelperDOCX::getDocument($oPhpPresentation, 'ODPresentation');
$this->assertEquals('arrow-up', $oXMLDoc->getElementAttribute($expectedElement, 'chart:symbol-name', 'Object 1/content.xml'));
$oSeries->getMarker()->setSymbol($expectedSymbol5);
$oLine->setSeries(array($oSeries));
$oXMLDoc = TestHelperDOCX::getDocument($oPhpPresentation, 'ODPresentation');
$this->assertFalse($oXMLDoc->attributeElementExists($expectedElement, 'chart:symbol-name', 'Object 1/content.xml'));
$this->assertFalse($oXMLDoc->attributeElementExists($expectedElement, 'chart:symbol-width', 'Object 1/content.xml'));
$this->assertFalse($oXMLDoc->attributeElementExists($expectedElement, 'chart:symbol-height', 'Object 1/content.xml'));
}