5
5
*/
6
6
namespace Magento \CurrencySymbol \Test \Unit \Controller \Adminhtml \System \Currencysymbol ;
7
7
8
+ use Magento \Backend \Helper \Data ;
9
+ use Magento \Backend \Model \View \Result \Redirect ;
10
+ use Magento \Backend \Model \View \Result \RedirectFactory ;
11
+ use Magento \CurrencySymbol \Controller \Adminhtml \System \Currencysymbol \Save ;
12
+ use Magento \CurrencySymbol \Model \System \Currencysymbol ;
13
+ use Magento \Framework \App \RequestInterface ;
14
+ use Magento \Framework \App \Response \RedirectInterface ;
15
+ use Magento \Framework \App \ResponseInterface ;
16
+ use Magento \Framework \Filter \FilterManager ;
17
+ use Magento \Framework \Message \ManagerInterface ;
18
+ use Magento \Framework \ObjectManagerInterface ;
8
19
use Magento \Framework \TestFramework \Unit \Helper \ObjectManager ;
20
+ use PHPUnit \Framework \TestCase ;
21
+ use PHPUnit \Framework \MockObject \MockObject ;
9
22
10
23
/**
11
24
* Class SaveTest
12
25
*/
13
- class SaveTest extends \ PHPUnit \ Framework \ TestCase
26
+ class SaveTest extends TestCase
14
27
{
15
28
/**
16
- * @var \Magento\CurrencySymbol\Controller\Adminhtml\System\Currencysymbol\ Save
29
+ * @var Save
17
30
*/
18
31
protected $ action ;
19
32
20
33
/**
21
- * @var \Magento\Framework\App\RequestInterface|\PHPUnit_Framework_MockObject_MockObject
34
+ * @var RedirectFactory|MockObject
35
+ */
36
+ private $ resultRedirectFactory ;
37
+
38
+ /**
39
+ * @var RequestInterface|MockObject
22
40
*/
23
41
protected $ requestMock ;
24
42
25
43
/**
26
- * @var \Magento\Framework\App\ ResponseInterface|\PHPUnit_Framework_MockObject_MockObject
44
+ * @var ResponseInterface|MockObject
27
45
*/
28
46
protected $ responseMock ;
29
47
30
48
/**
31
- * @var \Magento\Framework\ ObjectManagerInterface|\PHPUnit_Framework_MockObject_MockObject
49
+ * @var ObjectManagerInterface|MockObject
32
50
*/
33
51
protected $ objectManagerMock ;
34
52
35
53
/**
36
- * @var \Magento\CurrencySymbol\Model\System\ Currencysymbol|\PHPUnit_Framework_MockObject_MockObject
54
+ * @var Currencysymbol|MockObject
37
55
*/
38
56
protected $ currencySymbolMock ;
39
57
40
58
/**
41
- * @var \Magento\Framework\Message\ ManagerInterface|\PHPUnit_Framework_MockObject_MockObject
59
+ * @var ManagerInterface|MockObject
42
60
*/
43
61
protected $ messageManagerMock ;
44
62
45
63
/**
46
- * @var \Magento\Framework\App\Response\ RedirectInterface|\PHPUnit_Framework_MockObject_MockObject
64
+ * @var RedirectInterface|MockObject
47
65
*/
48
66
protected $ redirectMock ;
49
67
50
68
/**
51
- * @var \Magento\Backend\Helper\ Data|\PHPUnit_Framework_MockObject_MockObject
69
+ * @var Data|MockObject
52
70
*/
53
71
protected $ helperMock ;
54
72
55
73
/**
56
- * @var \Magento\Framework\Filter\ FilterManager|\PHPUnit_Framework_MockObject_MockObject
74
+ * @var FilterManager|MockObject
57
75
*/
58
76
protected $ filterManagerMock ;
59
77
78
+ /**
79
+ * @inheritdoc
80
+ */
60
81
protected function setUp ()
61
82
{
62
83
$ objectManager = new ObjectManager ($ this );
63
-
64
- $ this ->requestMock = $ this ->createMock (\Magento \Framework \App \RequestInterface::class);
65
-
66
- $ this ->helperMock = $ this ->createMock (\Magento \Backend \Helper \Data::class);
67
-
68
- $ this ->redirectMock = $ this ->createMock (\Magento \Framework \App \Response \RedirectInterface::class);
69
-
84
+ $ this ->requestMock = $ this ->createMock (RequestInterface::class);
85
+ $ this ->helperMock = $ this ->createMock (Data::class);
86
+ $ this ->redirectMock = $ this ->createMock (RedirectInterface::class);
70
87
$ this ->responseMock = $ this ->createPartialMock (
71
- \ Magento \ Framework \ App \ ResponseInterface::class,
88
+ ResponseInterface::class,
72
89
['setRedirect ' , 'sendResponse ' ]
73
90
);
74
-
75
- $ this ->currencySymbolMock = $ this ->createMock (\Magento \CurrencySymbol \Model \System \Currencysymbol::class);
76
-
91
+ $ this ->currencySymbolMock = $ this ->createMock (Currencysymbol::class);
77
92
$ this ->filterManagerMock = $ this ->createPartialMock (
78
- \ Magento \ Framework \ Filter \ FilterManager::class,
93
+ FilterManager::class,
79
94
['stripTags ' ]
80
95
);
96
+ $ this ->objectManagerMock = $ this ->createMock (ObjectManagerInterface::class);
97
+ $ this ->messageManagerMock = $ this ->createMock (ManagerInterface::class);
98
+ $ this ->resultRedirectFactory = $ this ->createMock (RedirectFactory::class);
81
99
82
- $ this ->objectManagerMock = $ this ->createMock (\Magento \Framework \ObjectManagerInterface::class);
83
-
84
- $ this ->messageManagerMock = $ this ->createMock (\Magento \Framework \Message \ManagerInterface::class);
85
100
$ this ->action = $ objectManager ->getObject (
86
- \ Magento \ CurrencySymbol \ Controller \ Adminhtml \ System \ Currencysymbol \ Save::class,
101
+ Save::class,
87
102
[
88
103
'request ' => $ this ->requestMock ,
89
104
'response ' => $ this ->responseMock ,
90
105
'objectManager ' => $ this ->objectManagerMock ,
91
106
'redirect ' => $ this ->redirectMock ,
92
107
'helper ' => $ this ->helperMock ,
93
- 'messageManager ' => $ this ->messageManagerMock
108
+ 'messageManager ' => $ this ->messageManagerMock ,
109
+ 'resultRedirectFactory ' => $ this ->resultRedirectFactory ,
94
110
]
95
111
);
96
112
}
97
113
114
+ /**
115
+ * Test to Save custom Currency symbol
116
+ */
98
117
public function testExecute ()
99
118
{
100
119
$ firstElement = 'firstElement ' ;
101
120
$ symbolsDataArray = [$ firstElement ];
102
- $ redirectUrl = 'redirectUrl ' ;
103
121
104
122
$ this ->requestMock ->expects ($ this ->once ())
105
123
->method ('getParam ' )
106
124
->with ('custom_currency_symbol ' )
107
125
->willReturn ($ symbolsDataArray );
108
126
109
- $ this ->helperMock ->expects ($ this ->once ())->method ('getUrl ' )->with ('* ' );
110
- $ this ->redirectMock ->expects ($ this ->once ())->method ('getRedirectUrl ' )->willReturn ($ redirectUrl );
111
-
112
127
$ this ->currencySymbolMock ->expects ($ this ->once ())->method ('setCurrencySymbolsData ' )->with ($ symbolsDataArray );
113
- $ this ->responseMock ->expects ($ this ->once ())->method ('setRedirect ' );
114
128
115
129
$ this ->filterManagerMock ->expects ($ this ->once ())
116
130
->method ('stripTags ' )
@@ -119,18 +133,22 @@ public function testExecute()
119
133
120
134
$ this ->objectManagerMock ->expects ($ this ->once ())
121
135
->method ('create ' )
122
- ->with (\ Magento \ CurrencySymbol \ Model \ System \ Currencysymbol::class)
136
+ ->with (Currencysymbol::class)
123
137
->willReturn ($ this ->currencySymbolMock );
124
138
125
139
$ this ->objectManagerMock ->expects ($ this ->once ())
126
140
->method ('get ' )
127
- ->with (\ Magento \ Framework \ Filter \ FilterManager::class)
141
+ ->with (FilterManager::class)
128
142
->willReturn ($ this ->filterManagerMock );
129
143
130
144
$ this ->messageManagerMock ->expects ($ this ->once ())
131
145
->method ('addSuccessMessage ' )
132
146
->with (__ ('You applied the custom currency symbols. ' ));
133
147
134
- $ this ->action ->execute ();
148
+ $ redirect = $ this ->createMock (Redirect::class);
149
+ $ redirect ->expects ($ this ->once ())->method ('setPath ' )->with ('* ' )->willReturnSelf ();
150
+ $ this ->resultRedirectFactory ->method ('create ' )->willReturn ($ redirect );
151
+
152
+ $ this ->assertEquals ($ redirect , $ this ->action ->execute ());
135
153
}
136
154
}
0 commit comments