Completed
Push — checkout-consistent-prices ( af49ca )
by Kamil
13:24
created

MoreDetailsElement   A

Complexity

Total Complexity 7

Size/Duplication

Total Lines 44
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 2

Importance

Changes 0
Metric Value
wmc 7
lcom 1
cbo 2
dl 0
loc 44
rs 10
c 0
b 0
f 0

7 Methods

Rating   Name   Duplication   Size   Complexity  
A getDescription() 0 4 1
A getProductMetaKeywords() 0 4 1
A getShortDescription() 0 4 1
A getMetaDescription() 0 4 1
A getSlug() 0 4 1
A getName() 0 4 1
A getDefinedElements() 0 11 1
1
<?php
2
3
/*
4
 * This file is part of the Sylius package.
5
 *
6
 * (c) Paweł Jędrzejewski
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
declare(strict_types=1);
13
14
namespace Sylius\Behat\Element\Product\ShowPage;
15
16
use FriendsOfBehat\PageObjectExtension\Element\Element;
17
18
final class MoreDetailsElement extends Element implements MoreDetailsElementInterface
19
{
20
    public function getDescription(): string
21
    {
22
        return $this->getElement('description')->getText();
23
    }
24
25
    public function getProductMetaKeywords(): string
26
    {
27
        return $this->getElement('meta_keywords')->getText();
28
    }
29
30
    public function getShortDescription(): string
31
    {
32
        return $this->getElement('short_description')->getText();
33
    }
34
35
    public function getMetaDescription(): string
36
    {
37
        return $this->getElement('meta_description')->getText();
38
    }
39
40
    public function getSlug(): string
41
    {
42
        return $this->getElement('slug')->getText();
43
    }
44
45
    public function getName(): string
46
    {
47
        return $this->getElement('name')->getText();
48
    }
49
50
    protected function getDefinedElements(): array
51
    {
52
        return array_merge(parent::getDefinedElements(), [
53
            'description' => '#more-details tr:contains("Description") td:nth-child(2)',
54
            'meta_description' => '#more-details tr:contains("Meta description") td:nth-child(2)',
55
            'meta_keywords' => '#more-details tr:contains("Meta keywords") td:nth-child(2)',
56
            'name' => '#more-details tr:contains("Name") td:nth-child(2)',
57
            'short_description' => '#more-details tr:contains("Short description") td:nth-child(2)',
58
            'slug' => '#more-details tr:contains("Slug") td:nth-child(2)',
59
        ]);
60
    }
61
}
62