/**
  * @covers SortArray::uasort
  * @group  stablesort
  */
 public function testAssociation()
 {
     $source = array('a' => array('red', 3), 'b' => array('green', 2), 'c' => array('blue', 2), 'd' => array('yellow', 1));
     $expected = array('d' => array('yellow', 1), 'b' => array('green', 2), 'c' => array('blue', 2), 'a' => array('red', 3));
     $array = $source;
     SortArray::uasort($array, array(__CLASS__, 'compare_integer'));
     $this->assertSame($expected, $array);
 }
 /**
  * @covers SortArray::uksort
  * @group  stablesort
  */
 public function testAssociation()
 {
     $source = array('a3' => 1, 'b2' => 2, 'c2' => 3, 'd1' => 4);
     $expected = array('d1' => 4, 'b2' => 2, 'c2' => 3, 'a3' => 1);
     $array = $source;
     SortArray::uksort($array, array(__CLASS__, 'compare_string_skip'));
     $this->assertSame($expected, $array);
 }
 /**
  * @covers SortArray::natcasesort
  * @group  stablesort
  */
 public function testAssociation()
 {
     $array = array('a9', 'a1', 'a10', 'A2');
     SortArray::natcasesort($array);
     $this->assertSame(array(1 => 'a1', 3 => 'A2', 0 => 'a9', 2 => 'a10'), $array);
 }
 /**
  * @covers SortArray::arsort
  * @group  stablesort
  */
 public function testRegular()
 {
     $array = array('a9', 'a1', 'a10');
     SortArray::arsort($array, SORT_REGULAR);
     $this->assertNotSame(array(2 => 'a10', 0 => 'a9', 1 => 'a1'), $array);
 }