convert() * \Magento\Framework\Convert\Excel($iterator) * * @return void */ public function testConvert() { $convert = new \Magento\Framework\Convert\Excel(new \ArrayIterator($this->_testData)); $convert->setDataHeader($this->_testHeader); $convert->setDataFooter($this->_testFooter); $this->assertXmlStringEqualsXmlString( file_get_contents($this->_getSampleOutputFile()), $convert->convert() ); } /** * Test \Magento\Framework\Convert\Excel->convert() * \Magento\Framework\Convert\Excel($iterator, $callbackMethod) * * @return void */ public function testConvertCallback() { $convert = new \Magento\Framework\Convert\Excel( new \ArrayIterator($this->_testData), [$this, 'callbackMethod'] ); $this->assertContains('_TRUE_', $convert->convert(), 'Failed asserting that callback method is called.'); } /** * Write Data into File * * @param bool $callback * @return string */ protected function _writeFile($callback = false) { $name = md5(microtime()); $file = TESTS_TEMP_DIR . '/' . $name . '.xml'; $stream = new \Magento\Framework\Filesystem\File\Write( $file, new \Magento\Framework\Filesystem\Driver\File(), 'w+' ); $stream->lock(); if (!$callback) { $convert = new \Magento\Framework\Convert\Excel(new \ArrayIterator($this->_testData)); $convert->setDataHeader($this->_testHeader); $convert->setDataFooter($this->_testFooter); } else { $convert = new \Magento\Framework\Convert\Excel( new \ArrayIterator($this->_testData), [$this, 'callbackMethod'] ); } $convert->write($stream); $stream->unlock(); $stream->close(); return $file; } /** * Test \Magento\Framework\Convert\Excel->write() * \Magento\Framework\Convert\Excel($iterator) * * @return void */ public function testWrite() { $file = $this->_writeFile(); $this->assertXmlStringEqualsXmlString( file_get_contents($this->_getSampleOutputFile()), file_get_contents($file) ); } /** * Test \Magento\Framework\Convert\Excel->write() * \Magento\Framework\Convert\Excel($iterator, $callbackMethod) * * @return void */ public function testWriteCallback() { $file = $this->_writeFile(true); $this->assertContains('_TRUE_', file_get_contents($file), 'Failed asserting that callback method is called.'); } }