mirror of
https://github.com/guzzle/guzzle.git
synced 2025-02-26 11:05:28 +01:00
1. Adopting a marker interface for Guzzle exceptions. A. All exceptions emitted from Guzzle are now wrapped with a Guzzle namespaced exception. B. Guzzle\Common\GuzzleExceptionInterface was renamed to Guzzle\Common\GuzzleException C. Guzzle\Common\ExceptionCollection was renamed to Guzzle\Common\Exception\ExceptionCollection 2. Using Header objects for Request and Response objects A. When you call $request->getHeader('X'), you will get back a Guzzle\Http\Message\Header object that contains all of the headers that case insensitively match. This object can be cast to a string or iterated like an array. You can pass true in the second argument to retrieve the header as a string. B. Removing the old Guzzle\Common\Collection based searching arguments from most of the request and response header methods. All retrievals are case-insensitive and return Header objects. 3. Changing the two headers added by the cache plugin to just one header with key and ttl. 4. Changing Guzzle\Http\Message\Response::factory() to fromMessage(). 5. Removing the NullObject return value from ServiceDescriptions and instead simply returning null New Features / enhancements: 1. Adding Guzzle\Http\Message\AbstractMessage::addHeaders() 2. Making it simpler to create service descriptions using a unified factory method that delegates to other factories. 3. Better handling of ports and hosts in Guzzle\Http\Url Note: This is a noisy diff because I'm removing trailing whitespace and adding a new line at the end of each source file.
35 lines
1.2 KiB
PHP
35 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace Guzzle\Tests\Http\Plugin;
|
|
|
|
use Guzzle\Http\Plugin\CurlAuthPlugin;
|
|
use Guzzle\Http\Client;
|
|
|
|
/**
|
|
* @covers Guzzle\Http\Plugin\CurlAuthPlugin
|
|
*/
|
|
class CurlAuthPluginTest extends \Guzzle\Tests\GuzzleTestCase
|
|
{
|
|
public function testAddsBasicAuthentication()
|
|
{
|
|
$plugin = new CurlAuthPlugin('michael', 'test');
|
|
$client = new Client('http://www.test.com/');
|
|
$client->getEventDispatcher()->addSubscriber($plugin);
|
|
$request = $client->get('/');
|
|
$this->assertEquals('michael', $request->getUsername());
|
|
$this->assertEquals('test', $request->getPassword());
|
|
}
|
|
|
|
public function testAddsDigestAuthentication()
|
|
{
|
|
$plugin = new CurlAuthPlugin('julian', 'test', CURLAUTH_DIGEST);
|
|
$client = new Client('http://www.test.com/');
|
|
$client->getEventDispatcher()->addSubscriber($plugin);
|
|
$request = $client->get('/');
|
|
$this->assertEquals('julian', $request->getUsername());
|
|
$this->assertEquals('test', $request->getPassword());
|
|
$this->assertEquals('julian:test', $request->getCurlOptions()->get(CURLOPT_USERPWD));
|
|
$this->assertEquals(CURLAUTH_DIGEST, $request->getCurlOptions()->get(CURLOPT_HTTPAUTH));
|
|
}
|
|
}
|