<?php
/*
+--------------------------------------------------------------------+
- | CiviCRM version 4.3 |
+ | CiviCRM version 4.5 |
+--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2013 |
+ | Copyright CiviCRM LLC (c) 2004-2014 |
+--------------------------------------------------------------------+
| This file is a part of CiviCRM. |
| |
+--------------------------------------------------------------------+
*/
-
require_once 'CiviTest/CiviSeleniumTestCase.php';
+
+/**
+ * Class WebTest_Member_OnlineAutoRenewMembershipGCTest
+ */
class WebTest_Member_OnlineAutoRenewMembershipGCTest extends CiviSeleniumTestCase {
protected function setUp() {
$lastName = 'Smith_' . substr(sha1(rand()), 0, 7);
$this->type('email-5', "{$lastName}@example.com");
- $this->click("_qf_Main_upload-bottom");
- $this->waitForPageToLoad($this->getTimeoutMsec());
- $this->waitForElementPresent("_qf_Confirm_next_checkout");
+ $this->clickLink("_qf_Main_upload-bottom", "_qf_Confirm_next_checkout");
$text = 'I want this membership to be renewed automatically every 1 year(s).';
$this->assertElementContainsText('css=div.display-block', $text, 'Missing text: ' . $text);
// Justification for this instance: FIXME
sleep(5);
- // FIXME: By this time pending records has already been created. Formatting for external page (google checkout in this case)
+ // FIXME: By this time pending records has already been created. Formatting for external page (google checkout in this case)
+
// has changed a bit. No point in adding test for external page as we 'll test with fake transactions.
}
$lastName = 'Smith_' . substr(sha1(rand()), 0, 7);
$this->type('email-5', "{$lastName}@example.com");
- $this->click("_qf_Main_upload-bottom");
- $this->waitForPageToLoad($this->getTimeoutMsec());
- $this->waitForElementPresent("_qf_Confirm_next_checkout");
+ $this->clickLink("_qf_Main_upload-bottom", "_qf_Confirm_next_checkout");
$text = 'I want this membership to be renewed automatically every 1 year(s).';
$this->assertElementContainsText('css=div.display-block', $text, 'Missing text: ' . $text);
// Justification for this instance: FIXME
sleep(5);
- // FIXME: By this time pending records has already been created. Formatting for external page (google checkout in this case)
+ // FIXME: By this time pending records has already been created. Formatting for external page (google checkout in this case)
+
// has changed a bit. No point in adding test for external page as we 'll test with fake transactions.
}
+ /**
+ * @return null
+ */
function _configureMembershipPage() {
static $pageId = NULL;
$this->webtestAddPaymentProcessor($processorName, 'Google_Checkout');
// -- start updating membership types
- $this->openCiviPage('admin/member/membershipType/add', 'action=update&id=1&reset=1');
-
+ $this->openCiviPage('admin/member/membershipType/add', 'action=update&id=1&reset=1');
+
$this->waitForElementPresent("xpath=//div[@id='membership_type_form']//table/tbody/tr[6]/td/label[contains(text(), 'Auto-renew Option')]/../../td[2]/label[contains(text(), 'Give option, but not required')]");
$this->click("xpath=//div[@id='membership_type_form']//table/tbody/tr[6]/td/label[contains(text(), 'Auto-renew Option')]/../../td[2]/label[contains(text(), 'Give option, but not required')]");
-
+
$this->type("duration_interval", "1");
$this->select("duration_unit", "label=year");
- //wait for the auto-complete member_of_contact to populate
- $this->waitForValue('member_of_contact', '::');
-
+
$this->click("_qf_MembershipType_upload-bottom");
$this->waitForPageToLoad($this->getTimeoutMsec());
- $this->openCiviPage('admin/member/membershipType/add', 'action=update&id=2&reset=1');
-
+ $this->openCiviPage('admin/member/membershipType/add', 'action=update&id=2&reset=1');
+
$this->waitForElementPresent("xpath=//div[@id='membership_type_form']//table/tbody/tr[6]/td/label[contains(text(), 'Auto-renew Option')]/../../td[2]/label[contains(text(), 'Give option, but not required')]");
$this->click("xpath=//div[@id='membership_type_form']//table/tbody/tr[6]/td/label[contains(text(), 'Auto-renew Option')]/../../td[2]/label[contains(text(), 'Give option, but not required')]");
$this->type("duration_interval", "1");
$this->select("duration_unit", "label=year");
- //wait for the auto-complete member_of_contact to populate
- $this->waitForValue('member_of_contact', '::');
$this->click("_qf_MembershipType_upload-bottom");
$this->waitForPageToLoad($this->getTimeoutMsec());
);
//make sure we do have required permissions.
- $permissions = array("edit-1-make-online-contributions");
+ $permissions = array("edit-1-make-online-contributions", "edit-1-profile-listings-and-forms");
$this->changePermissions($permissions);
// now logout and do membership test that way