Initial commit

This commit is contained in:
Adrian Palmer
2014-08-27 17:45:39 +10:00
commit a0f24861fe
10 changed files with 232 additions and 0 deletions

View File

@@ -0,0 +1,53 @@
<?php
namespace HttpSignatures\Test;
use HttpSignatures\Guzzle\CreateRequestSubscriber;
use HttpSignatures\Context;
use HttpSignatures\Guzzle\Message;
class GuzzleSignerTest extends \PHPUnit_Framework_TestCase
{
public function setUp()
{
$this->context = new Context(array(
'keys' => array('pda' => 'secret'),
'algorithm' => 'hmac-sha256',
'headers' => array('(request-target)', 'date'),
));
$this->client = new \Guzzle\Http\Client();
$this->client->addSubscriber(new CreateRequestSubscriber($this->context));
}
public function testGuzzleRequestHasExpectedHeaders()
{
$message = $this->client->get('/path?query=123', array('date' => 'today', 'accept' => 'llamas'));
$expectedString = implode(
',',
array(
'keyId="pda"',
'algorithm="hmac-sha256"',
'headers="(request-target) date"',
'signature="SFlytCGpsqb/9qYaKCQklGDvwgmrwfIERFnwt+yqPJw="',
)
);
$this->assertEquals(
$expectedString,
(string) $message->getHeader('Signature')
);
$this->assertEquals(
'Signature ' . $expectedString,
(string) $message->getHeader('Authorization')
);
}
public function testVerifyGuzzleRequest()
{
$message = $this->client->get('/path?query=123', array('date' => 'today', 'accept' => 'dogs'));
$this->assertTrue($this->context->verifier()->isValid(new Message($message)));
}
}

3
tests/bootstrap.php Normal file
View File

@@ -0,0 +1,3 @@
<?php
error_reporting(E_ALL);
require(__DIR__ . '/../vendor/autoload.php');