OopTest   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 27
Duplicated Lines 0 %

Importance

Changes 3
Bugs 0 Features 3
Metric Value
wmc 3
eloc 14
c 3
b 0
f 3
dl 0
loc 27
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A test_classUsesTrait() 0 4 1
A test_basename() 0 4 1
A test_uses() 0 13 1
1
<?php
2
3
namespace Nip\Utility\Tests;
4
5
use Nip\Utility\Oop;
6
use Nip\Utility\Tests\Fixtures\ExtendedClass;
7
use Nip\Utility\Traits\HasRequestTrait;
8
9
/**
10
 * Class OopTest
11
 * @package Nip\Utility\Tests
12
 */
13
class OopTest extends AbstractTest
14
{
15
    public function test_basename()
16
    {
17
        $name = Oop::basename(ExtendedClass::class);
18
        self::assertSame('ExtendedClass', $name);
19
    }
20
21
    public function test_classUsesTrait()
22
    {
23
        self::assertTrue(Oop::classUsesTrait(ExtendedClass::class, \Nip\Utility\Traits\NameWorksTrait::class));
24
        self::assertFalse(Oop::classUsesTrait(ExtendedClass::class, HasRequestTrait::class));
25
    }
26
27
    public function test_uses()
28
    {
29
        $traits = Oop::uses(ExtendedClass::class);
30
        self::assertSame(
31
            [
32
                'Nip\Utility\Traits\NameWorksTrait'               => 'Nip\Utility\Traits\NameWorksTrait',
33
                'Nip\Utility\Traits\CanBootTraitsTrait'           => 'Nip\Utility\Traits\CanBootTraitsTrait',
34
                'Nip\Utility\Tests\Fixtures\Traits\BootableTrait' => 'Nip\Utility\Tests\Fixtures\Traits\BootableTrait',
35
                'Nip\Utility\Traits\SingletonTrait'               => 'Nip\Utility\Traits\SingletonTrait',
36
                'Nip\Utility\Tests\Fixtures\Traits\ExtendedTrait' => 'Nip\Utility\Tests\Fixtures\Traits\ExtendedTrait',
37
                'Nip\Utility\Traits\DynamicPropertiesTrait'       => 'Nip\Utility\Traits\DynamicPropertiesTrait'
38
            ],
39
            $traits
40
        );
41
    }
42
}
43