Пример #1
0
 /**
  * @dataProvider \g105b\phpcsv\TestHelper::data_randomFilePath
  */
 public function testUpdateRowWithMissingFields($filePath)
 {
     TestHelper::createCsv($filePath);
     $csv = new Csv($filePath);
     $csv->setIdField("rowNum");
     $row = $csv->get(3);
     $newFirstName = "Updated-" . $row["firstName"];
     $row["firstName"] = $newFirstName;
     $existingLastName = $row["lastName"];
     unset($row["lastName"]);
     $updated = $csv->update($row);
     $this->assertTrue($updated);
     $row = $csv->get(3);
     $this->assertEquals($newFirstName, $row["firstName"]);
     $this->assertEquals($existingLastName, $row["lastName"]);
 }
Пример #2
0
 /**
  * @dataProvider \g105b\phpcsv\TestHelper::data_randomFilePath
  */
 public function testUnicodeData($filePath)
 {
     $csv = new Csv($filePath);
     $data = [["EnglishWord" => "American", "ChineseWord" => "美国人"], ["EnglishWord" => "French", "ChineseWord" => "法国人"], ["EnglishWord" => "German", "ChineseWord" => "德国人"]];
     foreach ($data as $d) {
         $csv->add($d);
     }
     $this->assertEquals($data[1], $csv->get(1));
 }
Пример #3
0
 /**
  * @dataProvider \g105b\phpcsv\TestHelper::data_randomFilePath
  */
 public function testDeleteByReferenceRemovesExpectedRow($filePath)
 {
     TestHelper::createCsv($filePath, 10);
     $csv = new Csv($filePath);
     $rowThree = $csv->get(3);
     $allRows = $csv->getAll();
     $this->assertContains($rowThree, $allRows);
     $csv->delete($rowThree);
     $allRowsAfterDelete = $csv->getAll();
     $this->assertNotContains($rowThree, $allRowsAfterDelete);
     $searchResult = $csv->getAllBy("firstName", $rowThree["firstName"]);
     $this->assertNotContains($rowThree, $searchResult);
 }
Пример #4
0
 /**
  * @dataProvider \g105b\phpcsv\TestHelper::data_randomFilePath
  */
 public function testGetIncrements($filePath)
 {
     $originalRows = TestHelper::createCsv($filePath, 10);
     $headers = array_shift($originalRows);
     $csv = new Csv($filePath);
     $rowNumber = 0;
     while ($row = $csv->get()) {
         foreach ($row as $fieldName => $value) {
             $fieldIndex = array_search($fieldName, $headers);
             $this->assertEquals($originalRows[$rowNumber][$fieldIndex], $value);
         }
         $rowNumber++;
     }
 }
Пример #5
0
 /**
  * @dataProvider \g105b\phpcsv\TestHelper::data_randomFilePath
  * @expectedException \g105b\phpcsv\InvalidIndexException
  */
 public function testGetNonIntegerIndex_negative($filePath)
 {
     TestHelper::createCsv($filePath, 10);
     $csv = new Csv($filePath);
     $csv->get(-5);
 }
Пример #6
0
 /**
  * @dataProvider \g105b\phpcsv\TestHelper::data_randomFilePath
  */
 public function testAddingMissingFieldsIndexed($filePath)
 {
     $csv = new Csv($filePath);
     $csv->add(["firstName" => "Alan", "lastName" => "Statham", "Job Title" => "Consultant Radiologist"]);
     $csv->add([2 => "Surgical Registrar"]);
     $row = $csv->get(1);
     $this->assertArrayHasKey("firstName", $row);
     $this->assertArrayHasKey("lastName", $row);
     $this->assertArrayHasKey("Job Title", $row);
     $csv->add([0 => "Martin"]);
     $row = $csv->get(2);
     $this->assertArrayHasKey("firstName", $row);
     $this->assertArrayHasKey("lastName", $row);
     $this->assertArrayHasKey("Job Title", $row);
 }