/** * @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); }
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); }