/** * @covers \airmoi\FileMaker\Object\Record::setField */ public function testSetField() { $this->record->setField('text_field', __METHOD__); $this->assertEquals(__METHOD__, $this->record->getField('text_field')); $this->record->setField('text_field', __METHOD__ . ' repeat 1', 1); $this->assertEquals(__METHOD__ . ' repeat 1', $this->record->getField('text_field', 1)); $this->record->setField('related_sample::text_field', __METHOD__ . 'related[1]'); $this->assertEquals(__METHOD__ . 'related[1]', $this->record->getField('related_sample::text_field')); $this->record->setField('related_sample::text_field', __METHOD__ . 'related[2]', 1); $this->assertEquals(__METHOD__ . 'related[2]', $this->record->getField('related_sample::text_field', 1)); $this->record->setField('date_field', date('Y-m-d')); $this->assertEquals(date('Y-m-d'), $this->record->getField('date_field')); $this->assertInstanceOf(FileMakerException::class, $this->record->setField('missing_field', __METHOD__)); /** * Date autoformat */ $this->fm->setProperty('dateFormat', 'd/m/Y'); $this->record->setField('date_field', '16/06/2016'); $this->assertEquals('06/16/2016', $this->record->fields['date_field'][0]); $this->record->setField('date_field', '01/02/0001'); $this->assertEquals('02/01/0001', $this->record->fields['date_field'][0]); $this->record->setField('date_field', '31/12/4000'); $this->assertEquals('12/31/4000', $this->record->fields['date_field'][0]); $this->assertInstanceOf(FileMakerException::class, $this->record->setField('date_field', '2016-08-19')); $this->record->setField('timestamp_field', '08/01/1942 00:00:00'); $this->assertEquals('01/08/1942 00:00:00', $this->record->fields['timestamp_field'][0]); $this->assertInstanceOf(FileMakerException::class, $this->record->setField('timestamp_field', '2016-08-19')); }