diff --git a/tests/unit/Models/SubscriberTest.php b/tests/unit/Models/SubscriberTest.php index f90ca64b78..bb77fd59f5 100644 --- a/tests/unit/Models/SubscriberTest.php +++ b/tests/unit/Models/SubscriberTest.php @@ -333,23 +333,6 @@ class SubscriberTest extends MailPoetTest { expect($subscriber->deleted_at)->equals(null); } - function testItCanBeAddedToSegments() { - $segment = Segment::create(); - $segment->hydrate(array('name' => 'List #1')); - $segment->save(); - - $segment2 = Segment::create(); - $segment2->hydrate(array('name' => 'List #2')); - $segment2->save(); - - $this->subscriber->addToSegments(array($segment->id(), $segment2->id())); - $subscriber_segments = $this->subscriber->segments()->findArray(); - - expect($this->subscriber->segments()->count())->equals(2); - expect($subscriber_segments[0]['name'])->equals('List #1'); - expect($subscriber_segments[1]['name'])->equals('List #2'); - } - function testItCanBeUpdatedByEmail() { $subscriber_updated = Subscriber::createOrUpdate(array( 'email' => $this->data['email'], diff --git a/tests/unit/Subscription/UrlTest.php b/tests/unit/Subscription/UrlTest.php index 64ec8929e5..eb473497ca 100644 --- a/tests/unit/Subscription/UrlTest.php +++ b/tests/unit/Subscription/UrlTest.php @@ -14,51 +14,64 @@ class UrlTest extends MailPoetTest { // preview $url = Url::getConfirmationUrl(false); expect($url)->notNull(); - expect($url)->contains('mailpoet_action=confirm'); - expect($url)->contains('preview'); + expect($url)->contains('action=confirm'); + expect($url)->contains('endpoint=subscription'); // actual subscriber $subscriber = Subscriber::createOrUpdate(array( 'email' => 'john@mailpoet.com' )); $url = Url::getConfirmationUrl($subscriber); - expect($url)->contains('mailpoet_action=confirm'); - expect($url)->contains('mailpoet_token='); - expect($url)->contains('mailpoet_email='); + expect($url)->contains('action=confirm'); + expect($url)->contains('endpoint=subscription'); + + $this->checkData($url); } function testItReturnsTheManageSubscriptionUrl() { // preview $url = Url::getManageUrl(false); expect($url)->notNull(); - expect($url)->contains('mailpoet_action=manage'); - expect($url)->contains('preview'); + expect($url)->contains('action=manage'); + expect($url)->contains('endpoint=subscription'); // actual subscriber $subscriber = Subscriber::createOrUpdate(array( 'email' => 'john@mailpoet.com' )); $url = Url::getManageUrl($subscriber); - expect($url)->contains('mailpoet_action=manage'); - expect($url)->contains('mailpoet_token='); - expect($url)->contains('mailpoet_email='); + expect($url)->contains('action=manage'); + expect($url)->contains('endpoint=subscription'); + + $this->checkData($url); } function testItReturnsTheUnsubscribeUrl() { // preview $url = Url::getUnsubscribeUrl(false); expect($url)->notNull(); - expect($url)->contains('mailpoet_action=unsubscribe'); - expect($url)->contains('preview'); + expect($url)->contains('action=unsubscribe'); + expect($url)->contains('endpoint=subscription'); // actual subscriber $subscriber = Subscriber::createOrUpdate(array( 'email' => 'john@mailpoet.com' )); $url = Url::getUnsubscribeUrl($subscriber); - expect($url)->contains('mailpoet_action=unsubscribe'); - expect($url)->contains('mailpoet_token='); - expect($url)->contains('mailpoet_email='); + expect($url)->contains('action=unsubscribe'); + expect($url)->contains('endpoint=subscription'); + + $this->checkData($url); + } + + private function checkData($url) { + // extract & decode data from url + $url_params = parse_url($url); + parse_str($url_params['query'], $params); + $data = unserialize(base64_decode($params['data'])); + + expect($data['email'])->contains('john@mailpoet.com'); + expect($data['token'])->notEmpty(); } function _after() {