$this->assertEquals($request->getQueryParameters(),$dup->getQueryParameters(),'->duplicate() duplicates a request an copy the current query parameters');
$this->assertEquals($request->getRequestParameters(),$dup->getRequestParameters(),'->duplicate() duplicates a request an copy the current request parameters');
$this->assertEquals($request->getPathParameters(),$dup->getPathParameters(),'->duplicate() duplicates a request an copy the current path parameters');
$this->assertEquals($request->getHttpHeader('foo'),$dup->getHttpHeader('foo'),'->duplicate() duplicates a request an copy the current HTTP headers');
$this->assertEquals(null,$request->getFormat(null),'->getFormat() returns null when mime-type is null');
$this->assertEquals(null,$request->getFormat('unexistant-mime-type'),'->getFormat() returns null when mime-type is unknown');
$this->assertEquals('txt',$request->getFormat('text/plain'),'->getFormat() returns correct format when mime-type have one format only');
$this->assertEquals('js',$request->getFormat('application/javascript'),'->getFormat() returns correct format when format have multiple mime-type (first)');
$this->assertEquals('js',$request->getFormat('application/x-javascript'),'->getFormat() returns correct format when format have multiple mime-type');
$this->assertEquals('js',$request->getFormat('text/javascript'),'->getFormat() returns correct format when format have multiple mime-type (last)');