Test node value
';
$phpWord = $this->getDocumentFromString(array('document' => $documentXml));
$elements = $phpWord->getSection(0)->getElements();
$this->assertInstanceOf('PhpOffice\PhpWord\Element\TextRun', $elements[0]);
$this->assertInstanceOf('PhpOffice\PhpWord\Element\Text', $elements[0]->getElement(0));
$text = $elements[0];
$this->assertEquals('Test node value', trim($text->getElement(0)->getText()));
}
/**
* Test reading of textbreak
*/
public function testReadTextBreak()
{
$documentXml = '
test string
';
$phpWord = $this->getDocumentFromString(array('document' => $documentXml));
$elements = $phpWord->getSection(0)->getElements();
$this->assertInstanceOf('PhpOffice\PhpWord\Element\TextRun', $elements[0]);
/** @var \PhpOffice\PhpWord\Element\TextRun $textRun */
$textRun = $elements[0];
$this->assertInstanceOf('PhpOffice\PhpWord\Element\TextBreak', $textRun->getElement(0));
$this->assertInstanceOf('PhpOffice\PhpWord\Element\Text', $textRun->getElement(1));
$this->assertEquals('test string', $textRun->getElement(1)->getText());
}
/**
* Test reading content inside w:smartTag
*/
public function testSmartTag()
{
$documentXml = '
test string
';
$phpWord = $this->getDocumentFromString(array('document' => $documentXml));
$elements = $phpWord->getSection(0)->getElements();
$this->assertInstanceOf('PhpOffice\PhpWord\Element\TextRun', $elements[0]);
/** @var \PhpOffice\PhpWord\Element\TextRun $textRun */
$textRun = $elements[0];
$this->assertInstanceOf('PhpOffice\PhpWord\Element\Text', $textRun->getElement(0));
$this->assertEquals('test string', $textRun->getElement(0)->getText());
}
/**
* Test reading of textbreak
*/
public function testReadListItemRunWithFormatting()
{
$documentXml = '
Two
with
bold
';
$phpWord = $this->getDocumentFromString(array('document' => $documentXml));
$sections = $phpWord->getSection(0);
$this->assertNull($sections->getElement(999));
$this->assertInstanceOf('PhpOffice\PhpWord\Element\ListItemRun', $sections->getElement(0));
$this->assertEquals(0, $sections->getElement(0)->getDepth());
$listElements = $sections->getElement(0)->getElements();
$this->assertInstanceOf('PhpOffice\PhpWord\Element\Text', $listElements[0]);
$this->assertEquals('Two', $listElements[0]->getText());
$this->assertEquals(' with ', $listElements[1]->getText());
$this->assertEquals('bold', $listElements[2]->getText());
$this->assertTrue($listElements[2]->getFontStyle()->getBold());
}
/**
* Test reading track changes
*/
public function testReadTrackChange()
{
$documentXml = '
One
two
three
';
$phpWord = $this->getDocumentFromString(array('document' => $documentXml));
$elements = $phpWord->getSection(0)->getElements();
$this->assertInstanceOf('PhpOffice\PhpWord\Element\TextRun', $elements[0]);
/** @var \PhpOffice\PhpWord\Element\TextRun $elements */
$textRun = $elements[0];
$this->assertEquals('One ', $textRun->getElement(0)->getText());
$this->assertEquals('two', $textRun->getElement(1)->getText());
$this->assertNotNull($textRun->getElement(1)->getTrackChange());
/** @var \PhpOffice\PhpWord\Element\TrackChange $trackChange */
$trackChange = $textRun->getElement(1)->getTrackChange();
$this->assertEquals(TrackChange::DELETED, $trackChange->getChangeType());
$this->assertEquals('three', $textRun->getElement(2)->getText());
$this->assertNotNull($textRun->getElement(2)->getTrackChange());
/** @var \PhpOffice\PhpWord\Element\TrackChange $trackChange */
$trackChange = $textRun->getElement(2)->getTrackChange();
$this->assertEquals(TrackChange::INSERTED, $trackChange->getChangeType());
}
/**
* Test reading of tab
*/
public function testReadTab()
{
$documentXml = '
One
Two
';
$phpWord = $this->getDocumentFromString(array('document' => $documentXml));
$elements = $phpWord->getSection(0)->getElements();
$this->assertInstanceOf('PhpOffice\PhpWord\Element\TextRun', $elements[0]);
/** @var \PhpOffice\PhpWord\Element\TextRun $textRun */
$textRun = $elements[0];
$this->assertInstanceOf('PhpOffice\PhpWord\Element\Text', $textRun->getElement(0));
$this->assertEquals('One', $textRun->getElement(0)->getText());
$this->assertInstanceOf('PhpOffice\PhpWord\Element\Text', $textRun->getElement(1));
$this->assertEquals("\t", $textRun->getElement(1)->getText());
$this->assertInstanceOf('PhpOffice\PhpWord\Element\Text', $textRun->getElement(2));
$this->assertEquals('Two', $textRun->getElement(2)->getText());
}
/**
* Test reading Title style
*/
public function testReadTitleStyle()
{
$documentXml = '
This is a non formatted title
This is a
bold
title
';
$stylesXml = '
';
$phpWord = $this->getDocumentFromString(array('document' => $documentXml, 'styles' => $stylesXml));
$elements = $phpWord->getSection(0)->getElements();
$this->assertInstanceOf('PhpOffice\PhpWord\Element\Title', $elements[0]);
/** @var \PhpOffice\PhpWord\Element\Title $title */
$title = $elements[0];
$this->assertEquals('Title', $title->getStyle());
$this->assertEquals('This is a non formatted title', $title->getText());
$this->assertInstanceOf('PhpOffice\PhpWord\Element\Title', $elements[1]);
/** @var \PhpOffice\PhpWord\Element\Title $formattedTitle */
$formattedTitle = $elements[1];
$this->assertEquals('Title', $formattedTitle->getStyle());
$this->assertInstanceOf('PhpOffice\PhpWord\Element\TextRun', $formattedTitle->getText());
}
/**
* Test reading Drawing
*/
public function testReadDrawing()
{
$documentXml = '
';
$phpWord = $this->getDocumentFromString(array('document' => $documentXml));
$elements = $phpWord->getSection(0)->getElements();
$this->assertInstanceOf('PhpOffice\PhpWord\Element\TextRun', $elements[0]);
}
}