4 +--------------------------------------------------------------------+
5 | Copyright CiviCRM LLC. All rights reserved. |
7 | This work is published under the GNU AGPLv3 license with some |
8 | permitted exceptions and without any warranty. For full license |
9 | and copyright information, see https://civicrm.org/licensing |
10 +--------------------------------------------------------------------+
16 * @copyright CiviCRM LLC https://civicrm.org/licensing
20 namespace api\v
4\Entity
;
22 use Civi\Api4\CiviCase
;
23 use api\v
4\UnitTestCase
;
24 use Civi\Api4\Relationship
;
29 class CaseTest
extends UnitTestCase
{
31 public function setUp(): void
{
33 \CRM_Core_BAO_ConfigSetting
::enableComponent('CiviCase');
34 $this->loadDataSet('CaseType');
37 public function tearDown(): void
{
40 'civicrm_activity_contact',
41 'civicrm_relationship',
42 'civicrm_case_contact',
46 $this->cleanup(['tablesToTruncate' => $relatedTables]);
50 public function testCreateUsingLoggedInUser() {
51 $uid = $this->createLoggedInUser();
53 $contactID = $this->createEntity(['type' => 'Individual'])['id'];
55 $case = CiviCase
::create(FALSE)
56 ->addValue('case_type_id', $this->getReference('test_case_type_1')['id'])
57 ->addValue('creator_id', 'user_contact_id')
58 ->addValue('status_id', 1)
59 ->addValue('contact_id', $contactID)
63 $relationships = Relationship
::get(FALSE)
64 ->addWhere('case_id', '=', $case['id'])
67 $this->assertCount(1, $relationships);
68 $this->assertEquals($uid, $relationships[0]['contact_id_b']);
69 $this->assertEquals($contactID, $relationships[0]['contact_id_a']);