/** * @dataProvider \g105b\phpcsv\TestHelper::data_randomFilePath */ public function testUpdateRowByIndex($filePath) { TestHelper::createCsv($filePath); $csv = new Csv($filePath); $csv->setIdField("rowNum"); $row = $csv->get(3); $newFirstName = "Updated-" . $row["firstName"]; $row["firstName"] = $newFirstName; $updated = $csv->updateRow(3, $row); $this->assertTrue($updated); $row = $csv->get(3); $this->assertEquals($newFirstName, $row["firstName"]); }
/** * @dataProvider \g105b\phpcsv\TestHelper::data_randomFilePath */ public function testNewLine($filePath) { TestHelper::createCsv($filePath, 10); $csv = new Csv($filePath); $all = $csv->getAll(); $numberOfRows = count($all); $csv->setIdField("rowNum"); $headers = $csv->getHeaders(); $rowThatHasNewLine = rand(0, 9); $fieldThatHasQuotes = rand(0, count($headers) - 2); $headerName = $headers[$fieldThatHasQuotes]; $row = $csv->get($rowThatHasNewLine); $fieldValue = "New...\n...Line!"; $row[$headerName] = $fieldValue; $csv->updateRow($rowThatHasNewLine, $row); $all = $csv->getAll(true); $this->assertEquals($numberOfRows, count($all), 'Should have same number of rows after update'); $rowAfterUpdate = $csv->get($rowThatHasNewLine); $this->assertEquals($fieldValue, $rowAfterUpdate[$headerName]); }