private function clearUnusedData() { TemplatesHelperTest::clearUnusedData(); foreach (self::$subscribers as $subscriberId) { $subscriber = MailtankSubscriber::findByPk($subscriberId); $this->assertTrue($subscriber->delete()); Mailtank2Email::deleteAll('mailtankId = :mailtankId', [':mailtankId' => $subscriberId]); } self::$subscribers = array(); }
private function clearUnusedData() { foreach (self::$subscribers as $subscriberId) { $subscriber = MailtankSubscriber::findByPk($subscriberId); $this->assertTrue($subscriber->delete()); } self::$subscribers = array(); if (self::$layoutId !== false) { $layout = new MailtankLayout(); $layout->id = self::$layoutId; $this->assertTrue($layout->delete()); self::$layoutId = false; } }
/** * Create new subscriber * @param string $email * @param integer $userId * @param string $userName * @param array $tags * @param array $props */ public static function createSubscriber($email, $userId = 0, $userName = '', $tags = [], $props = []) { $subscriber = new MailtankSubscriber(); $subscriber->email = $email; $subscriber->setProperty('userId', $userId); $subscriber->setProperty('userName', $userName); $subscriber->setProperty('created', time()); $subscriber->tags = $tags; foreach ($props as $k => $v) { $subscriber->setProperty($k, $v); } if (!$subscriber->save()) { throw new MailtankException(MailtankHelper::implodeErrors('; ', $subscriber->getErrors())); } if (!self::createInnerSubscriber($email, $subscriber->id)) { // Подчищаем мейлтанк за собой, иначе там навечно зависнет не привязанный к системе пользователь $subscriber->delete(); return false; } return $subscriber; }
public function testPatchTagsAll() { $subscribers = []; for ($i = 0; $i < 2; $i++) { $subscriber = self::createBasicModel(); $res = $subscriber->save(); if (!$res) { print_r($subscriber->getErrors()); $this->assertTrue(false); } self::$subscriberIds[] = $subscriber->id; $subscribers[] = $subscriber; } $tag = 'test_tag_' . uniqid(); $result = MailtankSubscriber::patchTags('all', $tag); $this->assertTrue($result); foreach ($subscribers as $subscriber) { $this->assertTrue($subscriber->refresh()); $this->assertContains($tag, $subscriber->tags); } $this->clearUnusedData(); }