AbstractTeamMemberFixture   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 4

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 3
lcom 1
cbo 4
dl 0
loc 36
ccs 0
cts 14
cp 0
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A load() 0 18 3
createEntity() 0 1 ?
1
<?php
2
3
namespace OSS\CoreBundle\DataFixtures\ORM;
4
5
use Doctrine\Common\DataFixtures\AbstractFixture;
6
use Doctrine\Common\DataFixtures\FixtureInterface;
7
use Doctrine\Common\Persistence\ObjectManager;
8
use Faker\Factory as FakerFactory;
9
use OSS\CoreBundle\Entity\Manager;
10
use OSS\CoreBundle\Entity\Player;
11
use OSS\CoreBundle\Entity\Team;
12
use OSS\CoreBundle\Entity\Trainer;
13
14
abstract class AbstractTeamMemberFixture extends AbstractFixture implements FixtureInterface
15
{
16
    /**
17
     * @var int
18
     */
19
    protected $numberOfEntitiesToCreate = 1;
20
21
    /**
22
     * @param ObjectManager $objectManager
23
     */
24
    public function load(ObjectManager $objectManager)
25
    {
26
        $faker = FakerFactory::create('de_DE');
27
28
        for ($i = 1; $i <= 18; $i++) {
29
            /** @var Team $team */
30
            $team = $this->getReference('team' . $i);
31
32
            for ($j = 1; $j <= $this->numberOfEntitiesToCreate; $j++) {
33
                $entity = $this->createEntity($i);
34
                $entity->setName($faker->firstNameMale . ' ' . $faker->lastName);
35
                $entity->setTeam($team);
36
                $objectManager->persist($entity);
37
            }
38
        }
39
40
        $objectManager->flush();
41
    }
42
43
    /**
44
     * @param int
45
     *
46
     * @return Trainer|Manager|Player
47
     */
48
    abstract protected function createEntity($teamIndex);
49
}
50