Case api test fixes
authorColeman Watts <coleman@civicrm.org>
Fri, 1 Jan 2016 23:02:36 +0000 (18:02 -0500)
committerColeman Watts <coleman@civicrm.org>
Sat, 2 Jan 2016 02:31:51 +0000 (21:31 -0500)
api/v3/Case.php
tests/phpunit/api/v3/CaseTest.php

index 205a6068df47561b0986a2d3e4f030b4c6e9a42b..cb57f1537ad05c2f658ff018b56c39cd9cd650b0 100644 (file)
@@ -252,7 +252,7 @@ function civicrm_api3_case_get($params) {
 
   // For historic reasons we return these by default only when fetching a case by id
   if (!empty($params['id']) && empty($options['return'])) {
-    $options['return'] += array('contacts' => 1, 'activities' => 1, 'contact_id' => 1);
+    $options['return'] = array('contacts' => 1, 'activities' => 1, 'contact_id' => 1);
   }
 
   foreach ($foundcases['values'] as &$case) {
index 6e929935b64c928c38480994e0a629ad8a497462..d4112f19eafee7b973a9f01c7196bc3c63a4e745 100644 (file)
@@ -124,17 +124,16 @@ class api_v3_CaseTest extends CiviCaseTestCase {
     $params['case_type'] = $this->caseType;
     $result = $this->callAPISuccess('case', 'create', $params);
     $id = $result['id'];
-    $result = $this->callAPISuccess('case', 'get', array('id' => $id));
-    $case = $result['values'][$id];
+    $case = $this->callAPISuccess('case', 'getsingle', array('id' => $id));
 
     // Update Case.
     $params = array('id' => $id);
-    $params['subject'] = $case['subject'] = 'Something Else';
+    $params['subject'] = $case['subject'] = $case['case_subject'] = 'Something Else';
     $this->callAPISuccess('case', 'create', $params);
 
     // Verify that updated case is exactly equal to the original with new subject.
-    $result = $this->callAPISuccess('case', 'get', array('case_id' => $id));
-    $this->assertEquals($result['values'][$id], $case);
+    $result = $this->callAPISuccess('case', 'getsingle', array('case_id' => $id));
+    $this->assertAPIArrayComparison($result, $case);
   }
 
   /**
@@ -169,14 +168,14 @@ class api_v3_CaseTest extends CiviCaseTestCase {
     $id = $result['id'];
 
     // Check result - we should get a list of activity ids
-    $result = $this->callAPISuccess('case', 'get', array('id' => $id));
+    $result = $this->callAPISuccess('case', 'get', array('id' => $id, 'return' => 'activities'));
     $case = $result['values'][$id];
     $activity = $case['activities'][0];
 
     // Fetch case based on an activity id
     $result = $this->callAPISuccess('case', 'get', array(
         'activity_id' => $activity,
-        'return' => 'activities,contacts',
+        'return' => 'activities',
       ));
     $this->assertEquals(FALSE, empty($result['values'][$id]));
     $this->assertEquals($result['values'][$id], $case);
@@ -191,7 +190,7 @@ class api_v3_CaseTest extends CiviCaseTestCase {
     $id = $result['id'];
 
     // Store result for later
-    $case = $this->callAPISuccess('case', 'getsingle', array('id' => $id));
+    $case = $this->callAPISuccess('case', 'getsingle', array('id' => $id, 'return' => array('activities', 'contacts')));
 
     // Fetch case based on client contact id
     $result = $this->callAPISuccess('case', 'get', array(
@@ -210,12 +209,12 @@ class api_v3_CaseTest extends CiviCaseTestCase {
     $id = $result['id'];
 
     // Store result for later
-    $case = $this->callAPISuccess('case', 'getsingle', array('id' => $id));
+    $case = $this->callAPISuccess('case', 'getsingle', array('id' => $id, 'return' => 'subject'));
 
     // Fetch case based on client contact id
     $result = $this->callAPISuccess('case', 'get', array(
         'subject' => $this->_params['subject'],
-        'return' => array('activities', 'contacts'),
+        'return' => array('subject'),
       ));
     $this->assertAPIArrayComparison($result['values'][$id], $case);
   }
@@ -242,9 +241,9 @@ class api_v3_CaseTest extends CiviCaseTestCase {
     $id = $result['id'];
 
     // Store result for later
-    $case = $this->callAPISuccess('case', 'getsingle', array('id' => $id));
+    $case = $this->callAPISuccess('case', 'getsingle', array('id' => $id, 'return' => 'contact_id'));
 
-    $result = $this->callAPISuccess('case', 'get', array('return' => array('activities', 'contacts')));
+    $result = $this->callAPISuccess('case', 'get', array('limit' => 0, 'return' => array('contact_id')));
     $this->assertAPIArrayComparison($result['values'][$id], $case);
   }