AdvertFixtures::load()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 62
Code Lines 49

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 49
dl 0
loc 62
rs 9.1127
c 0
b 0
f 0
cc 2
nc 2
nop 1

How to fix   Long Method   

Long Method

Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.

For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.

Commonly applied refactorings include:

1
<?php
2
3
namespace App\DataFixtures;
4
5
use App\Entity\Advert;
6
use App\Entity\Department;
7
use Doctrine\Bundle\FixturesBundle\Fixture;
8
use Doctrine\Common\DataFixtures\DependentFixtureInterface;
9
use Doctrine\Common\Persistence\ObjectManager;
10
11
class AdvertFixtures extends Fixture implements DependentFixtureInterface
12
{
13
    public function load(ObjectManager $manager)
14
    {
15
        // $product = new Product();
16
        // $manager->persist($product);
17
        $names = [
18
            ['title' => 'Recherche développeur Symfony', 'date' => new \Datetime()],
19
            ['title' => 'Mission de webmaster', 'date' => new \Datetime()],
20
            ['title' => 'Offre de stage webdesigner', 'date' => new \Datetime()],
21
            ['title' => 'Recherche développeur Symfony/Angular', 'date' => new \Datetime()],
22
            ['title' => 'Mission de graphiste', 'date' => new \Datetime()],
23
            ['title' => 'Offre de stage développeur Javascript', 'date' => new \Datetime()],
24
            ['title' => 'Recherche développeur Symfony', 'date' => new \Datetime()],
25
            ['title' => 'Mission de webmaster', 'date' => new \Datetime()],
26
            ['title' => 'Offre de stage webdesigner', 'date' => new \Datetime()],
27
            ['title' => 'Recherche développeur Symfony/Angular', 'date' => new \Datetime()],
28
            ['title' => 'Mission de graphiste', 'date' => new \Datetime()],
29
            ['title' => 'Offre de stage développeur Javascript', 'date' => new \Datetime()],
30
            ['title' => 'Recherche développeur Symfony', 'date' => new \Datetime()],
31
            ['title' => 'Mission de webmaster', 'date' => new \Datetime()],
32
            ['title' => 'Offre de stage webdesigner', 'date' => new \Datetime()],
33
            ['title' => 'Recherche développeur Symfony/Angular', 'date' => new \Datetime()],
34
            ['title' => 'Mission de graphiste', 'date' => new \Datetime()],
35
            ['title' => 'Offre de stage développeur Javascript', 'date' => new \Datetime()],
36
            ['title' => 'Recherche développeur Symfony', 'date' => new \Datetime()],
37
            ['title' => 'Mission de webmaster', 'date' => new \Datetime()],
38
            ['title' => 'Offre de stage webdesigner', 'date' => new \Datetime()],
39
            ['title' => 'Recherche développeur Symfony/Angular', 'date' => new \Datetime()],
40
            ['title' => 'Mission de graphiste', 'date' => new \Datetime()],
41
            ['title' => 'Offre de stage développeur Javascript', 'date' => new \Datetime()],
42
            ['title' => 'Recherche développeur Symfony', 'date' => new \Datetime()],
43
            ['title' => 'Mission de webmaster', 'date' => new \Datetime()],
44
            ['title' => 'Offre de stage webdesigner', 'date' => new \Datetime()],
45
            ['title' => 'Recherche développeur Symfony/Angular', 'date' => new \Datetime()],
46
            ['title' => 'Mission de graphiste', 'date' => new \Datetime()],
47
            ['title' => 'Offre de stage développeur Javascript', 'date' => new \Datetime()],
48
            ['title' => 'Recherche développeur Symfony', 'date' => new \Datetime()],
49
            ['title' => 'Mission de webmaster', 'date' => new \Datetime()],
50
            ['title' => 'Offre de stage webdesigner', 'date' => new \Datetime()],
51
            ['title' => 'Recherche développeur Symfony/Angular', 'date' => new \Datetime()],
52
            ['title' => 'Mission de graphiste', 'date' => new \Datetime()],
53
            ['title' => 'Offre de stage développeur Javascript', 'date' => new \Datetime()],
54
        ];
55
        foreach ($names as $name) {
56
            $advert = new Advert();
57
            $advert->setTitle($name['title']);
58
            $advert->setDate($name['date']);
59
            $advert->setContent('Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.');
60
            //$image = new Image();
61
            //$image->setUrl('http://sdz-upload.s3.amazonaws.com/prod/upload/job-de-reve.jpg');
62
            //$image->setAlt('Job de rêve');
63
            //$manager->persist($image);
64
            // On lie l'image à l'annonce
65
            //$advert->setImage($image);
66
67
            $department = new Department();
68
            $department->setName('75 Paris');
69
            $manager->persist($department);
70
            $advert->setDepartment($department);
71
            $advert->setAuthor($this->getReference('recruiter'));
72
            $manager->persist($advert);
73
        }
74
        $manager->flush();
75
    }
76
77
    /**
78
     * This method must return an array of fixtures classes
79
     * on which the implementing class depends on
80
     *
81
     * @return array
82
     */
83
    public function getDependencies()
84
    {
85
        return [UserFixtures::class, CategoryFixtures::class, DepartmentFixtures::class];
86
    }
87
}
88