GitHub Access Token became invalid

It seems like the GitHub access token used for retrieving details about this repository from GitHub became invalid. This might prevent certain types of inspections from being run (in particular, everything related to pull requests).
Please ask an admin of your repository to re-new the access token on this website.
Test Failed
Push — master ( 63e980...f7805d )
by joseph
07:14
created

testGenerateRepositoryFactory()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 20
Code Lines 13

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 20
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 13
nc 1
nop 0
1
<?php declare(strict_types=1);
2
3
namespace EdmondsCommerce\DoctrineStaticMeta\CodeGeneration\Generator;
4
5
use Doctrine\ORM\EntityManagerInterface;
6
use EdmondsCommerce\DoctrineStaticMeta\AbstractTest;
7
use EdmondsCommerce\DoctrineStaticMeta\CodeGeneration\Command\AbstractCommand;
8
use EdmondsCommerce\DoctrineStaticMeta\CodeGeneration\NamespaceHelper;
9
10
class EntityGeneratorTest extends AbstractTest
11
{
12
    public const WORK_DIR = AbstractTest::VAR_PATH.'/EntityGeneratorTest/';
13
14
    /**
15
     */
16
    public function testGenerateEntity()
17
    {
18
        $fqn = static::TEST_PROJECT_ROOT_NAMESPACE
19
               .'\\'.AbstractGenerator::ENTITIES_FOLDER_NAME
20
               .'\\Yet\\Another\\TestEntity';
21
        $this->getEntityGenerator()->generateEntity($fqn);
22
        $createdFile = static::WORK_DIR
23
                       .'/'.AbstractCommand::DEFAULT_SRC_SUBFOLDER
24
                       .'/'.AbstractGenerator::ENTITIES_FOLDER_NAME
25
                       .'/Yet/Another/TestEntity.php';
26
        $this->assertNoMissedReplacements($createdFile);
27
28
        $createdFile = static::WORK_DIR
29
                       .'/'.AbstractCommand::DEFAULT_SRC_SUBFOLDER
30
                       .'/'.AbstractGenerator::ENTITY_REPOSITORIES_FOLDER_NAME
31
                       .'/Yet/Another/TestEntityRepository.php';
32
        $this->assertNoMissedReplacements($createdFile);
33
        $this->qaGeneratedCode();
34
    }
35
36
    public function testGenerateRepositoryFactory()
37
    {
38
        $entityFqn = static::TEST_PROJECT_ROOT_NAMESPACE
39
            .'\\'.AbstractGenerator::ENTITIES_FOLDER_NAME
40
            .'\\Some\\Other\\TestEntity';
41
42
        $repositoryFqn = '\\'.static::TEST_PROJECT_ROOT_NAMESPACE
43
            .AbstractGenerator::ENTITY_REPOSITORIES_NAMESPACE
44
            .'\\Some\\Other\\TestEntityRepository';
45
46
        $repositoryFactoryFqn = $repositoryFqn.'Factory';
47
48
        $this->getEntityGenerator()->generateEntity($entityFqn);
49
50
        $entityManager     = $this->container->get(EntityManagerInterface::class);
51
        $repositoryFactory = new $repositoryFactoryFqn($entityManager);
52
        $repository        = $repositoryFactory->getRepository();
53
54
        $this->assertInstanceOf($repositoryFqn, $repository);
55
    }
56
57
    public function testGenerateEntityWithDeepNesting()
58
    {
59
        $projectRootNamespace     = 'My\\TestEntities\\Project\\';
60
        $entityNamespace          = $projectRootNamespace
61
                                    .AbstractGenerator::ENTITIES_FOLDER_NAME
62
                                    .'\\Human\\Head\\Eye';
63
        $entityFullyQualifiedName = $entityNamespace.'\\Lash';
64
        $this->getEntityGenerator()
65
             ->setProjectRootNamespace($projectRootNamespace)
66
             ->generateEntity($entityFullyQualifiedName);
67
68
        $createdFile = static::WORK_DIR
69
                       .'/'.AbstractCommand::DEFAULT_SRC_SUBFOLDER
70
                       .'/'.AbstractGenerator::ENTITIES_FOLDER_NAME
71
                       .'/Human/Head/Eye/Lash.php';
72
        $this->assertNoMissedReplacements($createdFile);
73
        $this->assertContains("namespace $entityNamespace;", file_get_contents($createdFile));
74
75
        $createdFile = static::WORK_DIR
76
                       .'/'.AbstractCommand::DEFAULT_SRC_SUBFOLDER
77
                       .'/'.AbstractGenerator::ENTITY_REPOSITORIES_FOLDER_NAME
78
                       .'/Human/Head/Eye/LashRepository.php';
79
        $this->assertNoMissedReplacements($createdFile);
80
        $entityFullyQualifiedName = $this->container->get(NamespaceHelper::class)->tidy(
81
            $projectRootNamespace
82
            .AbstractGenerator::ENTITY_REPOSITORIES_NAMESPACE
83
            .'\\Human\\Head\\Eye'
84
        );
85
        $this->assertContains("namespace $entityFullyQualifiedName;", file_get_contents($createdFile));
86
87
        $this->qaGeneratedCode();
88
    }
89
}
90