Remove product literal strings in "pht()", part 18
[phabricator.git] / src / infrastructure / query / order / __tests__ / PhabricatorQueryOrderTestCase.php
blobe0e6a2a16a8a23c45b9ae257a09ecb3594d761b6
1 <?php
3 final class PhabricatorQueryOrderTestCase extends PhabricatorTestCase {
5 public function testQueryOrderItem() {
6 $item = PhabricatorQueryOrderItem::newFromScalar('id');
7 $this->assertEqual('id', $item->getOrderKey());
8 $this->assertEqual(false, $item->getIsReversed());
10 $item = PhabricatorQueryOrderItem::newFromScalar('-id');
11 $this->assertEqual('id', $item->getOrderKey());
12 $this->assertEqual(true, $item->getIsReversed());
15 public function testQueryOrderBadVectors() {
16 $bad = array(
17 array(),
18 null,
20 array(2),
21 array('id', 'id'),
22 array('id', '-id'),
25 foreach ($bad as $input) {
26 $caught = null;
27 try {
28 PhabricatorQueryOrderVector::newFromVector($input);
29 } catch (Exception $ex) {
30 $caught = $ex;
33 $this->assertTrue(($caught instanceof Exception));
37 public function testQueryOrderVector() {
38 $vector = PhabricatorQueryOrderVector::newFromVector(
39 array(
40 'a',
41 'b',
42 '-c',
43 'd',
44 ));
46 $this->assertEqual(
47 array(
48 'a' => 'a',
49 'b' => 'b',
50 'c' => 'c',
51 'd' => 'd',
53 mpull(iterator_to_array($vector), 'getOrderKey'));
55 $this->assertEqual(
56 array(
57 'a' => false,
58 'b' => false,
59 'c' => true,
60 'd' => false,
62 mpull(iterator_to_array($vector), 'getIsReversed'));