Completed
Push — master ( fe4d16...77dac1 )
by Florian
26:03
created

ShopTest::setUp()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 15
Code Lines 10

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 15
rs 9.4285
cc 1
eloc 10
nc 1
nop 0
1
<?php
2
3
/**
4
 * PAYONE Magento 2 Connector is free software: you can redistribute it and/or modify
5
 * it under the terms of the GNU Lesser General Public License as published by
6
 * the Free Software Foundation, either version 3 of the License, or
7
 * (at your option) any later version.
8
 *
9
 * PAYONE Magento 2 Connector is distributed in the hope that it will be useful,
10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
 * GNU Lesser General Public License for more details.
13
 *
14
 * You should have received a copy of the GNU Lesser General Public License
15
 * along with PAYONE Magento 2 Connector. If not, see <http://www.gnu.org/licenses/>.
16
 *
17
 * PHP version 5
18
 *
19
 * @category  Payone
20
 * @package   Payone_Magento2_Plugin
21
 * @author    FATCHIP GmbH <[email protected]>
22
 * @copyright 2003 - 2017 Payone GmbH
23
 * @license   <http://www.gnu.org/licenses/> GNU Lesser General Public License
24
 * @link      http://www.payone.de
25
 */
26
27
namespace Payone\Core\Test\Unit\Helper;
28
29
use Payone\Core\Helper\Shop;
30
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
31
use Magento\Framework\App\ProductMetadata;
32
use Magento\Store\Model\StoreManagerInterface;
33
use Magento\Store\Api\Data\StoreInterface;
34
35
class ShopTest extends \PHPUnit_Framework_TestCase
36
{
37
    /**
38
     * @var ObjectManager
39
     */
40
    protected $objectManager;
41
42
    /**
43
     * @var Shop
44
     */
45
    protected $shop;
46
47
    protected function setUp()
48
    {
49
        $this->objectManager = new ObjectManager($this);
50
51
        $productMetadata = $this->getMockBuilder(ProductMetadata::class)->disableOriginalConstructor()->getMock();
52
        $productMetadata->method('getEdition')->willReturn('Community');
53
        $productMetadata->method('getVersion')->willReturn('2.0.0');
54
55
        $store = $this->getMockBuilder(StoreInterface::class)->disableOriginalConstructor()->getMock();
56
        $store->method('getId')->willReturn(1);
57
58
        $storeManager = $this->getMockBuilder(StoreManagerInterface::class)->disableOriginalConstructor()->getMock();
59
        $storeManager->method('getStore')->willReturn($store);
60
        $this->shop = $this->objectManager->getObject(Shop::class, ['storeManager' => $storeManager, 'productMetadata' => $productMetadata]);
61
    }
62
63
    public function testGetMagentoEdition()
64
    {
65
        $result = $this->shop->getMagentoEdition();
66
        $expected = ['Community', 'Enterprise'];
67
        $this->assertContains($result, $expected);
68
    }
69
70
    public function testGetMagentoVersion()
71
    {
72
        $result = $this->shop->getMagentoVersion();
73
        $this->assertNotEmpty($result);
74
    }
75
76
    public function testGetStoreId()
77
    {
78
        $result = $this->shop->getStoreId();
79
        $expected = 1;
80
        $this->assertEquals($expected, $result);
81
    }
82
}
83