Subversion Repositories php_guestbook

Rev

Blame | Last modification | View Log | RSS feed

  1. <?php
  2. /**
  3.  * This is a PHP library that handles calling reCAPTCHA.
  4.  *
  5.  * @copyright Copyright (c) 2015, Google Inc.
  6.  * @link      http://www.google.com/recaptcha
  7.  *
  8.  * Permission is hereby granted, free of charge, to any person obtaining a copy
  9.  * of this software and associated documentation files (the "Software"), to deal
  10.  * in the Software without restriction, including without limitation the rights
  11.  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  12.  * copies of the Software, and to permit persons to whom the Software is
  13.  * furnished to do so, subject to the following conditions:
  14.  *
  15.  * The above copyright notice and this permission notice shall be included in
  16.  * all copies or substantial portions of the Software.
  17.  *
  18.  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  19.  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  20.  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  21.  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  22.  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  23.  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  24.  * THE SOFTWARE.
  25.  */
  26.  
  27. namespace ReCaptcha;
  28.  
  29. class RequestParametersTest extends \PHPUnit_Framework_TestCase
  30. {
  31.  
  32.     public function provideValidData()
  33.     {
  34.         return array(
  35.             array('SECRET', 'RESPONSE', 'REMOTEIP', 'VERSION',
  36.                 array('secret' => 'SECRET', 'response' => 'RESPONSE', 'remoteip' => 'REMOTEIP', 'version' => 'VERSION'),
  37.                 'secret=SECRET&response=RESPONSE&remoteip=REMOTEIP&version=VERSION'),
  38.             array('SECRET', 'RESPONSE', null, null,
  39.                 array('secret' => 'SECRET', 'response' => 'RESPONSE'),
  40.                 'secret=SECRET&response=RESPONSE'),
  41.         );
  42.     }
  43.  
  44.     /**
  45.      * @dataProvider provideValidData
  46.      */
  47.     public function testToArray($secret, $response, $remoteIp, $version, $expectedArray, $expectedQuery)
  48.     {
  49.         $params = new RequestParameters($secret, $response, $remoteIp, $version);
  50.         $this->assertEquals($params->toArray(), $expectedArray);
  51.     }
  52.  
  53.     /**
  54.      * @dataProvider provideValidData
  55.      */
  56.     public function testToQueryString($secret, $response, $remoteIp, $version, $expectedArray, $expectedQuery)
  57.     {
  58.         $params = new RequestParameters($secret, $response, $remoteIp, $version);
  59.         $this->assertEquals($params->toQueryString(), $expectedQuery);
  60.     }
  61. }
  62.