| | <?php |
| |
|
| | require_once __DIR__.'/../Base.php'; |
| |
|
| | use Kanboard\Core\Csv; |
| |
|
| | class CsvTest extends Base |
| | { |
| | public function testGetBooleanValue() |
| | { |
| | $this->assertEquals(1, Csv::getBooleanValue('1')); |
| | $this->assertEquals(1, Csv::getBooleanValue('True')); |
| | $this->assertEquals(1, Csv::getBooleanValue('t')); |
| | $this->assertEquals(1, Csv::getBooleanValue('TRUE')); |
| | $this->assertEquals(1, Csv::getBooleanValue('true')); |
| | $this->assertEquals(1, Csv::getBooleanValue('T')); |
| | $this->assertEquals(1, Csv::getBooleanValue('Y')); |
| | $this->assertEquals(1, Csv::getBooleanValue('y')); |
| | $this->assertEquals(1, Csv::getBooleanValue('yes')); |
| | $this->assertEquals(1, Csv::getBooleanValue('Yes')); |
| |
|
| | $this->assertEquals(0, Csv::getBooleanValue('0')); |
| | $this->assertEquals(0, Csv::getBooleanValue('123')); |
| | $this->assertEquals(0, Csv::getBooleanValue('anything')); |
| | } |
| |
|
| | public function testGetEnclosures() |
| | { |
| | $this->assertCount(3, Csv::getEnclosures()); |
| | $this->assertCount(4, Csv::getDelimiters()); |
| | } |
| |
|
| | public function testReadWrite() |
| | { |
| | $filename = tempnam(sys_get_temp_dir(), 'UT'); |
| | $rows = array( |
| | array('Column A', 'Column B'), |
| | array('value a', 'value b'), |
| | ); |
| |
|
| | $csv = new Csv; |
| | $csv->write($filename, $rows); |
| | $csv->setColumnMapping(array('A', 'B', 'C')); |
| | $csv->read($filename, array($this, 'readRow')); |
| |
|
| | unlink($filename); |
| |
|
| | $this->expectOutputString('"Column A","Column B"'."\n".'"value a","value b"'."\n", $csv->output($rows)); |
| | } |
| |
|
| | public function readRow(array $row, $line) |
| | { |
| | $this->assertEquals(array('value a', 'value b', ''), $row); |
| | $this->assertEquals(1, $line); |
| | } |
| | } |
| |
|