Skip to content

Commit

Permalink
Merge pull request #27815 from lbajsarowicz/phpunit8/module-Encryptio…
Browse files Browse the repository at this point in the history
…nKey

#27500 Prepare EncryptionKey module Tests for PHPUnit 8
  • Loading branch information
slavvka authored Apr 15, 2020
2 parents 72dfff3 + 5829242 commit 50b15fd
Show file tree
Hide file tree
Showing 2 changed files with 71 additions and 45 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<?php
<?php declare(strict_types=1);
/**
*
* Copyright © Magento, Inc. All rights reserved.
Expand All @@ -7,63 +7,74 @@

namespace Magento\EncryptionKey\Test\Unit\Controller\Adminhtml\Crypt\Key;

use Magento\EncryptionKey\Controller\Adminhtml\Crypt\Key\Save;
use Magento\EncryptionKey\Model\ResourceModel\Key\Change;
use Magento\Framework\App\CacheInterface;
use Magento\Framework\App\RequestInterface;
use Magento\Framework\App\ResponseInterface;
use Magento\Framework\Encryption\EncryptorInterface;
use Magento\Framework\Message\ManagerInterface;
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;

/**
* Test class for Magento\EncryptionKey\Controller\Adminhtml\Crypt\Key\Save
*/
class SaveTest extends \PHPUnit\Framework\TestCase
class SaveTest extends TestCase
{
/** @var \Magento\Framework\Encryption\EncryptorInterface|\PHPUnit_Framework_MockObject_MockObject */
/** @var EncryptorInterface|MockObject */
protected $encryptMock;

/** @var \Magento\EncryptionKey\Model\ResourceModel\Key\Change|\PHPUnit_Framework_MockObject_MockObject */
/** @var Change|MockObject */
protected $changeMock;

/** @var \Magento\Framework\App\CacheInterface|\PHPUnit_Framework_MockObject_MockObject */
/** @var CacheInterface|MockObject */
protected $cacheMock;

/** @var \Magento\Framework\App\RequestInterface|\PHPUnit_Framework_MockObject_MockObject */
/** @var RequestInterface|MockObject */
protected $requestMock;

/** @var \Magento\Framework\Message\ManagerInterface|\PHPUnit_Framework_MockObject_MockObject */
/** @var ManagerInterface|MockObject */
protected $managerMock;

/** @var \Magento\Framework\App\ResponseInterface|\PHPUnit_Framework_MockObject_MockObject */
/** @var ResponseInterface|MockObject */
protected $responseMock;

/** @var \Magento\EncryptionKey\Controller\Adminhtml\Crypt\Key\Save */
/** @var Save */
protected $model;

protected function setUp()
protected function setUp(): void
{
$this->encryptMock = $this->getMockBuilder(\Magento\Framework\Encryption\EncryptorInterface::class)
$this->encryptMock = $this->getMockBuilder(EncryptorInterface::class)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$this->changeMock = $this->getMockBuilder(\Magento\EncryptionKey\Model\ResourceModel\Key\Change::class)
$this->changeMock = $this->getMockBuilder(Change::class)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$this->cacheMock = $this->getMockBuilder(\Magento\Framework\App\CacheInterface::class)
$this->cacheMock = $this->getMockBuilder(CacheInterface::class)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$this->requestMock = $this->getMockBuilder(\Magento\Framework\App\RequestInterface::class)
$this->requestMock = $this->getMockBuilder(RequestInterface::class)
->disableOriginalConstructor()
->setMethods(['getPost'])
->getMockForAbstractClass();
$this->managerMock = $this->getMockBuilder(\Magento\Framework\Message\ManagerInterface::class)
$this->managerMock = $this->getMockBuilder(ManagerInterface::class)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$this->responseMock = $this->getMockBuilder(\Magento\Framework\App\ResponseInterface::class)
$this->responseMock = $this->getMockBuilder(ResponseInterface::class)
->disableOriginalConstructor()
->setMethods(['setRedirect'])
->getMockForAbstractClass();

$helper = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
$helper = new ObjectManager($this);

$this->model = $helper->getObject(
\Magento\EncryptionKey\Controller\Adminhtml\Crypt\Key\Save::class,
Save::class,
[
'encryptor' => $this->encryptMock,
'change' => $this->changeMock,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,97 +1,112 @@
<?php
<?php declare(strict_types=1);
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/

namespace Magento\EncryptionKey\Test\Unit\Model\ResourceModel\Key;

use Magento\Config\Model\Config\Structure;
use Magento\EncryptionKey\Model\ResourceModel\Key\Change;
use Magento\Framework\App\DeploymentConfig\Writer;
use Magento\Framework\App\ResourceConnection;
use Magento\Framework\DB\Adapter\AdapterInterface;
use Magento\Framework\DB\Select;
use Magento\Framework\Encryption\EncryptorInterface;
use Magento\Framework\Filesystem;
use Magento\Framework\Math\Random;
use Magento\Framework\Model\ResourceModel\Db\ObjectRelationProcessor;
use Magento\Framework\Model\ResourceModel\Db\TransactionManagerInterface;
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;

/**
* Test Class For Magento\EncryptionKey\Model\ResourceModel\Key\Change
*
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
*/
class ChangeTest extends \PHPUnit\Framework\TestCase
class ChangeTest extends TestCase
{
/** @var \Magento\Framework\Encryption\EncryptorInterface|\PHPUnit_Framework_MockObject_MockObject */
/** @var EncryptorInterface|MockObject */
protected $encryptMock;

/** @var \Magento\Framework\Filesystem|\PHPUnit_Framework_MockObject_MockObject */
/** @var Filesystem|MockObject */
protected $filesystemMock;

/** @var \Magento\Config\Model\Config\Structure|\PHPUnit_Framework_MockObject_MockObject */
/** @var Structure|MockObject */
protected $structureMock;

/** @var \Magento\Framework\App\DeploymentConfig\Writer|\PHPUnit_Framework_MockObject_MockObject */
/** @var Writer|MockObject */
protected $writerMock;

/** @var \Magento\Framework\DB\Adapter\AdapterInterface|\PHPUnit_Framework_MockObject_MockObject */
/** @var AdapterInterface|MockObject */
protected $adapterMock;

/** @var \Magento\Framework\App\ResourceConnection|\PHPUnit_Framework_MockObject_MockObject */
/** @var ResourceConnection|MockObject */
protected $resourceMock;

/** @var \Magento\Framework\DB\Select|\PHPUnit_Framework_MockObject_MockObject */
/** @var Select|MockObject */
protected $selectMock;

/** @var \Magento\Framework\Model\ResourceModel\Db\TransactionManagerInterface */
/** @var TransactionManagerInterface */
protected $transactionMock;

/** @var |\PHPUnit_Framework_MockObject_MockObject */
/** @var MockObject */
protected $objRelationMock;

/** @var \Magento\Framework\Math\Random|\PHPUnit_Framework_MockObject_MockObject */
/** @var Random|MockObject */
protected $randomMock;

/** @var \Magento\EncryptionKey\Model\ResourceModel\Key\Change */
/** @var Change */
protected $model;

protected function setUp()
protected function setUp(): void
{
$this->encryptMock = $this->getMockBuilder(\Magento\Framework\Encryption\EncryptorInterface::class)
$this->encryptMock = $this->getMockBuilder(EncryptorInterface::class)
->disableOriginalConstructor()
->setMethods(['setNewKey', 'exportKeys'])
->getMockForAbstractClass();
$this->filesystemMock = $this->getMockBuilder(\Magento\Framework\Filesystem::class)
$this->filesystemMock = $this->getMockBuilder(Filesystem::class)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$this->structureMock = $this->getMockBuilder(\Magento\Config\Model\Config\Structure::class)
$this->structureMock = $this->getMockBuilder(Structure::class)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$this->writerMock = $this->getMockBuilder(\Magento\Framework\App\DeploymentConfig\Writer::class)
$this->writerMock = $this->getMockBuilder(Writer::class)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$this->adapterMock = $this->getMockBuilder(\Magento\Framework\DB\Adapter\AdapterInterface::class)
$this->adapterMock = $this->getMockBuilder(AdapterInterface::class)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$this->resourceMock = $this->getMockBuilder(\Magento\Framework\App\ResourceConnection::class)
$this->resourceMock = $this->getMockBuilder(ResourceConnection::class)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$this->selectMock = $this->getMockBuilder(\Magento\Framework\DB\Select::class)
$this->selectMock = $this->getMockBuilder(Select::class)
->disableOriginalConstructor()
->setMethods(['from', 'where', 'update'])
->getMock();
$translationClassName = \Magento\Framework\Model\ResourceModel\Db\TransactionManagerInterface::class;
$translationClassName = TransactionManagerInterface::class;
$this->transactionMock = $this->getMockBuilder($translationClassName)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$relationClassName = \Magento\Framework\Model\ResourceModel\Db\ObjectRelationProcessor::class;
$relationClassName = ObjectRelationProcessor::class;
$this->objRelationMock = $this->getMockBuilder($relationClassName)
->disableOriginalConstructor()
->setMethods([])
->getMock();
$this->randomMock = $this->createMock(\Magento\Framework\Math\Random::class);
$this->randomMock = $this->createMock(Random::class);

$helper = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
$helper = new ObjectManager($this);

$this->model = $helper->getObject(
\Magento\EncryptionKey\Model\ResourceModel\Key\Change::class,
Change::class,
[
'filesystem' => $this->filesystemMock,
'structure' => $this->structureMock,
Expand Down Expand Up @@ -141,7 +156,7 @@ public function testChangeEncryptionKeyAutogenerate()
{
$this->setUpChangeEncryptionKey();
$this->randomMock->expects($this->once())->method('getRandomString')->willReturn('abc');
$this->assertEquals(md5('abc'), $this->model->changeEncryptionKey());
$this->assertEquals(hash('md5', 'abc'), $this->model->changeEncryptionKey());
}

public function testChangeEncryptionKeyThrowsException()
Expand Down

0 comments on commit 50b15fd

Please sign in to comment.