Example #1
0
 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");
 }
Example #2
0
 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));
 }
Example #3
0
 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));
 }
Example #4
0
 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));
 }
Example #5
0
 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>');
 }
Example #6
0
 /**
  * @expectedException \Core3\Exception\InvalidArgument
  */
 function testSetFooterInvalid()
 {
     $model = new \Core3\Model\Spreadsheet();
     $model->setFooter(4);
 }