test suite - fix signature on GroupCreate call
[civicrm-core.git] / tests / phpunit / api / v3 / GroupOrganizationTest.php
index 71b5ec38f28d0aaa115e9e676e040db360f79151..2efe9a9a89cd0434334ef39a3c21f6b5716ccfd8 100644 (file)
@@ -1,8 +1,7 @@
 <?php
-
 /*
  +--------------------------------------------------------------------+
- | CiviCRM version 4.3                                                |
+ | CiviCRM version 4.4                                                |
  +--------------------------------------------------------------------+
  | Copyright CiviCRM LLC (c) 2004-2013                                |
  +--------------------------------------------------------------------+
@@ -36,7 +35,6 @@ require_once 'CiviTest/CiviUnitTestCase.php';
  */
 class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
   protected $_apiversion;
-  public $_eNoticeCompliant = True;
 
   function get_info() {
     return array(
@@ -55,7 +53,7 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
   protected function setUp() {
     $this->_apiversion = 3;
     parent::setUp();
-    $this->_groupID = $this->groupCreate(NULL);
+    $this->_groupID = $this->groupCreate();
 
     $this->_orgID = $this->organizationCreate(NULL);
   }
@@ -89,17 +87,12 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
 
     $params = array(
       'organization_id' => $this->_orgID,
-      'group_id' => $this->_groupID,
-      'version' => $this->_apiversion,
-    );
-    $result = civicrm_api('group_organization', 'create', $params);
+      'group_id' => $this->_groupID,    );
+    $result = $this->callAPISuccess('group_organization', 'create', $params);
     $paramsGet = array(
       'organization_id' => $result['id'],
-      'version' => $this->_apiversion,
     );
-    $result = civicrm_api('group_organization', 'get', $paramsGet);
-    $this->documentMe($paramsGet, $result, __FUNCTION__, __FILE__);
-    $this->assertEquals($result['is_error'], 0);
+    $result = $this->callAPIAndDocument('group_organization', 'get', $paramsGet, __FUNCTION__, __FILE__);
   }
 
   /**
@@ -109,28 +102,24 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
 
     $params = array(
       'organization_id' => $this->_orgID,
-      'group_id' => $this->_groupID,
-      'version' => $this->_apiversion,
-      'sequential' => 1,
+      'group_id' => $this->_groupID,      'sequential' => 1,
     );
-    $result = civicrm_api('group_organization', 'create', $params);
+    $result = $this->callAPISuccess('group_organization', 'create', $params);
 
     $paramsGet = array('organization_id' => $result['values'][0]['organization_id']);
 
-    $result = civicrm_api('group_organization', 'get', $params);
-    $this->assertEquals($result['is_error'], 0);
+    $result = $this->callAPISuccess('group_organization', 'get', $params);
+    $this->assertAPISuccess($result);
   }
 
   /**
    * Test civicrm_group_organization_get with empty params.
    */
   public function testGroupOrganizationGetWithEmptyParams() {
-    $params = array(
-      'version' => $this->_apiversion,
-    );
-    $result = civicrm_api('group_organization', 'get', $params);
+    $params = array(    );
+    $result = $this->callAPISuccess('group_organization', 'get', $params);
 
-    $this->assertEquals($result['is_error'], 0);
+    $this->assertAPISuccess($result);
   }
 
   /**
@@ -138,9 +127,7 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
    */
   public function testGroupOrganizationGetWithWrongParams() {
     $params = 'groupOrg';
-    $result = civicrm_api('group_organization', 'get', $params);
-
-    $this->assertEquals($result['is_error'], 1);
+    $result = $this->callAPIFailure('group_organization', 'get', $params);
     $this->assertEquals($result['error_message'], 'Input variable `params` is not an array');
   }
 
@@ -149,12 +136,10 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
    */
   public function testGroupOrganizationGetWithInvalidKeys() {
     $params = array(
-      'invalid_key' => 1,
-      'version' => $this->_apiversion,
-    );
-    $result = civicrm_api('group_organization', 'get', $params);
+      'invalid_key' => 1,    );
+    $result = $this->callAPISuccess('group_organization', 'get', $params);
 
-    $this->assertEquals($result['is_error'], 0);
+    $this->assertAPISuccess($result);
   }
 
   ///////////////// civicrm_group_organization_create methods
@@ -165,24 +150,27 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
   public function testGroupOrganizationCreate() {
     $params = array(
       'organization_id' => $this->_orgID,
-      'group_id' => $this->_groupID,
-      'version' => $this->_apiversion,
-    );
-    $result = civicrm_api('group_organization', 'create', $params);
-    $this->documentMe($params, $result, __FUNCTION__, __FILE__);
-    $this->assertAPISuccess($result, "in line " . __LINE__);
+      'group_id' => $this->_groupID,    );
+    $result = $this->callAPIAndDocument('group_organization', 'create', $params, __FUNCTION__, __FILE__);
   }
 
