function testRequiredEscaping() { // NOTE verifies that columns with special characters are escaped properly $model = new \Core3\Model\Spreadsheet(); $model->defineColumns(array('ti,tel', 'namn', 'datum', 'antal')); $model->addRow(array('a 1', 'böp,på', 'cdwd', 'devef')); $writer = new Csv(); $writer->setLineEnding("\n"); $this->assertEquals($writer->render($model), '"ti,tel";namn;datum;antal' . "\n" . 'a 1;"böp,på";cdwd;devef' . "\n"); }
function testRecognizePdf() { $model = new \Core3\Model\Spreadsheet(); $model->defineColumns(array('name')); $model->addRow(array('kalle')); $writer = new \Core3\Writer\Spreadsheet\Pdf(); $data = $writer->render($model); $reader = new \Core3\Reader\BinaryData\Document(); $this->assertEquals(true, $reader->isRecognized($data)); $this->assertEquals(true, $reader->isPdfData($data)); }
function testEmbedHtmlImage() { // NOTE: to embed images, use <img src=""> tag but specify a path to an existing file $model = new \Core3\Model\Spreadsheet(); $model->defineColumns(array('id', 'name')); $model->addRow(array('1', 'kalle')); $model->addRow(array('2', 'olle')); $imgFile = tempnam('/tmp', 'embedHtmlImage'); $this->createJpeg($imgFile); $writer = new Pdf(); $writer->setStartHtmlBlock('<img src="' . $imgFile . '"/><br/>'); $writer->setEndHtmlBlock('<h2>GOODBYE</h2>'); $data = $writer->render($model); unlink($imgFile); $reader = new \Core3\Reader\BinaryData\Document(); $this->assertEquals(true, $reader->isRecognized($data)); $this->assertEquals(true, $reader->isPdfData($data)); }
function testUseObjects() { // NOTE tests the use of objects $rowOne = new RowFormat(); $rowOne->id = 1; $rowOne->name = "mr mr"; $rowOne->decimalNumber = 3.14; $rowOne->datestamp = "2014-04-26 11:13:21"; $rowTwo = new RowFormat(); $rowTwo->id = 2; $rowTwo->name = "oteth"; $rowTwo->decimalNumber = 5.559; $rowTwo->datestamp = "2014-05-01 12:00:00"; $model = new \Core3\Model\Spreadsheet(); $model->addRows(array($rowOne, $rowTwo)); $writer = new \Core3\Writer\Spreadsheet\Json(); $this->assertEquals('[' . '{"id":1,"name":"mr mr","decimalNumber":3.14,"datestamp":"2014-04-26 11:13:21"},' . '{"id":2,"name":"oteth","decimalNumber":5.559,"datestamp":"2014-05-01 12:00:00"}' . ']', $writer->render($model)); }
function testFooterColumn() { // NOTE tests that footer column colspan is calculated correctly $model = new \Core3\Model\Spreadsheet(); $model->defineColumns(array('id', 'name', 'result')); $model->addRow(array(1, 'a', 200.57)); $model->addRow(array(2, 'b', 319.11)); $model->setFooter(array('SUMMARY', 'TOTAL')); $writer = new \Core3\Writer\Spreadsheet\Xhtml(); $this->assertEquals($writer->render($model), '<table class="htmlBox">' . '<tr><th>id</th><th>name</th><th>result</th></tr>' . '<tr><td>1</td><td>a</td><td>200.57</td></tr>' . '<tr><td>2</td><td>b</td><td>319.11</td></tr>' . '<tr><th colspan="2">SUMMARY</th><th>TOTAL</th></tr>' . '</table>'); }
/** * @expectedException \Core3\Exception\InvalidArgument */ function testSetFooterInvalid() { $model = new \Core3\Model\Spreadsheet(); $model->setFooter(4); }