Completed
Push — master ( b74cd0...088e4f )
by Dennis
11:47
created

MethodNameGeneratorTest   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 52
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 4

Importance

Changes 0
Metric Value
wmc 5
c 0
b 0
f 0
lcom 1
cbo 4
dl 0
loc 52
rs 10

5 Methods

Rating   Name   Duplication   Size   Complexity  
A setUp() 0 5 1
A generateReturnsIntegerIfParameterIsInteger() 0 4 1
A generateReturnsIntegerIfParameterCanBeConvertedToInteger() 0 4 1
A generateReturnsMethodName() 0 4 1
A generateReturnsNullWithInvalidParameter() 0 7 1
1
<?php
2
3
namespace Dennis\Seeder\Tests\Unit\Generator;
4
5
use Dennis\Seeder\Generator;
6
use Dennis\Seeder\Generator\MethodNameGenerator;
7
use TYPO3\CMS\Core\Tests\UnitTestCase;
8
9
/**
10
 * Class MethodNameGeneratorTest
11
 *
12
 * @package Dennis\Seeder\Tests\Generator
13
 */
14
class MethodNameGeneratorTest extends UnitTestCase
0 ignored issues
show
Deprecated Code introduced by
The class TYPO3\CMS\Core\Tests\UnitTestCase has been deprecated with message: will be removed once TYPO3 9 LTS is released

This class, trait or interface has been deprecated. The supplier of the file has supplied an explanatory message.

The explanatory message should give you some clue as to whether and when the type will be removed from the class and what other constant to use instead.

Loading history...
15
{
16
    /**
17
     * @var Generator $subject
18
     */
19
    protected $subject;
20
21
    public function setUp()
22
    {
23
        $faker = $this->getMock(\Dennis\Seeder\Faker::class);
24
        $this->subject = new MethodNameGenerator($faker);
25
    }
26
27
    /**
28
     * @method generate
29
     * @test
30
     */
31
    public function generateReturnsIntegerIfParameterIsInteger()
32
    {
33
        $this->assertSame(4, $this->subject->generate(4));
34
    }
35
36
    /**
37
     * @method generate
38
     * @test
39
     */
40
    public function generateReturnsIntegerIfParameterCanBeConvertedToInteger()
41
    {
42
        $this->assertSame(4, $this->subject->generate('4'));
43
    }
44
45
    /**
46
     * @method generate
47
     * @test
48
     */
49
    public function generateReturnsMethodName()
50
    {
51
        $this->assertSame('$faker->getName()', $this->subject->generate('name'));
52
    }
53
54
    /**
55
     * @method generate
56
     * @test
57
     */
58
    public function generateReturnsNullWithInvalidParameter()
59
    {
60
        $faker = $this->getMock(\Dennis\Seeder\Faker::class);
61
        $faker->method('get')->willThrowException(new \Dennis\Seeder\Provider\NotFoundException());
62
        $generator = new MethodNameGenerator($faker);
63
        $this->assertSame(null, $generator->generate('InvalidParameter'));
64
    }
65
}
66