CartCreateTest::tearDown()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 5
rs 9.4285
cc 1
eloc 3
nc 1
nop 0
1
<?php
2
/*
3
 * Copyright 2016 Jan Eichhorn <[email protected]>
4
 *
5
 * Licensed under the Apache License, Version 2.0 (the "License");
6
 * you may not use this file except in compliance with the License.
7
 * You may obtain a copy of the License at
8
 *
9
 * http://www.apache.org/licenses/LICENSE-2.0
10
 *
11
 * Unless required by applicable law or agreed to in writing, software
12
 * distributed under the License is distributed on an "AS IS" BASIS,
13
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
 * See the License for the specific language governing permissions and
15
 * limitations under the License.
16
 */
17
18
namespace ApaiIO\Test\Operations\Types;
19
20
use ApaiIO\Operations\CartCreate;
21
22
class CartCreateTest extends \PHPUnit_Framework_TestCase
23
{
24
    /**
25
     * the subject
26
     *
27
     * @var CartCreate
28
     */
29
    private $cartCreate;
30
31
    protected function setUp()
32
    {
33
        parent::setUp();
34
        $this->cartCreate = new CartCreate();
35
    }
36
37
    protected function tearDown()
38
    {
39
        $this->cartCreate = null;
40
        parent::tearDown();
41
    }
42
43
    public function testName()
44
    {
45
        $this->assertEquals("CartCreate", $this->cartCreate->getName());
46
    }
47
48
    public function testAddItem()
49
    {
50
        $operationParameters = $this->cartCreate->getOperationParameter();
51
        $this->assertEquals([], $operationParameters);
52
53
        $asin = __LINE__;
54
        $this->cartCreate->addItem($asin, 2);
55
56
        $operationParameters = $this->cartCreate->getOperationParameter();
57
        $this->assertEquals($asin, $operationParameters["Item.1.ASIN"]);
58
        $this->assertEquals(2, $operationParameters["Item.1.Quantity"]);
59
    }
60
61
    public function testAddItemByOfferListingId()
62
    {
63
        $operationParameters = $this->cartCreate->getOperationParameter();
64
        $this->assertEquals([], $operationParameters);
65
66
        $asin = __LINE__;
67
        $this->cartCreate->addItem($asin, 2, false);
68
69
        $operationParameters = $this->cartCreate->getOperationParameter();
70
        $this->assertEquals($asin, $operationParameters["Item.1.OfferListingId"]);
71
        $this->assertEquals(2, $operationParameters["Item.1.Quantity"]);
72
    }
73
74
    public function testAddItemIncrementsCounter()
75
    {
76
        $asin = __LINE__;
77
        $this->cartCreate->addItem($asin, 2);
78
        $this->cartCreate->addItem($asin, 2);
79
80
        $operationParameters = $this->cartCreate->getOperationParameter();
81
        $this->assertEquals($asin, $operationParameters["Item.2.ASIN"]);
82
        $this->assertEquals(2, $operationParameters["Item.2.Quantity"]);
83
    }
84
}
85