/**
  * _getRequestProxy
  *
  * @param string $parameters 
  * @param string $options 
  * @return void
  */
 protected function _getRequestProxy($parameters, $options = array())
 {
     $cakeRequest = new CakeRequest();
     $request =& new OauthLibAppController($cakeRequest);
     $request->request->data = $parameters;
     $request->request->params['url'] = array('url' => '/', 'ext' => 'html');
     $_ENV['CONTENT_TYPE'] = 'application/x-www-form-urlencoded';
     $_ENV['Authorization'] = null;
     return RequestFactory::proxy($request, $options);
 }
Esempio n. 2
0
 /**
  * testThatProxyPostAndGetRequestWorks
  *
  * @return void
  */
 public function testThatProxyPostAndGetRequestWorks()
 {
     $http = null;
     $request =& new ClientHttp($http, '/test?key=value', array(), 'POST');
     $params = array('key2' => 'value2');
     $requestProxy = RequestFactory::proxy($request, array('uri' => 'http://example.com/test?key=value', 'parameters' => $params));
     $expectedParameters = array('key' => array('value'), 'key2' => array('value2'));
     $this->assertEqual($expectedParameters, $requestProxy->parameters());
     $this->assertEqual('http://example.com/test', $requestProxy->uri());
     $this->assertEqual('POST', $requestProxy->method());
 }
Esempio n. 3
0
 /**
  * Factory build method for signature 
  *
  * @param Request $request
  * @param array $options
  */
 public function build($request, $options = array())
 {
     $_this = Signature::getInstance();
     $request = RequestFactory::proxy($request, $options);
     $signatureMethod = $request->signatureMethod();
     if (isset($_this->availableMethods[$signatureMethod])) {
         $class = $_this->availableMethods[$signatureMethod];
     } else {
         throw new Exception("UnknownSignatureMethod {$signatureMethod}");
     }
     return new $class($request, $options);
 }
Esempio n. 4
0
 /**
  * Oauth request parameters
  *
  * @return boolean
  */
 public function oauthParameters()
 {
     $proxy = RequestFactory::proxy($this->Controller);
     return $proxy->parameters();
 }
Esempio n. 5
0
 /**
  * testThatProxyPostRequestWorksWithMixedParamSources
  *
  * @return void
  */
 public function testThatProxyPostRequestWorksWithMixedParamSources()
 {
     $request = $this->__HttpObject('/test?key=value', 'POST');
     $request->setFormData(array('key2' => array('value2')));
     $requestProxy = RequestFactory::proxy($request, array('uri' => 'http://example.com/test?key=value', 'parameters' => array('key3' => array('value3'))));
     $expected = array('key' => array('value'), 'key2' => array('value2'), 'key3' => array('value3'));
     $this->assertEqual($expected, $requestProxy->parametersForSignature());
     $this->assertEqual('http://example.com/test', $requestProxy->normalizedUri());
     $this->assertEqual('POST', $requestProxy->method());
 }
Esempio n. 6
0
 /**
  * Return mocked request object
  *
  * @param string $params 
  * @param string $method 
  * @param string $uri 
  * @return Request Object
  */
 public function request($params = array(), $method = 'GET', $uri = "http://photos.example.net/photos")
 {
     App::uses('RequestFactory', 'OauthLib.Lib');
     return RequestFactory::proxy(new MockObject(array('parameters' => $params, 'method' => $method, 'uri' => $uri)));
 }
Esempio n. 7
0
 /**
  * Get request parameters
  *
  * @return array
  */
 public function parameters()
 {
     $proxy = RequestFactory::proxy($this->request);
     return $proxy->parameters();
 }