fixed unit tests

This commit is contained in:
Jonathan Labreuille
2016-06-15 16:13:29 +02:00
parent 6199caea29
commit 9aa25446d1
5 changed files with 31 additions and 11 deletions

View File

@@ -248,12 +248,14 @@ class Newsletter extends Model {
} }
static function filterBy($orm, $data = array()) { static function filterBy($orm, $data = array()) {
$type = isset($data['tab']) ? $data['tab'] : null;
if(!empty($data['filter'])) { if(!empty($data['filter'])) {
foreach($data['filter'] as $key => $value) { foreach($data['filter'] as $key => $value) {
if($key === 'segment') { if($key === 'segment') {
$segment = Segment::findOne($value); $segment = Segment::findOne($value);
if($segment !== false) { if($segment !== false) {
$orm = $segment->newsletters()->where('type', $data['tab']); $orm = $segment->newsletters()->filter('filterType', $type);
} }
} }
} }

View File

@@ -155,7 +155,7 @@ class Newsletters {
)); ));
if($duplicate !== false && $duplicate->getErrors() === false) { if($duplicate !== false && $duplicate->getErrors() === false) {
$result = $newsletter->asArray(); $result = $duplicate->asArray();
} }
} }
return $result; return $result;

View File

@@ -1,5 +1,6 @@
<?php <?php
use MailPoet\Mailer\Mailer; use MailPoet\Mailer\Mailer;
use MailPoet\Models\Setting;
class MailerTest extends MailPoetTest { class MailerTest extends MailPoetTest {
function _before() { function _before() {
@@ -65,6 +66,9 @@ class MailerTest extends MailPoetTest {
} }
function testItRequiresMailerMethod() { function testItRequiresMailerMethod() {
// reset mta settings so that we have no default mailer
Setting::setValue('mta', null);
try { try {
$mailer = new Mailer(); $mailer = new Mailer();
$this->fail('Mailer did not throw an exception'); $this->fail('Mailer did not throw an exception');

View File

@@ -165,7 +165,9 @@ class NewsletterTest extends MailPoetTest {
// filter by segment // filter by segment
$newsletters = Newsletter::filter('filterBy', array( $newsletters = Newsletter::filter('filterBy', array(
'filter' => array(
'segment' => $this->segment_1->id 'segment' => $this->segment_1->id
)
))->findArray(); ))->findArray();
expect($newsletters)->count(1); expect($newsletters)->count(1);
@@ -175,28 +177,39 @@ class NewsletterTest extends MailPoetTest {
NewsletterSegment::deleteMany(); NewsletterSegment::deleteMany();
$newsletters = Newsletter::filter('filterBy', array( $newsletters = Newsletter::filter('filterBy', array(
'filter' => array(
'segment' => $this->segment_1->id 'segment' => $this->segment_1->id
))->findArray(); )))->findArray();
expect($newsletters)->isEmpty(); expect($newsletters)->isEmpty();
} }
function testItCanBeGrouped() { function testItCanBeGrouped() {
$newsletters = Newsletter::filter('groupBy', 'all')->findArray(); $newsletters = Newsletter::filter('groupBy', array(
'group' => 'all'
))->findArray();
expect($newsletters)->count(1); expect($newsletters)->count(1);
$newsletters = Newsletter::filter('groupBy', 'trash')->findArray(); $newsletters = Newsletter::filter('groupBy', array(
'group' => 'trash'
))->findArray();
expect($newsletters)->count(0); expect($newsletters)->count(0);
$this->newsletter->trash(); $this->newsletter->trash();
$newsletters = Newsletter::filter('groupBy', 'trash')->findArray(); $newsletters = Newsletter::filter('groupBy', array(
'group' => 'trash'
))->findArray();
expect($newsletters)->count(1); expect($newsletters)->count(1);
$newsletters = Newsletter::filter('groupBy', 'all')->findArray(); $newsletters = Newsletter::filter('groupBy', array(
'group' => 'all'
))->findArray();
expect($newsletters)->count(0); expect($newsletters)->count(0);
$this->newsletter->restore(); $this->newsletter->restore();
$newsletters = Newsletter::filter('groupBy', 'all')->findArray(); $newsletters = Newsletter::filter('groupBy', array(
'group' => 'all'
))->findArray();
expect($newsletters)->count(1); expect($newsletters)->count(1);
} }

View File

@@ -210,7 +210,8 @@ class SubscriberTest extends MailPoetTest {
expect($subscriber->email)->equals($this->data['email']); expect($subscriber->email)->equals($this->data['email']);
expect($subscriber->first_name)->equals($this->data['first_name']); expect($subscriber->first_name)->equals($this->data['first_name']);
expect($subscriber->last_name)->equals($this->data['last_name']); expect($subscriber->last_name)->equals($this->data['last_name']);
expect($subscriber->status)->equals('subscribed'); // signup confirmation is enabled by default
expect($subscriber->status)->equals(Subscriber::STATUS_UNCONFIRMED);
expect($subscriber->deleted_at)->equals(null); expect($subscriber->deleted_at)->equals(null);
} }