diff options
Diffstat (limited to 'test/ReaderTest.php')
-rw-r--r-- | test/ReaderTest.php | 51 |
1 files changed, 49 insertions, 2 deletions
diff --git a/test/ReaderTest.php b/test/ReaderTest.php index 33d3c41..cca83a7 100644 --- a/test/ReaderTest.php +++ b/test/ReaderTest.php @@ -253,13 +253,13 @@ class ReaderTest extends PHPUnit_Framework_TestCase public function testStripBOMWithFetchAssoc() { - $expected = [ + $source = [ [Reader::BOM_UTF16_LE.'john', 'doe', 'john.doe@example.com', ], ['jane', 'doe', 'jane.doe@example.com', ], ]; $tmp = new SplTempFileObject(); - foreach ($expected as $row) { + foreach ($source as $row) { $tmp->fputcsv($row); } $csv = Reader::createFromFileObject($tmp); @@ -269,6 +269,53 @@ class ReaderTest extends PHPUnit_Framework_TestCase $this->assertSame('john', $res[0]); } + public function testStripBOMWithEnclosureFetchAssoc() + { + $expected = ["parent name", "parentA"]; + $source = Reader::BOM_UTF8.'"parent name","child name","title" + "parentA","childA","titleA"'; + $csv = Reader::createFromString($source); + $csv->stripBom(true); + $expected = [ + ["parent name" => "parentA", "child name" => "childA", "title" => "titleA"], + ]; + $this->assertSame($expected, $csv->fetchAssoc()); + } + + public function testStripBOMWithEnclosureFetchColumn() + { + $expected = ["parent name", "parentA"]; + $source = Reader::BOM_UTF8.'"parent name","child name","title" + "parentA","childA","titleA"'; + $csv = Reader::createFromString($source); + $csv->stripBom(true); + $this->assertSame($expected, $csv->fetchColumn()); + } + + public function testStripBOMWithEnclosureFetchAll() + { + $source = Reader::BOM_UTF8.'"parent name","child name","title" + "parentA","childA","titleA"'; + $csv = Reader::createFromString($source); + $csv->stripBom(true); + $expected = [ + ["parent name", "child name", "title"], + ["parentA", "childA", "titleA"], + ]; + $this->assertSame($expected, $csv->fetchAll()); + } + + public function testStripBOMWithEnclosureFetchOne() + { + $source = Reader::BOM_UTF8.'"parent name","child name","title" + "parentA","childA","titleA"'; + $csv = Reader::createFromString($source); + $csv->stripBom(true); + $this->assertSame(Reader::BOM_UTF8, $csv->getInputBom()); + $expected = ["parent name", "child name", "title"]; + $this->assertEquals($expected, $csv->fetchOne()); + } + /** * @expectedException \InvalidArgumentException */ |