c8b6516f426cdc4309204113ac786992252e7d8a
[civicrm-core.git] / tests / phpunit / api / v4 / Action / NullValueTest.php
1 <?php
2
3 namespace api\v4\Action;
4
5 use Civi\Api4\Contact;
6 use api\v4\UnitTestCase;
7
8 /**
9 * @group headless
10 */
11 class NullValueTest extends UnitTestCase {
12
13 public function setUpHeadless() {
14 $format = '{contact.first_name}{ }{contact.last_name}';
15 \Civi::settings()->set('display_name_format', $format);
16 return parent::setUpHeadless();
17 }
18
19 public function testStringNull() {
20 $contact = Contact::create()
21 ->setCheckPermissions(FALSE)
22 ->addValue('first_name', 'Joseph')
23 ->addValue('last_name', 'null')
24 ->addValue('contact_type', 'Individual')
25 ->execute()
26 ->first();
27
28 $this->assertSame('Null', $contact['last_name']);
29 $this->assertSame('Joseph Null', $contact['display_name']);
30 }
31
32 public function testSettingToNull() {
33 $contact = Contact::create()
34 ->setCheckPermissions(FALSE)
35 ->addValue('first_name', 'ILoveMy')
36 ->addValue('last_name', 'LastName')
37 ->addValue('contact_type', 'Individual')
38 ->execute()
39 ->first();
40
41 $this->assertSame('ILoveMy LastName', $contact['display_name']);
42 $contactId = $contact['id'];
43
44 $contact = Contact::update()
45 ->setCheckPermissions(FALSE)
46 ->addWhere('id', '=', $contactId)
47 ->addValue('last_name', NULL)
48 ->execute()
49 ->first();
50
51 $this->assertSame(NULL, $contact['last_name']);
52 $this->assertSame('ILoveMy', $contact['display_name']);
53 }
54
55 }