[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/src/infrastructure/storage/__tests__/ -> QueryFormattingTestCase.php (source)

   1  <?php
   2  
   3  final class QueryFormattingTestCase extends PhabricatorTestCase {
   4  
   5    public function testQueryFormatting() {
   6      $conn_r = id(new PhabricatorUser())->establishConnection('r');
   7  
   8      $this->assertEqual(
   9        'NULL',
  10        qsprintf($conn_r, '%nd', null));
  11  
  12      $this->assertEqual(
  13        '0',
  14        qsprintf($conn_r, '%nd', 0));
  15  
  16      $this->assertEqual(
  17        '0',
  18        qsprintf($conn_r, '%d', 0));
  19  
  20      $raised = null;
  21      try {
  22        qsprintf($conn_r, '%d', 'derp');
  23      } catch (Exception $ex) {
  24        $raised = $ex;
  25      }
  26      $this->assertTrue(
  27        (bool)$raised,
  28        'qsprintf should raise exception for invalid %d conversion.');
  29  
  30      $this->assertEqual(
  31        "'<S>'",
  32        qsprintf($conn_r, '%s', null));
  33  
  34      $this->assertEqual(
  35        'NULL',
  36        qsprintf($conn_r, '%ns', null));
  37  
  38      $this->assertEqual(
  39        "'<S>', '<S>'",
  40        qsprintf($conn_r, '%Ls', array('x', 'y')));
  41  
  42      $this->assertEqual(
  43        "'<B>'",
  44        qsprintf($conn_r, '%B', null));
  45  
  46      $this->assertEqual(
  47        'NULL',
  48        qsprintf($conn_r, '%nB', null));
  49  
  50      $this->assertEqual(
  51        "'<B>', '<B>'",
  52        qsprintf($conn_r, '%LB', array('x', 'y')));
  53    }
  54  
  55  
  56  }


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1