Skip to content

Commit 9e7ca59

Browse files
committed
Added Unit test coverage for delete sitemap
1 parent eb6bd7e commit 9e7ca59

File tree

1 file changed

+160
-0
lines changed
  • app/code/Magento/Sitemap/Test/Unit/Controller/Adminhtml/Sitemap

1 file changed

+160
-0
lines changed
Lines changed: 160 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,160 @@
1+
<?php
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
declare(strict_types=1);
7+
8+
namespace Magento\Sitemap\Test\Unit\Controller\Adminhtml\Sitemap;
9+
10+
use Magento\Backend\App\Action\Context;
11+
use Magento\Backend\Helper\Data;
12+
use Magento\Backend\Model\Session;
13+
use Magento\Backend\Model\View\Result\Redirect;
14+
use Magento\Framework\App\ActionFlag;
15+
use Magento\Framework\App\RequestInterface;
16+
use Magento\Framework\App\ResponseInterface;
17+
use Magento\Framework\Controller\ResultFactory;
18+
use Magento\Framework\Filesystem;
19+
use Magento\Framework\HTTP\PhpEnvironment\Request;
20+
use Magento\Framework\Message\ManagerInterface;
21+
use Magento\Framework\ObjectManagerInterface;
22+
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
23+
use Magento\Sitemap\Controller\Adminhtml\Sitemap\Delete;
24+
use Magento\Sitemap\Model\SitemapFactory;
25+
use PHPUnit\Framework\TestCase;
26+
27+
class DeleteTest extends TestCase
28+
{
29+
/**
30+
* @var Context
31+
*/
32+
private $contextMock;
33+
34+
/**
35+
* @var Request
36+
*/
37+
private $requestMock;
38+
39+
/**
40+
* @var ObjectManagerInterface
41+
*/
42+
private $objectManagerMock;
43+
44+
/**
45+
* @var ManagerInterface
46+
*/
47+
private $messageManagerMock;
48+
49+
/**
50+
* @var Filesystem
51+
*/
52+
private $fileSystem;
53+
54+
/**
55+
* @var SitemapFactory
56+
*/
57+
private $siteMapFactory;
58+
59+
/**
60+
* @var Delete
61+
*/
62+
private $deleteController;
63+
64+
/**
65+
* @var Session
66+
*/
67+
private $sessionMock;
68+
69+
/**
70+
* @var ActionFlag
71+
*/
72+
private $actionFlag;
73+
74+
/**
75+
* @var ObjectManager
76+
*/
77+
private $objectManager;
78+
79+
/**
80+
* @var ResponseInterface
81+
*/
82+
private $response;
83+
84+
/**
85+
* @var Data
86+
*/
87+
private $helperMock;
88+
89+
protected function setUp(): void
90+
{
91+
$this->contextMock = $this->getMockBuilder(Context::class)
92+
->disableOriginalConstructor()
93+
->getMock();
94+
$this->requestMock = $this->getMockBuilder(RequestInterface::class)
95+
->disableOriginalConstructor()
96+
->setMethods(['getParam'])
97+
->getMockForAbstractClass();
98+
$this->sessionMock = $this->getMockBuilder(Session::class)
99+
->disableOriginalConstructor()
100+
->addMethods(['setIsUrlNotice'])
101+
->getMock();
102+
$this->response = $this->getMockBuilder(ResponseInterface::class)
103+
->addMethods(['setRedirect'])
104+
->onlyMethods(['sendResponse'])
105+
->getMockForAbstractClass();
106+
$this->response->expects($this->once())->method('setRedirect');
107+
$this->sessionMock->expects($this->any())->method('setIsUrlNotice')->willReturn($this->objectManager);
108+
$this->actionFlag = $this->createPartialMock(ActionFlag::class, ['get']);
109+
$this->actionFlag->expects($this->any())->method("get")->willReturn($this->objectManager);
110+
$this->objectManager = $this->getMockBuilder(ObjectManager::class)
111+
->addMethods(['get'])
112+
->disableOriginalConstructor()
113+
->getMock();
114+
$this->objectManagerMock = $this->getMockBuilder(ObjectManagerInterface::class)
115+
->getMock();
116+
$this->messageManagerMock = $this->getMockBuilder(ManagerInterface::class)
117+
->getMock();
118+
$this->helperMock = $this->getMockBuilder(Data::class)
119+
->disableOriginalConstructor()
120+
->onlyMethods(['getUrl'])
121+
->getMock();
122+
$this->helperMock->expects($this->any())
123+
->method('getUrl')
124+
->willReturn('adminhtml/*/');
125+
$this->contextMock->expects($this->any())
126+
->method('getSession')
127+
->willReturn($this->sessionMock);
128+
$this->contextMock->expects($this->once())
129+
->method('getMessageManager')
130+
->willReturn($this->messageManagerMock);
131+
$this->contextMock->expects($this->once())
132+
->method('getRequest')
133+
->willReturn($this->requestMock);
134+
$this->contextMock->expects($this->once())
135+
->method('getResponse')
136+
->willReturn($this->response);
137+
$this->contextMock->expects($this->any())
138+
->method('getHelper')
139+
->willReturn($this->helperMock);
140+
$this->contextMock->expects($this->any())->method("getActionFlag")->willReturn($this->actionFlag);
141+
$this->fileSystem = $this->createMock(Filesystem::class);
142+
$this->siteMapFactory = $this->createMock(SitemapFactory::class);
143+
$this->deleteController = new Delete(
144+
$this->contextMock,
145+
$this->siteMapFactory,
146+
$this->fileSystem
147+
);
148+
}
149+
150+
public function testDelete()
151+
{
152+
$this->requestMock->expects($this->once())
153+
->method('getParam')
154+
->willReturn(null);
155+
156+
$this->messageManagerMock->expects($this->never())
157+
->method('addSuccessMessage');
158+
$this->deleteController->execute();
159+
}
160+
}

0 commit comments

Comments
 (0)