forked from LiveCarta/PayPal-PHP-SDK
Stop auto-generating PayPal-Request-Id
- Allow manual setting of PayPal-Request-Id
This commit is contained in:
@@ -85,11 +85,17 @@ class ApiContext
|
||||
*/
|
||||
public function getRequestId()
|
||||
{
|
||||
if ($this->requestId == null) {
|
||||
$this->requestId = $this->generateRequestId();
|
||||
return $this->requestId;
|
||||
}
|
||||
|
||||
return $this->requestId;
|
||||
/**
|
||||
* Sets the request ID
|
||||
*
|
||||
* @param string $requestId the PayPal-Request-Id value to use
|
||||
*/
|
||||
public function setRequestId($requestId)
|
||||
{
|
||||
$this->requestId = $requestId;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -22,13 +22,27 @@ class ApiContextTest extends PHPUnit_Framework_TestCase
|
||||
public function testGetRequestId()
|
||||
{
|
||||
$requestId = $this->apiContext->getRequestId();
|
||||
$this->assertNotNull($requestId);
|
||||
$this->assertEquals($requestId, $this->apiContext->getRequestId());
|
||||
$this->assertNull($requestId);
|
||||
}
|
||||
|
||||
public function testSetRequestId()
|
||||
{
|
||||
$this->assertNull($this->apiContext->getRequestId());
|
||||
|
||||
$expectedRequestId = 'random-value';
|
||||
$this->apiContext->setRequestId($expectedRequestId);
|
||||
$requestId = $this->apiContext->getRequestId();
|
||||
$this->assertEquals($expectedRequestId, $requestId);
|
||||
}
|
||||
|
||||
public function testResetRequestId()
|
||||
{
|
||||
$requestId = $this->apiContext->getRequestId();
|
||||
$this->assertNull($this->apiContext->getRequestId());
|
||||
|
||||
$requestId = $this->apiContext->resetRequestId();
|
||||
$this->assertNotNull($requestId);
|
||||
|
||||
// Tests that another resetRequestId call will generate a new ID
|
||||
$newRequestId = $this->apiContext->resetRequestId();
|
||||
$this->assertNotNull($newRequestId);
|
||||
$this->assertNotEquals($newRequestId, $requestId);
|
||||
|
||||
Reference in New Issue
Block a user