Test Failed
Push — develop ( 1bc728...a00b17 )
by Edwin
03:32
created

Customer::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 75
Code Lines 56

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 57
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 75
ccs 57
cts 57
cp 1
rs 9
c 0
b 0
f 0
cc 1
eloc 56
nc 1
nop 1
crap 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 ShopifyClient\Resource;
4
5
use ShopifyClient\Action\Action;
6
use ShopifyClient\Request;
7
8
/**
9
 * https://help.shopify.com/api/reference/customer
10
 *
11
 * @method create(array $parameters = [])
12
 * @method get(float $parentId)
13
 * @method all(float $parentId)
14
 * @method count(float $parentId)
15
 * @method update(float $parentId, array $parameters = [])
16
 * @method delete(float $parentId)
17
 *
18
 * @property ProductMetaField $metafields
19
 * @property CustomerAddress $addresses
20
 */
21
class Customer extends AbstractResource implements Resource
22
{
23
    /**
24
     * @var array
25
     */
26
    protected $childResources = [
27
        'metafields' => CustomerMetaField::class,
28
        'addresses'  => CustomerAddress::class,
29
    ];
30
31
    /**
32
     * Customer constructor.
33
     * @param Request $request
34
     */
35 5
    public function __construct(Request $request)
36
    {
37 5
        parent::__construct($request);
38
39 5
        $this->actions->add(
40 5
            'create',
41 5
            new Action(
42 5
                Request::METHOD_POST,
43 5
                'customers.json',
44 5
                'customer',
45 5
                'customer'
46
            )
47
        );
48 5
        $this->actions->add(
49 5
            'get',
50 5
            new Action(
51 5
                Request::METHOD_GET,
52 5
                'customers/%s.json',
53 5
                'customer',
54 5
                'customer'
55
            )
56
        );
57 5
        $this->actions->add(
58 5
            'search',
59 5
            new Action(
60 5
                Request::METHOD_GET,
61 5
                'customers/search.json',
62 5
                'customers',
63 5
                'customers'
64
            )
65
        );
66 5
        $this->actions->add(
67 5
            'all',
68 5
            new Action(
69 5
                Request::METHOD_GET,
70 5
                'customers.json',
71 5
                'customers',
72 5
                'customers'
73
            )
74
        );
75 5
        $this->actions->add(
76 5
            'count',
77 5
            new Action(
78 5
                Request::METHOD_GET,
79 5
                'customers/count.json',
80 5
                'count',
81 5
                'count'
82
            )
83
        );
84 5
        $this->actions->add(
85 5
            'update',
86 5
            new Action(
87 5
                Request::METHOD_PUT,
88 5
                'customers/%s.json',
89 5
                'customer',
90 5
                'customer'
91
            )
92
        );
93 5
        $this->actions->add(
94 5
            'orders',
95 5
            new Action(
96 5
                Request::METHOD_GET,
97 5
                'customers/%s/orders.json',
98 5
                'orders',
99 5
                'orders'
100
            )
101
        );
102 5
        $this->actions->add(
103 5
            'delete',
104 5
            new Action(
105 5
                Request::METHOD_DELETE,
106 5
                'customers/%s.json'
107
            )
108
        );
109 5
    }
110
}
111