Passed
Pull Request — master (#11)
by Simon
01:34
created

SlackInviteTest::setUp()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace Firesphere\StripeSlack\Test;
4
5
use Firesphere\StripeSlack\Model\SlackInvite;
6
use SilverStripe\Dev\SapphireTest;
7
use SilverStripe\ORM\DataList;
8
9
/**
10
 * Class SlackSignupFormTest
11
 */
12
class SlackInviteTest extends SapphireTest
13
{
14
    protected static $fixture_file = '../fixtures/signups.yml';
15
16
    protected function setUp()
17
    {
18
        parent::setUp();
19
    }
20
21
    public function testDeleteDuplicates()
22
    {
23
        /** @var SlackInvite $user */
24
        $user = $this->objFromFixture(SlackInvite::class, 'invite1');
25
        $user->Invited = true;
26
        $user->deleteDuplicates();
27
        /** @var DataList|SlackInvite[] $result */
28
        $result = SlackInvite::get()->filter(['Email' => $user->Email]);
29
        $this->assertEquals(1, $result->count());
30
    }
31
32
    public function testHandleResult()
33
    {
34
        /** @var SlackInvite $invite */
35
        $invite = SlackInvite::create();
36
        $invite->handleResult(['error' => 'not_authed']);
37
        $this->assertEquals('No valid Slack Token provided, please check your settings', $invite->Message);
38
        $invite->handleResult(['error' => 'already_invited']);
39
        $this->assertContains('Invite successful', $invite->Message);
40
        $this->assertTrue((bool)$invite->Invited);
41
        $invite->handleResult(['ok' => 1]);
42
        $this->assertEquals('Invite successful', $invite->Message);
43
        $this->assertTrue((bool)$invite->Invited);
44
    }
45
}
46