@@ 69-80 (lines=12) @@ | ||
66 | $this->assertFalse($enumSet->contains($enum2)); |
|
67 | } |
|
68 | ||
69 | public function testUnique() |
|
70 | { |
|
71 | $enumSet = new EnumSet('MabeEnumTest\TestAsset\EnumBasic'); |
|
72 | ||
73 | $enumSet->attach(EnumBasic::ONE()); |
|
74 | $enumSet->attach(EnumBasic::ONE); |
|
75 | ||
76 | $enumSet->attach(EnumBasic::TWO()); |
|
77 | $enumSet->attach(EnumBasic::TWO); |
|
78 | ||
79 | $this->assertSame(2, $enumSet->count()); |
|
80 | } |
|
81 | ||
82 | public function testIterateOrdered() |
|
83 | { |
|
@@ 189-200 (lines=12) @@ | ||
186 | $this->assertSame($enum->getOrdinal() + 1, $enumSet->key()); |
|
187 | } |
|
188 | ||
189 | public function testRewindFirstOnEmptySet() |
|
190 | { |
|
191 | $enumSet = new EnumSet('MabeEnumTest\TestAsset\EnumBasic'); |
|
192 | ||
193 | $enumSet->attach(EnumBasic::TWO); |
|
194 | $enumSet->rewind(); |
|
195 | $this->assertGreaterThan(0, $enumSet->key()); |
|
196 | ||
197 | $enumSet->detach(EnumBasic::TWO); |
|
198 | $enumSet->rewind(); |
|
199 | $this->assertSame(0, $enumSet->key()); |
|
200 | } |
|
201 | ||
202 | public function test32EnumerationsSet() |
|
203 | { |
|
@@ 579-588 (lines=10) @@ | ||
576 | $this->assertSame(range(0, count(EnumBasic::getConstants()) - 1), $set->getOrdinals()); |
|
577 | } |
|
578 | ||
579 | public function testGetOrdinalsDoesNotEffectIteratorPosition() |
|
580 | { |
|
581 | $set = new EnumSet('MabeEnumTest\TestAsset\EnumBasic'); |
|
582 | $set->attach(EnumBasic::ONE); |
|
583 | $set->attach(EnumBasic::TWO); |
|
584 | $set->next(); |
|
585 | ||
586 | $set->getOrdinals(); |
|
587 | $this->assertSame(EnumBasic::TWO, $set->current()->getValue()); |
|
588 | } |
|
589 | ||
590 | public function testGetEnumerators() |
|
591 | { |
|
@@ 602-611 (lines=10) @@ | ||
599 | $this->assertSame(EnumBasic::getEnumerators(), $set->getEnumerators()); |
|
600 | } |
|
601 | ||
602 | public function testGetEnumeratorsDoesNotEffectIteratorPosition() |
|
603 | { |
|
604 | $set = new EnumSet('MabeEnumTest\TestAsset\EnumBasic'); |
|
605 | $set->attach(EnumBasic::ONE); |
|
606 | $set->attach(EnumBasic::TWO); |
|
607 | $set->next(); |
|
608 | ||
609 | $set->getEnumerators(); |
|
610 | $this->assertSame(EnumBasic::TWO, $set->current()->getValue()); |
|
611 | } |
|
612 | ||
613 | public function testGetValues() |
|
614 | { |
|
@@ 625-634 (lines=10) @@ | ||
622 | $this->assertSame(array_values(EnumBasic::getConstants()), $set->getValues()); |
|
623 | } |
|
624 | ||
625 | public function testGetValuesDoesNotEffectIteratorPosition() |
|
626 | { |
|
627 | $set = new EnumSet('MabeEnumTest\TestAsset\EnumBasic'); |
|
628 | $set->attach(EnumBasic::ONE); |
|
629 | $set->attach(EnumBasic::TWO); |
|
630 | $set->next(); |
|
631 | ||
632 | $set->getValues(); |
|
633 | $this->assertSame(EnumBasic::TWO, $set->current()->getValue()); |
|
634 | } |
|
635 | ||
636 | public function testGetNames() |
|
637 | { |
|
@@ 648-657 (lines=10) @@ | ||
645 | $this->assertSame(array_keys(EnumBasic::getConstants()), $set->getNames()); |
|
646 | } |
|
647 | ||
648 | public function testGetNamesDoesNotEffectIteratorPosition() |
|
649 | { |
|
650 | $set = new EnumSet('MabeEnumTest\TestAsset\EnumBasic'); |
|
651 | $set->attach(EnumBasic::ONE); |
|
652 | $set->attach(EnumBasic::TWO); |
|
653 | $set->next(); |
|
654 | ||
655 | $set->getNames(); |
|
656 | $this->assertSame(EnumBasic::TWO, $set->current()->getValue()); |
|
657 | } |
|
658 | ||
659 | public function testUnion() |
|
660 | { |