Add clickLinkSuppressPopup webtest method
authorColeman Watts <coleman@civicrm.org>
Wed, 17 Sep 2014 04:08:51 +0000 (00:08 -0400)
committerColeman Watts <coleman@civicrm.org>
Wed, 17 Sep 2014 04:08:51 +0000 (00:08 -0400)
tests/phpunit/CiviTest/CiviSeleniumTestCase.php
tests/phpunit/WebTest/Contact/SignatureTest.php

index e517f4bb60a972dde2c2443a60898b6788a6f8b7..e9fadeb82ed440e0cb3b11eaf5486b8e71848e08 100644 (file)
@@ -236,6 +236,20 @@ class CiviSeleniumTestCase extends PHPUnit_Extensions_SeleniumTestCase {
     }
   }
 
+  /**
+   * Click on a link and have it open full-page
+   * @param $element
+   * @param string $waitFor
+   */
+  function clickLinkSuppressPopup($element, $waitFor = 'civicrm-footer') {
+    $link = $this->getAttribute($element . '@href');
+    $this->open($link);
+    $this->waitForPageToLoad($this->getTimeoutMsec());
+    if ($waitFor) {
+      $this->waitForElementPresent($waitFor);
+    }
+  }
+
   /**
    * Call the API on the local server
    * (kind of defeats the point of a webtest - see CRM-11889)
index a4ce36cae1eea40c3b5a96ba960ca9afb164d9c3..157c42483abea566fdce65b96876ed5cc10b7e9b 100644 (file)
@@ -71,8 +71,8 @@ class WebTest_Contact_SignatureTest extends CiviSeleniumTestCase {
 
     // Go for Ckeck Your Editor, Click on Send Mail
     $this->click("//a[@id='crm-contact-actions-link']/span");
-    //after clicking on 'Send an Email', wait for the text in tinymce editor to load
-    $this->clickLink('link=Send an Email', "xpath=//body[@id='tinymce']/p[2]", FALSE);
+    // the other test checks this in a popup, we'll try it full-page here
+    $this->clickLinkSuppressPopup('link=Send an Email', "xpath=//body[@id='tinymce']/p[2]");
 
     $this->click('subject');
     $subject = 'Subject_' . substr(sha1(rand()), 0, 8);