本文整理汇总了PHP中Magento\Framework\Exception\InputException::getParameters方法的典型用法代码示例。如果您正苦于以下问题:PHP InputException::getParameters方法的具体用法?PHP InputException::getParameters怎么用?PHP InputException::getParameters使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Magento\Framework\Exception\InputException
的用法示例。
在下文中一共展示了InputException::getParameters方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testCreateCustomerWithErrors
public function testCreateCustomerWithErrors()
{
$serviceInfo = ['rest' => ['resourcePath' => self::RESOURCE_PATH, 'httpMethod' => \Magento\Framework\Webapi\Rest\Request::HTTP_METHOD_POST], 'soap' => ['service' => self::SERVICE_NAME, 'serviceVersion' => self::SERVICE_VERSION, 'operation' => self::SERVICE_NAME . 'CreateAccount']];
$customerDataArray = $this->dataObjectProcessor->buildOutputDataArray($this->customerHelper->createSampleCustomerDataObject(), '\\Magento\\Customer\\Api\\Data\\CustomerInterface');
$invalidEmail = 'invalid';
$customerDataArray['email'] = $invalidEmail;
$requestData = ['customer' => $customerDataArray, 'password' => CustomerHelper::PASSWORD];
try {
$this->_webApiCall($serviceInfo, $requestData);
$this->fail('Expected exception did not occur.');
} catch (\Exception $e) {
if (TESTS_WEB_API_ADAPTER == self::ADAPTER_SOAP) {
$expectedException = new InputException();
$expectedException->addError(__(InputException::INVALID_FIELD_VALUE, ['fieldName' => 'email', 'value' => $invalidEmail]));
$this->assertInstanceOf('SoapFault', $e);
$this->checkSoapFault($e, $expectedException->getRawMessage(), 'env:Sender', $expectedException->getParameters());
} else {
$this->assertEquals(HTTPExceptionCodes::HTTP_BAD_REQUEST, $e->getCode());
$exceptionData = $this->processRestExceptionResult($e);
$expectedExceptionData = ['message' => InputException::INVALID_FIELD_VALUE, 'parameters' => ['fieldName' => 'email', 'value' => $invalidEmail]];
$this->assertEquals($expectedExceptionData, $exceptionData);
}
}
}
示例2: testCreateCustomerWithoutAddressRequiresException
/**
* Test creating a customer with absent required address fields
*/
public function testCreateCustomerWithoutAddressRequiresException()
{
$customerDataArray = $this->dataObjectProcessor->buildOutputDataArray($this->customerHelper->createSampleCustomerDataObject(), '\\Magento\\Customer\\Api\\Data\\CustomerInterface');
foreach ($customerDataArray[Customer::KEY_ADDRESSES] as &$address) {
$address[Address::FIRSTNAME] = null;
}
$serviceInfo = ['rest' => ['resourcePath' => self::RESOURCE_PATH, 'httpMethod' => \Magento\Framework\Webapi\Rest\Request::HTTP_METHOD_POST], 'soap' => ['service' => self::SERVICE_NAME, 'serviceVersion' => self::SERVICE_VERSION, 'operation' => self::SERVICE_NAME . 'Save']];
$requestData = ['customer' => $customerDataArray];
try {
$this->_webApiCall($serviceInfo, $requestData);
$this->fail('Expected exception did not occur.');
} catch (\Exception $e) {
if (TESTS_WEB_API_ADAPTER == self::ADAPTER_SOAP) {
$expectedException = new InputException();
$expectedException->addError(__('%fieldName is a required field.', ['fieldName' => Address::FIRSTNAME]));
$this->assertInstanceOf('SoapFault', $e);
$this->checkSoapFault($e, $expectedException->getRawMessage(), 'env:Sender', $expectedException->getParameters());
} else {
$this->assertEquals(HTTPExceptionCodes::HTTP_BAD_REQUEST, $e->getCode());
$exceptionData = $this->processRestExceptionResult($e);
$expectedExceptionData = ['message' => '%fieldName is a required field.', 'parameters' => ['fieldName' => Address::FIRSTNAME]];
$this->assertEquals($expectedExceptionData, $exceptionData);
}
}
try {
$this->customerRegistry->retrieveByEmail($customerDataArray[Customer::EMAIL], $customerDataArray[Customer::WEBSITE_ID]);
$this->fail('An expected NoSuchEntityException was not thrown.');
} catch (NoSuchEntityException $e) {
$exception = NoSuchEntityException::doubleField('email', $customerDataArray[Customer::EMAIL], 'websiteId', $customerDataArray[Customer::WEBSITE_ID]);
$this->assertEquals($exception->getMessage(), $e->getMessage(), 'Exception message does not match expected message.');
}
}