3 require_once 'CiviTest/CiviUnitTestCase.php';
4 require_once 'CRM/Utils/DeprecatedUtils.php';
7 * Class CRM_Utils_DeprecatedUtilsTest
9 class CRM_Utils_DeprecatedUtilsTest
extends CiviUnitTestCase
{
11 public function setUp() {
15 public function tearDown() {
16 // truncate a few tables
17 $tablesToTruncate = array(
20 'civicrm_contribution',
24 $this->quickCleanup($tablesToTruncate);
28 * Test civicrm_contact_check_params with no contact type.
30 public function testCheckParamsWithNoContactType() {
31 $params = array('foo' => 'bar');
32 $contact = _civicrm_api3_deprecated_contact_check_params($params, FALSE);
33 $this->assertEquals(1, $contact['is_error'], "In line " . __LINE__
);
38 * Test civicrm_contact_check_params with a duplicate.
40 public function testCheckParamsWithDuplicateContact() {
41 // Insert a row in civicrm_contact creating individual contact
42 $op = new PHPUnit_Extensions_Database_Operation_Insert();
43 $op->execute($this->_dbconn
,
44 $this->createXMLDataSet(
45 dirname(__FILE__
) . '/../../api/v3/dataset/contact_17.xml'
48 $op->execute($this->_dbconn
,
49 $this->createXMLDataSet(
50 dirname(__FILE__
) . '/../../api/v3/dataset/email_contact_17.xml'
55 'first_name' => 'Test',
56 'last_name' => 'Contact',
57 'email' => 'TestContact@example.com',
58 'contact_type' => 'Individual',
60 $contact = _civicrm_api3_deprecated_contact_check_params($params, TRUE);
61 $this->assertEquals(1, $contact['is_error']);
62 $this->assertRegexp("/matching contacts.*17/s",
63 CRM_Utils_Array
::value('error_message', $contact)
69 * Test civicrm_contact_check_params with a duplicate.
70 * and request the error in array format
72 public function testCheckParamsWithDuplicateContact2() {
73 // Insert a row in civicrm_contact creating individual contact
74 $op = new PHPUnit_Extensions_Database_Operation_Insert();
75 $op->execute($this->_dbconn
,
76 $this->createXMLDataSet(
77 dirname(__FILE__
) . '/../../api/v3/dataset/contact_17.xml'
80 $op->execute($this->_dbconn
,
81 $this->createXMLDataSet(
82 dirname(__FILE__
) . '/../../api/v3/dataset/email_contact_17.xml'
87 'first_name' => 'Test',
88 'last_name' => 'Contact',
89 'email' => 'TestContact@example.com',
90 'contact_type' => 'Individual',
92 $contact = _civicrm_api3_deprecated_contact_check_params($params, TRUE, TRUE);
93 $this->assertEquals(1, $contact['is_error']);
94 $this->assertRegexp("/matching contacts.*17/s",
95 $contact['error_message']['message']
100 * Test civicrm_contact_check_params with check for required
101 * params and no params
103 public function testCheckParamsWithNoParams() {
105 $contact = _civicrm_api3_deprecated_contact_check_params($params, FALSE);
106 $this->assertEquals(1, $contact['is_error'], "In line " . __LINE__
);