Test all supported save fields
[MAILPOET-2900]
This commit is contained in:
@ -24,7 +24,10 @@ use function MailPoetVendor\array_column;
|
||||
* @property string $type
|
||||
* @property object|array|bool $queue
|
||||
* @property string $hash
|
||||
* @property string $senderName
|
||||
* @property string $senderAddress
|
||||
* @property string $replyToName
|
||||
* @property string $replyToAddress
|
||||
* @property string $status
|
||||
* @property string|object $meta
|
||||
* @property array $options
|
||||
|
@ -52,12 +52,7 @@ parameters:
|
||||
|
||||
-
|
||||
message: "#^Cannot call method asArray\\(\\) on MailPoet\\\\Models\\\\Newsletter\\|false\\.$#"
|
||||
count: 6
|
||||
path: ../../tests/integration/API/JSON/v1/NewslettersTest.php
|
||||
|
||||
-
|
||||
message: "#^Cannot access property \\$subject on MailPoet\\\\Models\\\\Newsletter\\|false\\.$#"
|
||||
count: 1
|
||||
count: 5
|
||||
path: ../../tests/integration/API/JSON/v1/NewslettersTest.php
|
||||
|
||||
-
|
||||
|
@ -170,15 +170,31 @@ class NewslettersTest extends \MailPoetTest {
|
||||
public function testItCanSaveANewsletter() {
|
||||
$newsletterData = [
|
||||
'id' => $this->newsletter->id,
|
||||
'subject' => 'My Updated Newsletter',
|
||||
'type' => 'Updated type',
|
||||
'subject' => 'Updated subject',
|
||||
'preheader' => 'Updated preheader',
|
||||
'body' => '{"value": "Updated body"}',
|
||||
'sender_name' => 'Updated sender name',
|
||||
'sender_address' => 'Updated sender address',
|
||||
'reply_to_name' => 'Updated reply-to name',
|
||||
'reply_to_address' => 'Updated reply-to address',
|
||||
'ga_campaign' => 'Updated GA campaign',
|
||||
];
|
||||
|
||||
$response = $this->endpoint->save($newsletterData);
|
||||
expect($response->status)->equals(APIResponse::STATUS_OK);
|
||||
$updatedNewsletter = Newsletter::findOne($this->newsletter->id);
|
||||
assert($updatedNewsletter instanceof Newsletter); // PHPStan
|
||||
expect($response->data)->equals($updatedNewsletter->asArray());
|
||||
expect($updatedNewsletter->subject)->equals('My Updated Newsletter');
|
||||
|
||||
expect($updatedNewsletter->type)->equals('Updated type');
|
||||
expect($updatedNewsletter->subject)->equals('Updated subject');
|
||||
expect($updatedNewsletter->preheader)->equals('Updated preheader');
|
||||
expect($updatedNewsletter->body)->equals('{"value":"Updated body"}');
|
||||
expect($updatedNewsletter->senderName)->equals('Updated sender name');
|
||||
expect($updatedNewsletter->senderAddress)->equals('Updated sender address');
|
||||
expect($updatedNewsletter->replyToName)->equals('Updated reply-to name');
|
||||
expect($updatedNewsletter->replyToAddress)->equals('Updated reply-to address');
|
||||
expect($updatedNewsletter->gaCampaign)->equals('Updated GA campaign');
|
||||
}
|
||||
|
||||
public function testItReturnsErrorIfSubscribersLimitReached() {
|
||||
|
@ -31,11 +31,27 @@ class NewsletterSaveControllerTest extends \MailPoetTest {
|
||||
$newsletter = $this->createNewsletter(NewsletterEntity::TYPE_STANDARD);
|
||||
$newsletterData = [
|
||||
'id' => $newsletter->getId(),
|
||||
'type' => 'Updated type',
|
||||
'subject' => 'Updated subject',
|
||||
'preheader' => 'Updated preheader',
|
||||
'body' => '{"value": "Updated body"}',
|
||||
'sender_name' => 'Updated sender name',
|
||||
'sender_address' => 'Updated sender address',
|
||||
'reply_to_name' => 'Updated reply-to name',
|
||||
'reply_to_address' => 'Updated reply-to address',
|
||||
'ga_campaign' => 'Updated GA campaign',
|
||||
];
|
||||
|
||||
$newsletter = $this->saveController->save($newsletterData);
|
||||
expect($newsletter->getType())->equals('Updated type');
|
||||
expect($newsletter->getSubject())->equals('Updated subject');
|
||||
expect($newsletter->getPreheader())->equals('Updated preheader');
|
||||
expect($newsletter->getBody())->equals(['value' => 'Updated body']);
|
||||
expect($newsletter->getSenderName())->equals('Updated sender name');
|
||||
expect($newsletter->getSenderAddress())->equals('Updated sender address');
|
||||
expect($newsletter->getReplyToName())->equals('Updated reply-to name');
|
||||
expect($newsletter->getReplyToAddress())->equals('Updated reply-to address');
|
||||
expect($newsletter->getGaCampaign())->equals('Updated GA campaign');
|
||||
}
|
||||
|
||||
public function testItDoesNotRerenderPostNotificationsUponUpdate() {
|
||||
|
Reference in New Issue
Block a user