diff --git a/src/PhpWord/Writer/HTML/Element/ListItemRun.php b/src/PhpWord/Writer/HTML/Element/ListItemRun.php
new file mode 100644
index 0000000000..a4d7e46073
--- /dev/null
+++ b/src/PhpWord/Writer/HTML/Element/ListItemRun.php
@@ -0,0 +1,43 @@
+element instanceof \PhpOffice\PhpWord\Element\ListItemRun) {
+ return '';
+ }
+
+ $writer = new Container($this->parentWriter, $this->element);
+ $content = $writer->write() . PHP_EOL;
+
+ return $content;
+ }
+}
diff --git a/tests/PhpWord/Writer/HTML/ElementTest.php b/tests/PhpWord/Writer/HTML/ElementTest.php
index 101e226f50..4eb92fe557 100644
--- a/tests/PhpWord/Writer/HTML/ElementTest.php
+++ b/tests/PhpWord/Writer/HTML/ElementTest.php
@@ -34,7 +34,7 @@ class ElementTest extends \PHPUnit\Framework\TestCase
*/
public function testUnmatchedElements()
{
- $elements = array('Container', 'Footnote', 'Image', 'Link', 'ListItem', 'Table', 'Title', 'Bookmark');
+ $elements = array('Container', 'Footnote', 'Image', 'Link', 'ListItem', 'ListItemRun', 'Table', 'Title', 'Bookmark');
foreach ($elements as $element) {
$objectClass = 'PhpOffice\\PhpWord\\Writer\\HTML\\Element\\' . $element;
$parentWriter = new HTML();
@@ -163,6 +163,31 @@ public function testWriteTitleTextRun()
$this->assertContains($expected, $content);
}
+ /**
+ * Test write element ListItemRun
+ */
+ public function testListItemRun()
+ {
+ $expected1 = 'List item run 1';
+ $expected2 = 'List item run 1 in bold';
+
+ $phpWord = new PhpWord();
+ $section = $phpWord->addSection();
+
+ $listItemRun = $section->addListItemRun(0, null, 'MyParagraphStyle');
+ $listItemRun->addText($expected1);
+ $listItemRun->addText($expected2, array('bold' => true));
+
+ $htmlWriter = new HTML($phpWord);
+ $content = $htmlWriter->getContent();
+
+ $dom = new \DOMDocument();
+ $dom->loadHTML($content);
+
+ $this->assertEquals($expected1, $dom->getElementsByTagName('p')->item(0)->textContent);
+ $this->assertEquals($expected2, $dom->getElementsByTagName('p')->item(1)->textContent);
+ }
+
/**
* Tests writing table with layout
*/