+  /**
+   * CRM-13841 - Load Group Org before save
+   */
+  public function testGroupOrganizationCreateTwice() {
+    $params = array(
+        'organization_id' => $this->_orgID,
+        'group_id' => $this->_groupID,    );
+    $result = $this->callAPISuccess('group_organization', 'create', $params);
+    $result2 = $this->callAPISuccess('group_organization', 'create', $params);
+    $this->assertEquals($result['values'], $result2['values']);
+  }
   /**
    * check with empty params array
    */
   public function testGroupOrganizationCreateWithEmptyParams() {
-    $params = array(
-      'version' => $this->_apiversion,
-    );
-    $result = civicrm_api('group_organization', 'create', $params);
-
-    $this->assertEquals($result['is_error'], 1);
+    $params = array(    );
+    $result = $this->callAPIFailure('group_organization', 'create', $params);
     $this->assertEquals($result['error_message'], 'Mandatory key(s) missing from params array: group_id, organization_id');
   }
 
@@ -191,9 +179,7 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
    */
   public function testGroupOrganizationCreateParamsNotArray() {
     $params = 'group_org';
-    $result = civicrm_api('group_organization', 'create', $params);
-
-    $this->assertEquals($result['is_error'], 1);
+    $result = $this->callAPIFailure('group_organization', 'create', $params);
     $this->assertEquals($result['error_message'], 'Input variable `params` is not an array');
   }
 
@@ -202,12 +188,8 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
    */
   public function testGroupOrganizationCreateWithInvalidKeys() {
     $params = array(
-      'invalid_key' => 1,
-      'version' => $this->_apiversion,
-    );
-    $result = civicrm_api('group_organization', 'create', $params);
-
-    $this->assertEquals($result['is_error'], 1);
+      'invalid_key' => 1,    );
+    $result = $this->callAPIFailure('group_organization', 'create', $params);
     $this->assertEquals($result['error_message'], 'Mandatory key(s) missing from params array: group_id, organization_id');
   }
 
@@ -218,9 +200,7 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
    */
   public function testGroupOrganizationDeleteParamsNotArray() {
     $params = 'delete';
-    $result = civicrm_api('group_organization', 'delete', $params);
-
-    $this->assertEquals($result['is_error'], 1);
+    $result = $this->callAPIFailure('group_organization', 'delete', $params);
     $this->assertEquals($result['error_message'], 'Input variable `params` is not an array');
   }
 
@@ -228,12 +208,8 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
    * Test civicrm_group_organization_remove with empty params.
    */
   public function testGroupOrganizationDeleteWithEmptyParams() {
-    $params = array(
-      'version' => $this->_apiversion,
-    );
-    $result = civicrm_api('group_organization', 'delete', $params);
-
-    $this->assertEquals($result['is_error'], 1);
+    $params = array(    );
+    $result = $this->callAPIFailure('group_organization', 'delete', $params);
     $this->assertEquals($result['error_message'], 'Mandatory key(s) missing from params array: id');
   }
 
@@ -243,18 +219,13 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
   public function testGroupOrganizationDelete() {
     $paramsC = array(
       'organization_id' => $this->_orgID,
-      'group_id' => $this->_groupID,
-      'version' => $this->_apiversion,
-    );
-    $result = civicrm_api('group_organization', 'create', $paramsC);
+      'group_id' => $this->_groupID,    );
+    $result = $this->callAPISuccess('group_organization', 'create', $paramsC);
 
     $params = array(
       'id' => $result['id'],
-      'version' => $this->_apiversion,
     );
-    $result = civicrm_api('group_organization', 'delete', $params);
-    $this->documentMe($params, $result, __FUNCTION__, __FILE__);
-    $this->assertAPISuccess($result, "in line " . __LINE__);
+    $result = $this->callAPIAndDocument('group_organization', 'delete', $params, __FUNCTION__, __FILE__);
   }
 
   /**
@@ -262,12 +233,8 @@ class api_v3_GroupOrganizationTest extends CiviUnitTestCase {
    */
   public function testGroupOrganizationDeleteWithInvalidKey() {
     $paramsDelete = array(
-      'invalid_key' => 1,
-      'version' => $this->_apiversion,
-    );
-    $result = civicrm_api('group_organization', 'delete', $paramsDelete);
-
-    $this->assertEquals($result['is_error'], 1);
+      'invalid_key' => 1,    );
+    $result = $this->callAPIFailure('group_organization', 'delete', $paramsDelete);
     $this->assertEquals($result['error_message'], 'Mandatory key(s) missing from params array: id');
   }
 }