X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=tests%2Fphpunit%2Fapi%2Fv4%2FAction%2FNullValueTest.php;h=d52b2a348888494074cfde11b9a6fe5f49f8f1bd;hb=952e2a50682ed31cb50211da70d74ffcd9c301c2;hp=cc3030c91c74aa3752dd7c278507732784936dc7;hpb=ee4ac4e666956c3255b24525be6fc992760513a8;p=civicrm-core.git diff --git a/tests/phpunit/api/v4/Action/NullValueTest.php b/tests/phpunit/api/v4/Action/NullValueTest.php index cc3030c91c..d52b2a3488 100644 --- a/tests/phpunit/api/v4/Action/NullValueTest.php +++ b/tests/phpunit/api/v4/Action/NullValueTest.php @@ -14,13 +14,12 @@ * * @package CRM * @copyright CiviCRM LLC https://civicrm.org/licensing - * $Id$ - * */ namespace api\v4\Action; +use Civi\Api4\Activity; use Civi\Api4\Contact; use api\v4\UnitTestCase; @@ -71,4 +70,43 @@ class NullValueTest extends UnitTestCase { $this->assertSame('ILoveMy', $contact['display_name']); } + public function testSaveWithReload() { + $contact = Contact::create() + ->setCheckPermissions(FALSE) + ->addValue('first_name', 'Firsty') + ->addValue('last_name', 'Lasty') + ->execute() + ->first(); + + $activity = Activity::create() + ->setCheckPermissions(FALSE) + ->addValue('source_contact_id', $contact['id']) + ->addValue('activity_type_id', 1) + ->addValue('subject', 'hello') + ->execute() + ->first(); + + $this->assertEquals('hello', $activity['subject']); + + $saved = Activity::save() + ->setCheckPermissions(FALSE) + ->addRecord(['id' => $activity['id'], 'subject' => NULL]) + ->execute() + ->first(); + + $this->assertNull($saved['subject']); + $this->assertArrayNotHasKey('activity_date_time', $saved); + + $saved = Activity::save() + ->setCheckPermissions(FALSE) + ->addRecord(['id' => $activity['id'], 'subject' => NULL]) + ->setReload(TRUE) + ->execute() + ->first(); + + $this->assertNull($saved['subject']); + $this->assertArrayHasKey('activity_date_time', $saved); + + } + }