Code Duplication    Length = 10-12 lines in 6 locations

tests/MabeEnumTest/EnumSetTest.php 6 locations

@@ 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
    {