Failed Conditions
Push — metadata ( 75cc1c...c6c11e )
by Michael
01:50
created

PropertyMetadataBuilderTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 26
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 2
eloc 18
dl 0
loc 26
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testBuilding() 0 14 1
A testDefaults() 0 9 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Doctrine\Tests\Annotations\Metadata\Builder;
6
7
use Doctrine\Annotations\Metadata\Builder\PropertyMetadataBuilder;
8
use PHPUnit\Framework\TestCase;
9
10
final class PropertyMetadataBuilderTest extends TestCase
11
{
12
    public function testDefaults() : void
13
    {
14
        $metadata = (new PropertyMetadataBuilder('foo'))->build();
15
16
        self::assertSame('foo', $metadata->getName());
17
        self::assertFalse($metadata->isRequired());
18
        self::assertNull($metadata->getType());
19
        self::assertFalse($metadata->isDefault());
20
        self::assertNull($metadata->getEnum());
21
    }
22
    public function testBuilding() : void
23
    {
24
        $metadata = (new PropertyMetadataBuilder('foo'))
25
            ->withBeingDefault()
26
            ->withBeingRequired()
27
            ->withType(['type' => 'string'])
28
            ->withEnum(['value' => [1, 2, 3], 'literal' => '1, 2, 3'])
29
            ->build();
30
31
        self::assertSame('foo', $metadata->getName());
32
        self::assertTrue($metadata->isRequired());
33
        self::assertSame(['type' => 'string'], $metadata->getType());
34
        self::assertTrue($metadata->isDefault());
35
        self::assertSame(['value' => [1, 2, 3], 'literal' => '1, 2, 3'], $metadata->getEnum());
36
    }
37
}
38