public function testSortKeys() { $arr = new ArrayObject(['b' => 'bval', 'a' => 'aval', 'c' => 'cval']); $arr->sortKeys(); $this->assertEquals(['a' => 'aval', 'b' => 'bval', 'c' => 'cval'], $arr->toArray()); $arr = new ArrayObject(['b' => 'bval', 'a' => 'aval', 'c' => 'cval']); $arr->sortKeys(function ($a, $b) { if ($a == $b) { return 0; } return $a < $b ? -1 : 1; }); $this->assertEquals(['a' => 'aval', 'b' => 'bval', 'c' => 'cval'], $arr->toArray()); $arr = new ArrayObject(['b' => 'bval', 'a' => 'aval', 'c' => 'cval']); $arr->sortKeys(new StringComparator()); $this->assertEquals(['a' => 'aval', 'b' => 'bval', 'c' => 'cval'], $arr->toArray()); }