aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/sabre/dav/tests/Sabre/DAVACL/PrincipalCollectionTest.php
blob: 2777281a80fc031e49bb7cd0fe1b3ef7555b355d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php

declare(strict_types=1);

namespace Sabre\DAVACL;

class PrincipalCollectionTest extends \PHPUnit\Framework\TestCase
{
    public function testBasic()
    {
        $backend = new PrincipalBackend\Mock();
        $pc = new PrincipalCollection($backend);
        $this->assertTrue($pc instanceof PrincipalCollection);

        $this->assertEquals('principals', $pc->getName());
    }

    /**
     * @depends testBasic
     */
    public function testGetChildren()
    {
        $backend = new PrincipalBackend\Mock();
        $pc = new PrincipalCollection($backend);

        $children = $pc->getChildren();
        $this->assertTrue(is_array($children));

        foreach ($children as $child) {
            $this->assertTrue($child instanceof IPrincipal);
        }
    }

    /**
     * @depends testBasic
     */
    public function testGetChildrenDisable()
    {
        $this->expectException('Sabre\DAV\Exception\MethodNotAllowed');
        $backend = new PrincipalBackend\Mock();
        $pc = new PrincipalCollection($backend);
        $pc->disableListing = true;

        $children = $pc->getChildren();
    }

    public function testFindByUri()
    {
        $backend = new PrincipalBackend\Mock();
        $pc = new PrincipalCollection($backend);
        $this->assertEquals('principals/user1', $pc->findByUri('mailto:user1.sabredav@sabredav.org'));
        $this->assertNull($pc->findByUri('mailto:fake.user.sabredav@sabredav.org'));
        $this->assertNull($pc->findByUri(''));
    }
}