Skip to content

Commit d031a92

Browse files
author
Stanislav Idolov
authored
🔃 [EngCom] Public Pull Requests - 2.1-develop
Accepted Public Pull Requests: - #16081: Adding support for variadic arguments fro method in generated proxy c� (by @vgelani) - #15862: [Backport] Move buttons definition to separate file (by @rahul-kachhadiya) - #16067: [Backport 2.1] Added unit test for captcha string resolver (by @rogyar)
2 parents 1d129d7 + 5a04131 commit d031a92

File tree

4 files changed

+88
-9
lines changed

4 files changed

+88
-9
lines changed
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
<?php
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
7+
namespace Magento\Captcha\Test\Unit\Observer;
8+
9+
use Magento\Captcha\Helper\Data as CaptchaDataHelper;
10+
use Magento\Captcha\Observer\CaptchaStringResolver;
11+
use Magento\Framework\App\Request\Http as HttpRequest;
12+
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
13+
14+
class CaptchaStringResolverTest extends \PHPUnit_Framework_TestCase
15+
{
16+
/**
17+
* @var ObjectManager
18+
*/
19+
private $objectManagerHelper;
20+
21+
/**
22+
* @var CaptchaStringResolver
23+
*/
24+
private $captchaStringResolver;
25+
26+
/**
27+
* @var HttpRequest|\PHPUnit_Framework_MockObject_MockObject
28+
*/
29+
private $requestMock;
30+
31+
protected function setUp()
32+
{
33+
$this->objectManagerHelper = new ObjectManager($this);
34+
$this->requestMock = $this->getMock(HttpRequest::class, [], [], '', false);
35+
$this->captchaStringResolver = $this->objectManagerHelper->getObject(CaptchaStringResolver::class);
36+
}
37+
38+
public function testResolveWithFormIdSet()
39+
{
40+
$formId = 'contact_us';
41+
$captchaValue = 'some-value';
42+
43+
$this->requestMock->expects($this->once())
44+
->method('getPost')
45+
->with(CaptchaDataHelper::INPUT_NAME_FIELD_VALUE)
46+
->willReturn([$formId => $captchaValue]);
47+
48+
self::assertEquals(
49+
$this->captchaStringResolver->resolve($this->requestMock, $formId),
50+
$captchaValue
51+
);
52+
}
53+
54+
public function testResolveWithNoFormIdInRequest()
55+
{
56+
$formId = 'contact_us';
57+
58+
$this->requestMock->expects($this->once())
59+
->method('getPost')
60+
->with(CaptchaDataHelper::INPUT_NAME_FIELD_VALUE)
61+
->willReturn([]);
62+
63+
self::assertEquals(
64+
$this->captchaStringResolver->resolve($this->requestMock, $formId),
65+
''
66+
);
67+
}
68+
}

app/code/Magento/Ui/view/base/web/js/form/adapter.js

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,12 @@
44
*/
55
define([
66
'jquery',
7-
'underscore'
8-
], function ($, _) {
7+
'underscore',
8+
'Magento_Ui/js/form/adapter/buttons'
9+
], function ($, _, buttons) {
910
'use strict';
1011

11-
var buttons = {
12-
'reset': '#reset',
13-
'save': '#save',
14-
'saveAndContinue': '#save_and_continue'
15-
},
16-
selectorPrefix = '',
12+
var selectorPrefix = '',
1713
eventPrefix;
1814

1915
/**
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/**
2+
* Copyright © Magento, Inc. All rights reserved.
3+
* See COPYING.txt for license details.
4+
*/
5+
6+
define(function () {
7+
'use strict';
8+
9+
return {
10+
'reset': '#reset',
11+
'save': '#save',
12+
'saveAndContinue': '#save_and_continue'
13+
};
14+
});

lib/internal/Magento/Framework/ObjectManager/Code/Generator/Proxy.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,8 @@ protected function _getMethodInfo(\ReflectionMethod $method)
155155
$parameterNames = [];
156156
$parameters = [];
157157
foreach ($method->getParameters() as $parameter) {
158-
$parameterNames[] = '$' . $parameter->getName();
158+
$name = $parameter->isVariadic() ? '... $' . $parameter->getName() : '$' . $parameter->getName();
159+
$parameterNames[] = $name;
159160
$parameters[] = $this->_getMethodParameterInfo($parameter);
160161
}
161162

0 commit comments

Comments
 (0)