Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.
Common duplication problems, and corresponding solutions are:
1 | <?php |
||
9 | class CategoryTranslationSpec extends ObjectBehavior |
||
10 | { |
||
11 | function it_is_initializable() |
||
12 | { |
||
13 | $this->shouldHaveType(CategoryTranslation::class); |
||
14 | } |
||
15 | |||
16 | function let() |
||
17 | { |
||
18 | $data = [ |
||
19 | 'locale' => 'en', |
||
20 | 'title' => 'English translation', |
||
21 | 'description' => 'Big text', |
||
22 | ]; |
||
23 | |||
24 | $this->beConstructedWith($data); |
||
25 | } |
||
26 | |||
27 | function it_should_be_hydrated() |
||
28 | { |
||
29 | $this->getLocale()->shouldReturn('en'); |
||
30 | $this->getTitle()->shouldReturn('English translation'); |
||
31 | $this->getDescription()->shouldReturn('Big text'); |
||
32 | } |
||
33 | } |
||
34 |