Merge pull request #17706 from demeritcowboy/mysql-ssl-alt
[civicrm-core.git] / tests / phpunit / api / v3 / MappingTest.php
CommitLineData
927f93e2
TM
1<?php
2/*
3 +--------------------------------------------------------------------+
7d61e75f 4 | Copyright CiviCRM LLC. All rights reserved. |
927f93e2 5 | |
7d61e75f
TO
6 | This work is published under the GNU AGPLv3 license with some |
7 | permitted exceptions and without any warranty. For full license |
8 | and copyright information, see https://civicrm.org/licensing |
927f93e2
TM
9 +--------------------------------------------------------------------+
10 */
11
927f93e2
TM
12/**
13 * Test APIv3 civicrm_mapping_* functions
14 *
15 * @package CiviCRM_APIv3
16 * @subpackage API_Contact
acb109b7 17 * @group headless
927f93e2
TM
18 */
19class api_v3_MappingTest extends CiviUnitTestCase {
20
21 protected $_apiversion = 3;
22 protected $params;
23 protected $id;
24 protected $_entity;
25
26 public $DBResetRequired = FALSE;
27
28 public function setUp() {
29 parent::setUp();
30 $this->useTransaction(TRUE);
31
32 $this->_entity = 'mapping';
9099cab3 33 $this->params = [
927f93e2
TM
34 'name' => 'Mapping name',
35 'description' => 'Mapping description',
36 // 'Export Contact' mapping.
37 'mapping_type_id' => 7,
9099cab3 38 ];
927f93e2
TM
39 }
40
41 public function testCreateMapping() {
42 $result = $this->callAPIAndDocument($this->_entity, 'create', $this->params, __FUNCTION__, __FILE__);
43 $this->assertEquals(1, $result['count']);
44 $this->getAndCheck($this->params, $result['id'], $this->_entity);
45 $this->assertNotNull($result['values'][$result['id']]['id']);
46 }
47
48 public function testGetMapping() {
49 $result = $this->callAPISuccess($this->_entity, 'create', $this->params);
50 $result = $this->callAPIAndDocument($this->_entity, 'get', $this->params, __FUNCTION__, __FILE__);
51 $this->assertEquals(1, $result['count']);
52 $this->assertNotNull($result['values'][$result['id']]['id']);
9099cab3 53 $this->callAPISuccess($this->_entity, 'delete', ['id' => $result['id']]);
927f93e2
TM
54 }
55
56 public function testDeleteMapping() {
57 $result = $this->callAPISuccess($this->_entity, 'create', $this->params);
9099cab3 58 $deleteParams = ['id' => $result['id']];
927f93e2 59 $result = $this->callAPIAndDocument($this->_entity, 'delete', $deleteParams, __FUNCTION__, __FILE__);
9099cab3 60 $checkDeleted = $this->callAPISuccess($this->_entity, 'get', []);
927f93e2
TM
61 $this->assertEquals(0, $checkDeleted['count']);
62 }
63
64 public function testDeleteMappingInvalid() {
65 $result = $this->callAPISuccess($this->_entity, 'create', $this->params);
9099cab3 66 $deleteParams = ['id' => 600];
927f93e2 67 $result = $this->callAPIFailure($this->_entity, 'delete', $deleteParams);
9099cab3 68 $checkDeleted = $this->callAPISuccess($this->_entity, 'get', []);
927f93e2
TM
69 $this->assertEquals(1, $checkDeleted['count']);
70 }
71
72}