Completed
Push — ezp-30616 ( 9239a0...7bf8e8 )
by
unknown
57:53 queued 37:56
created

LanguageServiceTest::serviceProvider()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 114

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
nc 1
nop 0
dl 0
loc 114
rs 8
c 0
b 0
f 0

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
/**
4
 * File containing the LanguageServiceTest class.
5
 *
6
 * @copyright Copyright (C) eZ Systems AS. All rights reserved.
7
 * @license For full copyright and license information view LICENSE file distributed with this source code.
8
 */
9
namespace eZ\Publish\Core\SignalSlot\Tests;
10
11
use eZ\Publish\API\Repository\LanguageService as APILanguageService;
12
use eZ\Publish\API\Repository\Values\Content\LanguageCreateStruct;
13
use eZ\Publish\API\Repository\Values\Content\Language;
14
use eZ\Publish\Core\SignalSlot\SignalDispatcher;
15
use eZ\Publish\Core\SignalSlot\LanguageService;
16
use eZ\Publish\Core\SignalSlot\Signal\LanguageService as LanguageServiceSignals;
17
18
class LanguageServiceTest extends ServiceTest
19
{
20
    protected function getServiceMock()
21
    {
22
        return $this->createMock(APILanguageService::class);
23
    }
24
25
    protected function getSignalSlotService($coreService, SignalDispatcher $dispatcher)
26
    {
27
        return new LanguageService($coreService, $dispatcher);
28
    }
29
30
    public function serviceProvider()
31
    {
32
        $languageId = 2;
33
        $languageCode = 'elv-TO';
34
        $languageName = 'Elvish';
35
        $languageEnabled = true;
36
        $languageNewName = 'Elfique';
37
38
        $language = new Language(
39
            array(
40
                'id' => $languageId,
41
                'languageCode' => $languageCode,
42
                'name' => $languageName,
43
                'enabled' => $languageEnabled,
44
            )
45
        );
46
47
        $languageCreateStruct = new LanguageCreateStruct();
48
49
        // string $method, array $parameters, mixed $return, int $emitNr, ?string $signalClass
50
        return array(
51
            array(
52
                'createLanguage',
53
                array($languageCreateStruct),
54
                $language,
55
                1,
56
                LanguageServiceSignals\CreateLanguageSignal::class,
57
                array('languageId' => $languageId),
58
            ),
59
            array(
60
                'updateLanguageName',
61
                array($language, $languageNewName),
62
                $language,
63
                1,
64
                LanguageServiceSignals\UpdateLanguageNameSignal::class,
65
                array(
66
                    'languageId' => $languageId,
67
                    'newName' => $languageNewName,
68
                ),
69
            ),
70
            array(
71
                'enableLanguage',
72
                array($language),
73
                $language,
74
                1,
75
                LanguageServiceSignals\EnableLanguageSignal::class,
76
                array(
77
                    'languageId' => $languageId,
78
                ),
79
            ),
80
            array(
81
                'disableLanguage',
82
                array($language),
83
                $language,
84
                1,
85
                LanguageServiceSignals\DisableLanguageSignal::class,
86
                array(
87
                    'languageId' => $languageId,
88
                ),
89
            ),
90
            array(
91
                'loadLanguage',
92
                array($languageCode),
93
                $language,
94
                0,
95
            ),
96
            array(
97
                'loadLanguageListByCode',
98
                [[$languageCode]],
99
                [$languageCode => $language],
100
                0,
101
            ),
102
            array(
103
                'loadLanguages',
104
                array(),
105
                array($language),
106
                0,
107
            ),
108
            array(
109
                'loadLanguageById',
110
                array($languageId),
111
                $language,
112
                0,
113
            ),
114
            array(
115
                'loadLanguageListById',
116
                [[$languageId]],
117
                [$languageId => $language],
118
                0,
119
            ),
120
            array(
121
                'deleteLanguage',
122
                array($language),
123
                null,
124
                1,
125
                LanguageServiceSignals\DeleteLanguageSignal::class,
126
                array(
127
                    'languageId' => $languageId,
128
                ),
129
            ),
130
            array(
131
                'getDefaultLanguageCode',
132
                array(),
133
                $languageCode,
134
                0,
135
            ),
136
            array(
137
                'newLanguageCreateStruct',
138
                array(),
139
                $languageCreateStruct,
140
                0,
141
            ),
142
        );
143
    }
144
}
145