Completed
Push — master ( 77a338...555e8a )
by Marco
09:51
created

invalidEntityNames()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 10
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 10
rs 9.4285
cc 1
eloc 7
nc 1
nop 0
1
<?php
2
3
namespace Doctrine\Tests\ORM;
4
5
use Doctrine\Common\Collections\ArrayCollection;
6
use Doctrine\Common\NotifyPropertyChanged;
7
use Doctrine\Common\PropertyChangedListener;
8
use Doctrine\ORM\Mapping\ClassMetadata;
9
use Doctrine\ORM\ORMInvalidArgumentException;
10
use Doctrine\ORM\UnitOfWork;
11
use Doctrine\ORM\ORMException;
12
use Doctrine\Tests\Mocks\ConnectionMock;
13
use Doctrine\Tests\Mocks\DriverMock;
14
use Doctrine\Tests\Mocks\EntityManagerMock;
15
use Doctrine\Tests\Mocks\EntityPersisterMock;
16
use Doctrine\Tests\Mocks\UnitOfWorkMock;
17
use Doctrine\Tests\Models\CMS\CmsPhonenumber;
18
use Doctrine\Tests\Models\CMS\CmsUser;
19
use Doctrine\Tests\Models\Forum\ForumAvatar;
20
use Doctrine\Tests\Models\Forum\ForumUser;
21
use Doctrine\Tests\Models\GeoNames\City;
22
use Doctrine\Tests\Models\GeoNames\Country;
23
use Doctrine\Tests\OrmTestCase;
24
use stdClass;
25
26
/**
27
 * @covers \Doctrine\ORM\ORMInvalidArgumentException
28
 */
29
class ORMInvalidArgumentExceptionTest extends \PHPUnit_Framework_TestCase
30
{
31
    /**
32
     * @dataProvider invalidEntityNames
33
     *
34
     * @param mixed  $value
35
     * @param string $expectedMessage
36
     *
37
     * @return void
38
     */
39
    public function testInvalidEntityName($value, $expectedMessage)
40
    {
41
        $exception = ORMInvalidArgumentException::invalidEntityName($value);
42
43
        self::assertInstanceOf(ORMInvalidArgumentException::class, $exception);
44
        self::assertSame($expectedMessage, $exception->getMessage());
45
    }
46
47
    /**
48
     * @return string[][]
49
     */
50
    public function invalidEntityNames()
51
    {
52
        return [
53
            [null, 'Entity name must be a string, NULL given'],
54
            [true, 'Entity name must be a string, boolean given'],
55
            [123, 'Entity name must be a string, integer given'],
56
            [123.45, 'Entity name must be a string, double given'],
57
            [new \stdClass(), 'Entity name must be a string, object given'],
58
        ];
59
    }
60
}
61