Completed
Push — master ( 12f683...a4b1f6 )
by Miro
02:28
created

RepoFacadeFactoryTest   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 5

Importance

Changes 1
Bugs 0 Features 1
Metric Value
wmc 3
c 1
b 0
f 1
lcom 1
cbo 5
dl 0
loc 35
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A testCreate() 0 16 1
A provideTestRepo() 0 4 1
A provideTestUser() 0 4 1
1
<?php
2
namespace tests\DevBoardLib\GithubObjectApiFacade\Repo;
3
4
use DevBoardLib\GithubObjectApiFacade\Repo\RepoFacadeFactory;
5
use Mockery as m;
6
7
class RepoFacadeFactoryTest extends \PHPUnit_Framework_TestCase
8
{
9
    public function testCreate()
10
    {
11
        $repo = $this->provideTestRepo();
12
        $user = $this->provideTestUser();
13
14
        $wrappedFacade = m::mock('DevBoardLib\GithubApiFacade\Repo\RepoFacade');
15
16
        $wrappedFactory = m::mock('DevBoardLib\GithubApiFacade\Repo\RepoFacadeFactory');
17
        $wrappedFactory->shouldReceive('create')->with($repo, $user)->andReturn($wrappedFacade);
18
19
        $target = new RepoFacadeFactory($wrappedFactory);
20
21
        $result = $target->create($repo, $user);
22
23
        self::assertInstanceOf('DevBoardLib\GithubObjectApiFacade\Repo\SimpleRepoFacade', $result);
24
    }
25
26
    /**
27
     * @return m\MockInterface
28
     */
29
    private function provideTestRepo()
30
    {
31
        return m::mock('DevBoardLib\GithubCore\Repo\GithubRepo');
32
    }
33
34
    /**
35
     * @return m\MockInterface
36
     */
37
    private function provideTestUser()
38
    {
39
        return m::mock('DevBoardLib\GithubApiFacade\Auth\GithubAccessToken');
40
    }
41
}
42