コード例 #1
0
 /**
  * @depends testCreateAndGetMarketingListMemberById
  */
 public function testGetCountByMarketingListIdAndUnsubscribed()
 {
     $marketingList = MarketingListTestHelper::createMarketingListByName('test marketing List 05');
     $this->assertNotNull($marketingList);
     $contacts = Contact::getAll();
     $this->assertNotEmpty($contacts);
     $unsubscribedCount = 0;
     $subscribedCount = 0;
     foreach ($contacts as $index => $contact) {
         $unsubcribed = $index % 2;
         $member = MarketingListMemberTestHelper::populateValidMarketingListMember($unsubcribed, $marketingList, $contact);
         $this->assertTrue($member->unrestrictedSave());
         if ($unsubcribed) {
             $unsubscribedCount++;
         } else {
             $subscribedCount++;
         }
     }
     $calculatedSubscribedCount = MarketingListMember::getCountByMarketingListIdAndUnsubscribed($marketingList->id, 0);
     $calculatedUnsubscribedCount = MarketingListMember::getCountByMarketingListIdAndUnsubscribed($marketingList->id, 1);
     $this->assertEquals($subscribedCount, $calculatedSubscribedCount);
     $this->assertEquals($unsubscribedCount, $calculatedUnsubscribedCount);
 }
コード例 #2
0
 public function testDeleteContactCascadesMarketingListMemmers()
 {
     Yii::app()->user->userModel = User::getByUsername('super');
     $contactStates = ContactState::getByName('Qualified');
     $contact = new Contact();
     $contact->owner = Yii::app()->user->userModel;
     $contact->title->value = 'Mr.';
     $contact->firstName = 'Member';
     $contact->lastName = 'One';
     $contact->state = $contactStates[0];
     $this->assertTrue($contact->save());
     $contactId = $contact->id;
     $marketingList = MarketingListTestHelper::createMarketingListByName('Test Marketing List Member Deleted');
     $member = MarketingListMemberTestHelper::populateValidMarketingListMember(1, $marketingList, $contact);
     $this->assertTrue($member->unrestrictedSave());
     $this->assertEquals(1, count(MarketingListMember::getByContactId($contactId)));
     $testContact = new Contact();
     $testContact->owner = Yii::app()->user->userModel;
     $testContact->title->value = 'Mr.';
     $testContact->firstName = 'Member';
     $testContact->lastName = 'Two';
     $testContact->state = $contactStates[0];
     $this->assertTrue($testContact->save());
     $testContactId = $testContact->id;
     $member2 = MarketingListMemberTestHelper::populateValidMarketingListMember(1, $marketingList, $testContact);
     $this->assertTrue($member2->unrestrictedSave());
     $this->assertEquals(1, count(MarketingListMember::getByContactId($testContact->id)));
     $subscribedCount = MarketingListMember::getCountByMarketingListIdAndUnsubscribed($marketingList->id, 1);
     $this->assertEquals(2, $subscribedCount);
     $this->assertTrue($contact->delete());
     $this->assertEquals(0, count(MarketingListMember::getByContactId($contactId)));
     $this->assertTrue($testContact->delete());
     $this->assertEquals(0, count(MarketingListMember::getByContactId($testContactId)));
     $subscribedCount = MarketingListMember::getCountByMarketingListIdAndUnsubscribed($marketingList->id, 1);
     $this->assertEquals(0, $subscribedCount);
 }