Passed
Push — master ( 6eb661...4d39c8 )
by Robbie
04:35
created

EmailRecipientTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 15
dl 0
loc 31
rs 10
c 0
b 0
f 0
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testShortcodesAreRenderedInEmailPreviewContent() 0 16 1
A testEmptyRecipientFailsValidation() 0 5 1
1
<?php
2
3
namespace SilverStripe\UserForms\Tests\Model\Recipient;
4
5
use SilverStripe\CMS\Model\SiteTree;
6
use SilverStripe\Dev\SapphireTest;
7
use SilverStripe\UserForms\Model\Recipient\EmailRecipient;
8
9
class EmailRecipientTest extends SapphireTest
10
{
11
    protected static $fixture_file = 'EmailRecipientTest.yml';
12
13
    public function testShortcodesAreRenderedInEmailPreviewContent()
14
    {
15
        $page = $this->objFromFixture(SiteTree::class, 'about_us');
16
17
        $recipient = EmailRecipient::create();
18
        $recipient->SendPlain = false;
19
        $recipient->EmailBodyHtml = '<p>Some email content. About us: [sitetree_link,id=' . $page->ID . '].</p>';
20
21
        $result = $recipient->getEmailBodyContent();
22
        $this->assertContains('/about-us/', $result);
23
24
        $recipient->SendPlain = true;
25
        $recipient->EmailBody = 'Some email content. About us: [sitetree_link,id=' . $page->ID . '].';
26
27
        $result = $recipient->getEmailBodyContent();
28
        $this->assertContains('/about-us/', $result);
29
    }
30
31
    /**
32
     * @expectedException SilverStripe\ORM\ValidationException
33
     * @expectedExceptionMessage "Send email to" address or field is required
34
     */
35
    public function testEmptyRecipientFailsValidation()
36
    {
37
        $recipient = new EmailRecipient();
38
        $recipient->EmailFrom = '[email protected]';
0 ignored issues
show
Bug Best Practice introduced by
The property EmailFrom does not exist on SilverStripe\UserForms\M...ecipient\EmailRecipient. Since you implemented __set, consider adding a @property annotation.
Loading history...
39
        $recipient->write();
40
    }
41
}
42