mirror of
https://github.com/guzzle/guzzle.git
synced 2025-02-25 18:43:22 +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.
63 lines
1.5 KiB
PHP
63 lines
1.5 KiB
PHP
<?php
|
|
|
|
namespace Guzzle\Tests\Common;
|
|
|
|
use Guzzle\Common\Event;
|
|
|
|
class EventTest extends \Guzzle\Tests\GuzzleTestCase
|
|
{
|
|
/**
|
|
* @return Event
|
|
*/
|
|
private function getEvent()
|
|
{
|
|
return new Event(array(
|
|
'test' => '123',
|
|
'other' => '456',
|
|
'event' => 'test.notify'
|
|
));
|
|
}
|
|
|
|
/**
|
|
* @covers Guzzle\Common\Event::__construct
|
|
*/
|
|
public function testAllowsParameterInjection()
|
|
{
|
|
$event = new Event(array(
|
|
'test' => '123'
|
|
));
|
|
$this->assertEquals('123', $event['test']);
|
|
}
|
|
|
|
/**
|
|
* @covers Guzzle\Common\Event::offsetGet
|
|
* @covers Guzzle\Common\Event::offsetSet
|
|
* @covers Guzzle\Common\Event::offsetUnset
|
|
* @covers Guzzle\Common\Event::offsetExists
|
|
*/
|
|
public function testImplementsArrayAccess()
|
|
{
|
|
$event = $this->getEvent();
|
|
$this->assertEquals('123', $event['test']);
|
|
$this->assertNull($event['foobar']);
|
|
|
|
$this->assertTrue($event->offsetExists('test'));
|
|
$this->assertFalse($event->offsetExists('foobar'));
|
|
|
|
unset($event['test']);
|
|
$this->assertFalse($event->offsetExists('test'));
|
|
|
|
$event['test'] = 'new';
|
|
$this->assertEquals('new', $event['test']);
|
|
}
|
|
|
|
/**
|
|
* @covers Guzzle\Common\Event::getIterator
|
|
*/
|
|
public function testImplementsIteratorAggregate()
|
|
{
|
|
$event = $this->getEvent();
|
|
$this->assertInstanceOf('ArrayIterator', $event->getIterator());
|
|
}
|
|
}
|