public function test_that_keys_returns_traversable_keys_in_order() { $tree = new RedBlackSearchTree(new ComparableComparator()); foreach ($this->getWeekDays() as $value => $key) { $tree->set($key, $value); } $count = 0; /** @var WeekDay $key */ foreach ($tree->keys() as $key) { if ($key->value() !== $count) { throw new \Exception('Keys out of order'); } $count++; } $this->assertSame(7, $count); }
/** * {@inheritdoc} */ public function getIterator() : Traversable { return $this->tree->keys(); }
/** * {@inheritdoc} */ public function keys() : Traversable { return $this->tree->keys(); }