[ Index ]

PHP Cross Reference of Limb3

title

Body

[close]

/net/tests/cases/ -> lmbUploadedFilesParserTest.class.php (source)

   1  <?php
   2  /*
   3   * Limb PHP Framework
   4   *
   5   * @link http://limb-project.com 
   6   * @copyright  Copyright &copy; 2004-2007 BIT(http://bit-creative.com)
   7   * @license    LGPL http://www.gnu.org/copyleft/lesser.html 
   8   */
   9  lmb_require('limb/net/src/lmbUploadedFilesParser.class.php');
  10  
  11  class lmbUploadedFilesParserTest extends UnitTestCase
  12  {
  13    var $parser;
  14  
  15    function setUp()
  16    {
  17      $this->parser = new lmbUploadedFilesParser();
  18    }
  19  
  20    function testEmpty()
  21    {
  22       $result = $this->parser->parse(array());
  23       $this->assertEqual($result, array());
  24    }
  25  
  26    function testSimple()
  27    {
  28       $files = array(
  29          'file1' => array(
  30                           'name' => 'file',
  31                           'type' => 'file_type',
  32                           'tmp_name' => 'file_tmp_name',
  33                           'size' => 'file_size',
  34                           'error' => 'file_err_code'
  35                           ),
  36          'file2' => array(
  37                           'name' => 'file',
  38                           'type' => 'file_type',
  39                           'tmp_name' => 'file_tmp_name',
  40                           'size' => 'file_size',
  41                           'error' => 'file_err_code'
  42                           ),
  43       );
  44  
  45       $result = $this->parser->parse($files);
  46       $this->assertEqual($result, $files);
  47    }
  48  
  49    function testObjectifySimple()
  50    {
  51       $files = array(
  52          'file1' => array(
  53                           'name' => 'file',
  54                           'type' => 'file_type',
  55                           'tmp_name' => 'file_tmp_name',
  56                           'size' => 'file_size',
  57                           'error' => 'file_err_code'
  58                           ),
  59          'file2' => array(
  60                           'name' => 'file',
  61                           'type' => 'file_type',
  62                           'tmp_name' => 'file_tmp_name',
  63                           'size' => 'file_size',
  64                           'error' => 'file_err_code'
  65                           ),
  66       );
  67  
  68       $expected = array('file1' => new lmbUploadedFile($files['file1']),
  69                         'file2' => new lmbUploadedFile($files['file2']));
  70  
  71       $result = $this->parser->objectify($files);
  72       $this->assertEqual($result, $expected);
  73    }
  74  
  75    function testComplex()
  76    {
  77       $files = array(
  78          'form' => array(
  79             'name' => array(
  80                             'file1' => 'file',
  81                             'file2' => 'file',
  82                             ),
  83             'type' => array(
  84                             'file1' => 'file_type',
  85                             'file2' => 'file_type',
  86                             ),
  87             'tmp_name' => array(
  88                                 'file1' => 'file_tmp_name',
  89                                 'file2' => 'file_tmp_name',
  90                                 ),
  91             'size' => array(
  92                             'file1' => 'file_size',
  93                             'file2' => 'file_size',
  94                             ),
  95             'error' => array(
  96                             'file1' => 'file_err_code',
  97                             'file2' => 'file_err_code',
  98                             ),
  99           ),
 100       );
 101  
 102       $expected = array(
 103          'form' => array(
 104            'file1' => array(
 105               'name' => 'file',
 106               'type' => 'file_type',
 107               'tmp_name' => 'file_tmp_name',
 108               'size' => 'file_size',
 109               'error' => 'file_err_code'
 110             ),
 111            'file2' => array(
 112               'name' => 'file',
 113               'type' => 'file_type',
 114               'tmp_name' => 'file_tmp_name',
 115               'size' => 'file_size',
 116               'error' => 'file_err_code'
 117             ),
 118           ),
 119       );
 120  
 121       $result = $this->parser->parse($files);
 122       $this->assertEqual($result, $expected);
 123    }
 124  
 125    function testObjectifyComplex()
 126    {
 127       $files = array(
 128          'form' => array(
 129             'name' => array(
 130                             'file1' => 'file',
 131                             'file2' => 'file',
 132                             ),
 133             'type' => array(
 134                             'file1' => 'file_type',
 135                             'file2' => 'file_type',
 136                             ),
 137             'tmp_name' => array(
 138                                 'file1' => 'file_tmp_name',
 139                                 'file2' => 'file_tmp_name',
 140                                 ),
 141             'size' => array(
 142                             'file1' => 'file_size',
 143                             'file2' => 'file_size',
 144                             ),
 145             'error' => array(
 146                             'file1' => 'file_err_code',
 147                             'file2' => 'file_err_code',
 148                             ),
 149           ),
 150       );
 151  
 152       $expected = array(
 153          'form' => array(
 154            'file1' => new lmbUploadedFile(array(
 155               'name' => 'file',
 156               'type' => 'file_type',
 157               'tmp_name' => 'file_tmp_name',
 158               'size' => 'file_size',
 159               'error' => 'file_err_code'
 160             )),
 161            'file2' => new lmbUploadedFile(array(
 162               'name' => 'file',
 163               'type' => 'file_type',
 164               'tmp_name' => 'file_tmp_name',
 165               'size' => 'file_size',
 166               'error' => 'file_err_code'
 167             )),
 168           ),
 169       );
 170  
 171       $result = $this->parser->objectify($files);
 172       $this->assertEqual($result, $expected);
 173    }
 174  
 175    function testMegaComplex()
 176    {
 177       $files = array(
 178          'form' => array(
 179             'name' => array(
 180                             'file1' => array(
 181                                              '1' => 'file',
 182                                              '2' => 'file',
 183                                              ),
 184                             'file2' => 'file',
 185                             ),
 186             'type' => array(
 187                             'file1' => array(
 188                                              '1' => 'file_type',
 189                                              '2' => 'file_type',
 190                                              ),
 191                             'file2' => 'file_type',
 192                             ),
 193             'tmp_name' => array(
 194                                 'file1' => array(
 195                                              '1' => 'file_tmp_name',
 196                                              '2' => 'file_tmp_name',
 197                                              ),
 198                                 'file2' => 'file_tmp_name',
 199                                 ),
 200             'size' => array(
 201                             'file1' => array(
 202                                              '1' => 'file_size',
 203                                              '2' => 'file_size',
 204                                              ),
 205                             'file2' => 'file_size',
 206                             ),
 207             'error' => array(
 208                             'file1' => array(
 209                                              '1' => 'file_err_code',
 210                                              '2' => 'file_err_code',
 211                                              ),
 212                             'file2' => 'file_err_code',
 213                             ),
 214           ),
 215       );
 216  
 217       $expected = array(
 218          'form' => array(
 219            'file1' => array(
 220              '1' => array(
 221                 'name' => 'file',
 222                 'type' => 'file_type',
 223                 'tmp_name' => 'file_tmp_name',
 224                 'size' => 'file_size',
 225                 'error' => 'file_err_code'
 226               ),
 227              '2' => array(
 228                 'name' => 'file',
 229                 'type' => 'file_type',
 230                 'tmp_name' => 'file_tmp_name',
 231                 'size' => 'file_size',
 232                 'error' => 'file_err_code'
 233               ),
 234            ),
 235            'file2' => array(
 236               'name' => 'file',
 237               'type' => 'file_type',
 238               'tmp_name' => 'file_tmp_name',
 239               'size' => 'file_size',
 240               'error' => 'file_err_code'
 241             ),
 242           ),
 243       );
 244  
 245       $result = $this->parser->parse($files);
 246       $this->assertEqual($result, $expected);
 247    }
 248  
 249    function testObjectifyMegaComplex()
 250    {
 251       $files = array(
 252          'form' => array(
 253             'name' => array(
 254                             'file1' => array(
 255                                              '1' => 'file',
 256                                              '2' => 'file',
 257                                              ),
 258                             'file2' => 'file',
 259                             ),
 260             'type' => array(
 261                             'file1' => array(
 262                                              '1' => 'file_type',
 263                                              '2' => 'file_type',
 264                                              ),
 265                             'file2' => 'file_type',
 266                             ),
 267             'tmp_name' => array(
 268                                 'file1' => array(
 269                                              '1' => 'file_tmp_name',
 270                                              '2' => 'file_tmp_name',
 271                                              ),
 272                                 'file2' => 'file_tmp_name',
 273                                 ),
 274             'size' => array(
 275                             'file1' => array(
 276                                              '1' => 'file_size',
 277                                              '2' => 'file_size',
 278                                              ),
 279                             'file2' => 'file_size',
 280                             ),
 281             'error' => array(
 282                             'file1' => array(
 283                                              '1' => 'file_err_code',
 284                                              '2' => 'file_err_code',
 285                                              ),
 286                             'file2' => 'file_err_code',
 287                             ),
 288           ),
 289       );
 290  
 291       $expected = array(
 292          'form' => array(
 293            'file1' => array(
 294              '1' => new lmbUploadedFile(array(
 295                 'name' => 'file',
 296                 'type' => 'file_type',
 297                 'tmp_name' => 'file_tmp_name',
 298                 'size' => 'file_size',
 299                 'error' => 'file_err_code'
 300               )),
 301              '2' => new lmbUploadedFile(array(
 302                 'name' => 'file',
 303                 'type' => 'file_type',
 304                 'tmp_name' => 'file_tmp_name',
 305                 'size' => 'file_size',
 306                 'error' => 'file_err_code'
 307               )),
 308            ),
 309            'file2' => new lmbUploadedFile(array(
 310               'name' => 'file',
 311               'type' => 'file_type',
 312               'tmp_name' => 'file_tmp_name',
 313               'size' => 'file_size',
 314               'error' => 'file_err_code'
 315             )),
 316           ),
 317       );
 318  
 319       $result = $this->parser->objectify($files);
 320       $this->assertEqual($result, $expected);
 321    }
 322  
 323    function testMixed()
 324    {
 325       $files = array(
 326          'file1' => array(
 327                           'name' => 'file',
 328                           'type' => 'file_type',
 329                           'tmp_name' => 'file_tmp_name',
 330                           'size' => 'file_size',
 331                           'error' => 'file_err_code'
 332                           ),
 333          'form' => array(
 334             'name' => array(
 335                             'file1' => 'file',
 336                             'file2' => 'file',
 337                             ),
 338             'type' => array(
 339                             'file1' => 'file_type',
 340                             'file2' => 'file_type',
 341                             ),
 342             'tmp_name' => array(
 343                                 'file1' => 'file_tmp_name',
 344                                 'file2' => 'file_tmp_name',
 345                                 ),
 346             'size' => array(
 347                             'file1' => 'file_size',
 348                             'file2' => 'file_size',
 349                             ),
 350             'error' => array(
 351                             'file1' => 'file_err_code',
 352                             'file2' => 'file_err_code',
 353                             ),
 354           ),
 355       );
 356  
 357       $expected = array(
 358          'file1' => array(
 359                           'name' => 'file',
 360                           'type' => 'file_type',
 361                           'tmp_name' => 'file_tmp_name',
 362                           'size' => 'file_size',
 363                           'error' => 'file_err_code'
 364                           ),
 365          'form' => array(
 366            'file1' => array(
 367               'name' => 'file',
 368               'type' => 'file_type',
 369               'tmp_name' => 'file_tmp_name',
 370               'size' => 'file_size',
 371               'error' => 'file_err_code'
 372             ),
 373            'file2' => array(
 374               'name' => 'file',
 375               'type' => 'file_type',
 376               'tmp_name' => 'file_tmp_name',
 377               'size' => 'file_size',
 378               'error' => 'file_err_code'
 379             ),
 380           ),
 381       );
 382  
 383       $result = $this->parser->parse($files);
 384       $this->assertEqual($result, $expected);
 385    }
 386  }
 387  
 388  ?>


Generated: Thu Aug 28 04:51:15 2008 Cross-referenced by PHPXref 0.7