TokenFactoryTest   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 18
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
wmc 1
eloc 11
c 1
b 0
f 1
dl 0
loc 18
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A testMake() 0 16 1
1
<?php
2
3
namespace ByTIC\Hello\Tests\Models\Clients\PersonalAccess;
4
5
use ByTIC\Hello\Models\AccessTokens\Token;
6
use ByTIC\Hello\Models\Clients\Client;
7
use ByTIC\Hello\Models\Clients\PersonalAccess\TokenFactory;
8
use ByTIC\Hello\Tests\AbstractTest;
9
use League\OAuth2\Server\AuthorizationServer;
10
use Mockery as m;
11
12
/**
13
 * Class TokenFactoryTest
14
 * @package ByTIC\Hello\Tests\Models\Clients\PersonalAccess
15
 */
16
class TokenFactoryTest extends AbstractTest
17
{
18
    public function testMake()
19
    {
20
        $server = m::mock(AuthorizationServer::class)->makePartial();
21
        $server->shouldReceive('respondToAccessTokenRequest')->andReturn($response = m::mock());
22
        $response->shouldReceive('getBody->__toString')->andReturn(json_encode([
23
            'access_token' => 'foo.john.doe',
24
        ]));
25
26
        $client = new Client();
27
28
        $factory = m::mock(TokenFactory::class, [$server, $client])
29
            ->makePartial()->shouldAllowMockingProtectedMethods();
30
        $factory->shouldReceive('findAccessToken')->andReturn(new Token());
31
32
        $token = $factory->make(1, 'token', ['scopes']);
33
        $this->assertInstanceOf(Token::class, $token);
34
    }
35
}
36