From 69947f596b308856d2b351f05243640430ccb318 Mon Sep 17 00:00:00 2001 From: eileen Date: Fri, 30 Nov 2018 11:17:55 +1300 Subject: [PATCH] Add Rule api for dedupe rule & fix tests to use it. Tests seem to be languishing on the painfulness of creating Reules without an api so adding one. Note that there is good automatic test coverage under SyntaxConformance for this. I also removed a pointless piece of code --- tests/phpunit/CRM/Dedupe/DedupeFinderTest.php | 20 ++++++------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/tests/phpunit/CRM/Dedupe/DedupeFinderTest.php b/tests/phpunit/CRM/Dedupe/DedupeFinderTest.php index b20621e46a..97234c9ef4 100644 --- a/tests/phpunit/CRM/Dedupe/DedupeFinderTest.php +++ b/tests/phpunit/CRM/Dedupe/DedupeFinderTest.php @@ -70,14 +70,12 @@ class CRM_Dedupe_DedupeFinderTest extends CiviUnitTestCase { 'is_reserved' => 0, )); foreach (array('first_name', 'last_name') as $field) { - $ruleDao = new CRM_Dedupe_DAO_Rule(); - $ruleDao->dedupe_rule_group_id = $ruleGroup['id']; - $ruleDao->rule_table = 'civicrm_contact'; - $ruleDao->rule_field = $field; - $ruleDao->rule_length = NULL; - $ruleDao->rule_weight = 4; - $ruleDao->save(); - $ruleDao->free(); + $this->callAPISuccess('Rule', 'create', [ + 'dedupe_rule_group_id' => $ruleGroup['id'], + 'rule_table' => 'civicrm_contact', + 'rule_weight' => 4, + 'rule_field' => $field, + ]); } $foundDupes = CRM_Dedupe_Finder::dupesInGroup($ruleGroup['id'], $this->groupID); $this->assertEquals(count($foundDupes), 4); @@ -179,12 +177,6 @@ class CRM_Dedupe_DedupeFinderTest extends CiviUnitTestCase { // verify that all contacts have been created separately $this->assertEquals(count($contactIds), 7, 'Check for number of contacts.'); - $dao = new CRM_Dedupe_DAO_RuleGroup(); - $dao->contact_type = 'Individual'; - $dao->used = 'General'; - $dao->is_default = 1; - $dao->find(TRUE); - $fields = array( 'first_name' => 'robin', 'last_name' => 'hood', -- 2.25.1