Skip to content

Commit 92ecbb0

Browse files
committed
make sure EnumSet::rewind() will stop on first iterator position on an empty enumeration
1 parent 3a89062 commit 92ecbb0

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

tests/MabeEnumTest/EnumSetTest.php

+13
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,19 @@ public function testIterateOutOfRangeIfLastOrdinalEnumIsSet()
190190
$this->assertSame($enum->getOrdinal() + 1, $enumSet->key());
191191
}
192192

193+
public function testRewindFirstOnEmptySet()
194+
{
195+
$enumSet = new EnumSet('MabeEnumTest\TestAsset\EnumBasic');
196+
197+
$enumSet->attach(EnumBasic::TWO);
198+
$enumSet->rewind();
199+
$this->assertGreaterThan(0, $enumSet->key());
200+
201+
$enumSet->detach(EnumBasic::TWO);
202+
$enumSet->rewind();
203+
$this->assertSame(0, $enumSet->key());
204+
}
205+
193206
public function test32EnumerationsSet()
194207
{
195208
$enumSet = new EnumSet('MabeEnumTest\TestAsset\Enum32');

0 commit comments

Comments
 (0)