assertInstanceOf('PhpOffice\\PhpWord\\PhpWord', $object->getPhpWord()); $this->assertInstanceOf('PhpOffice\\PhpWord\\HashTable', $object->getDrawingHashTable()); } /** * covers ::__construct * @expectedException Exception * @expectedExceptionMessage No PhpWord assigned. */ public function testConstructWithNull() { $object = new RTF(); $object->getPhpWord(); } /** * @covers ::save * @todo Haven't got any method to test this */ public function testSavePhpOutput() { $phpWord = new PhpWord(); $section = $phpWord->createSection(); $section->addText('Test'); $writer = new RTF($phpWord); $writer->save('php://output'); } /** * @covers ::save * @expectedException Exception * @expectedExceptionMessage PhpWord object unassigned. */ public function testSaveException() { $writer = new RTF(); $writer->save(); } /** * @covers ::save * @covers :: */ public function testSave() { $imageSrc = \join( \DIRECTORY_SEPARATOR, array(\PHPWORD_TESTS_BASE_DIR, '_files', 'images', 'PhpWord.png') ); $objectSrc = \join( \DIRECTORY_SEPARATOR, array(\PHPWORD_TESTS_BASE_DIR, '_files', 'documents', 'sheet.xls') ); $file = \join( \DIRECTORY_SEPARATOR, array(\PHPWORD_TESTS_BASE_DIR, '_files', 'temp.rtf') ); $phpWord = new PhpWord(); $phpWord->addFontStyle('Font', array('size' => 11)); $phpWord->addParagraphStyle('Paragraph', array('align' => 'center')); $section = $phpWord->createSection(); $section->addText('Test 1', 'Font'); $section->addTextBreak(); $section->addText('Test 2', null, 'Paragraph'); $section->addLink('http://test.com'); $section->addTitle('Test', 1); $section->addPageBreak(); $section->addTable(); $section->addListItem('Test'); $section->addImage($imageSrc); $section->addObject($objectSrc); $section->addTOC(); $section = $phpWord->createSection(); $textrun = $section->createTextRun(); $textrun->addText('Test 3'); $textrun->addTextBreak(); $writer = new RTF($phpWord); $writer->save($file); $this->assertTrue(file_exists($file)); unlink($file); } }