[NFC] minimal test for Mailing.update_email_resetdate
authoreileen <emcnaughton@wikimedia.org>
Tue, 12 Nov 2019 03:55:59 +0000 (16:55 +1300)
committereileen <emcnaughton@wikimedia.org>
Tue, 12 Nov 2019 03:55:59 +0000 (16:55 +1300)
ALso removes a couple of unused variables, adds a few exception comments

CRM/Core/DAO.php
CRM/Mailing/Event/BAO/Delivered.php
Civi/Test/DbTestTrait.php
tests/phpunit/api/v3/MailingTest.php

index e5971188cba74adbc09a1854777bf18a5d9bd3db..02c8c0a858da36cc08d103b7ce403bf5e9798503 100644 (file)
@@ -1524,7 +1524,7 @@ FROM   civicrm_domain
    * @param bool $abort
    *
    * @return string
-   * @throws Exception
+   * @throws CRM_Core_Exception
    */
   public static function composeQuery($query, $params = [], $abort = TRUE) {
     $tr = [];
index 37dae70dc1d7fbffb73b0f267c8f87f30183ad35..169e8464cc3f753fd5166f1de2f36d97b5795410 100644 (file)
@@ -280,7 +280,6 @@ class CRM_Mailing_Event_BAO_Delivered extends CRM_Mailing_Event_DAO_Delivered {
    *   Consider mailings that were completed not more than $maxDays ago.
    */
   public static function updateEmailResetDate($minDays = 3, $maxDays = 7) {
-    $dao = new CRM_Core_DAO();
 
     $temporaryTable = CRM_Utils_SQL_TempTable::build()
       ->setCategory('mailingemail')
index 3e97931cfe078e6b2c453e2440dc15dd73a6098c..74388ada0fb2b10fe76edcd32d661217bc3bc3e0 100644 (file)
@@ -175,9 +175,9 @@ trait DbTestTrait {
    * @param array $params
    * @param string $message
    *
-   * @throws \Exception
+   * @throws \CRM_Core_Exception
    */
-  public function assertDBQuery($expected, $query, $params = array(), $message = '') {
+  public function assertDBQuery($expected, $query, $params = [], $message = '') {
     if ($message) {
       $message .= ': ';
     }
index d87f5d02ee356a95928cafe8cb8ac77b7d48d198..c132b77cbf9418bccb5b33afbe070e1b2638b94c 100644 (file)
@@ -102,6 +102,8 @@ class api_v3_MailingTest extends CiviUnitTestCase {
 
   /**
    * Create a completed mailing (e.g when importing from a provider).
+   *
+   * @throws \CRM_Core_Exception
    */
   public function testMailerCreateCompleted() {
     $this->_params['body_html'] = 'I am completed so it does not matter if there is an opt out link since I have already been sent by another system';
@@ -146,6 +148,8 @@ class api_v3_MailingTest extends CiviUnitTestCase {
    * The `template_options` field should be treated a JSON object.
    *
    * This test will create, read, and update the field.
+   *
+   * @throws \CRM_Core_Exception
    */
   public function testMailerCreateTemplateOptions() {
     // 1. Create mailing with template_options.
@@ -183,6 +187,8 @@ class api_v3_MailingTest extends CiviUnitTestCase {
   /**
    * The Mailing.create API supports magic properties "groups[include,enclude]" and "mailings[include,exclude]".
    * Make sure these work
+   *
+   * @throws \CRM_Core_Exception
    */
   public function testMagicGroups_create_update() {
     // BEGIN SAMPLE DATA
@@ -369,6 +375,8 @@ class api_v3_MailingTest extends CiviUnitTestCase {
 
   /**
    * Test if Mailing recipients include duplicate OR on_hold emails
+   *
+   * @throws \CRM_Core_Exception
    */
   public function testMailerPreviewRecipientsDeduplicateAndOnholdEmails() {
     // BEGIN SAMPLE DATA
@@ -639,14 +647,16 @@ class api_v3_MailingTest extends CiviUnitTestCase {
    * @param array $submitParams
    * @param null|string $expectedFailure
    * @param int $expectedJobCount
+   *
    * @dataProvider submitProvider
+   * @throws \CRM_Core_Exception
    */
   public function testMailerSubmit($useLogin, $createParams, $submitParams, $expectedFailure, $expectedJobCount) {
     if ($useLogin) {
       $this->createLoggedInUser();
     }
 
-    if (isset($createParams['footer_id']) && $createParams['footer_id'] == '%FOOTER%') {
+    if (isset($createParams['footer_id']) && $createParams['footer_id'] === '%FOOTER%') {
       $createParams['footer_id'] = $this->footer['id'];
     }
 
@@ -671,6 +681,9 @@ class api_v3_MailingTest extends CiviUnitTestCase {
   /**
    * Test unsubscribe list contains correct groups
    * when include = 'previous mailing'
+   *
+   * @throws \CiviCRM_API3_Exception
+   * @throws \CRM_Core_Exception
    */
   public function testUnsubscribeGroupList() {
     // Create set of groups and add a contact to both of them.
@@ -709,7 +722,7 @@ class api_v3_MailingTest extends CiviUnitTestCase {
       'entity_id' => $mail['id'],
       'group_type' => 'Include',
     ];
-    $mailingGroup = $this->callAPISuccess('MailingGroup', 'create', $mgParams);
+    $this->callAPISuccess('MailingGroup', 'create', $mgParams);
     //CRM-20431 - Delete group id that matches first mailing id.
     $this->callAPISuccess('Group', 'delete', ['id' => $this->_groupID]);
     $jobId = CRM_Core_DAO::getFieldValue('CRM_Mailing_DAO_MailingJob', $mail2['id'], 'id', 'mailing_id');
@@ -799,6 +812,11 @@ SELECT event_queue_id, time_stamp FROM {$temporaryTableName}";
     $this->assertArrayHasKey('id', $result['values'][0]['children'][0]);
   }
 
+  /**
+   * Test clone function.
+   *
+   * @throws \CRM_Core_Exception
+   */
   public function testClone() {
     // BEGIN SAMPLE DATA
     $groupIDs['inc'] = $this->groupCreate(['name' => 'Example include group', 'title' => 'Example include group']);
@@ -950,6 +968,8 @@ SELECT event_queue_id, time_stamp FROM {$temporaryTableName}";
   /**
    * Test to make sure that if the event queue hashes have been archived,
    * we can still have working click-trough URLs working (CRM-17959).
+   *
+   * @throws \CRM_Core_Exception
    */
   public function testUrlWithMissingTrackingHash() {
     $mail = $this->callAPISuccess('mailing', 'create', $this->_params + ['scheduled_date' => 'now'], __FUNCTION__, __FILE__);
@@ -1028,4 +1048,13 @@ SELECT event_queue_id, time_stamp FROM {$temporaryTableName}";
     }
   }
 
+  /**
+   * Test that api Mailing.update_email_resetdate does not throw a core error.
+   *
+   * @throws \CRM_Core_Exception
+   */
+  public function testUpdateEmailResetdate() {
+    $this->callAPISuccess('Mailing', 'update_email_resetdate', []);
+  }
+
 }