Code Duplication    Length = 12-14 lines in 6 locations

tests/MabeEnumTest/EnumSetTest.php 6 locations

@@ 395-408 (lines=14) @@
392
        $this->assertSame(0, $set->count());
393
    }
394
395
    public function testIsEqual()
396
    {
397
        $set1 = new EnumSet(EnumBasic::class);
398
        $set2 = new EnumSet(EnumBasic::class);
399
        $this->assertTrue($set1->isEqual($set2));
400
401
        foreach (EnumBasic::getEnumerators() as $enumerator) {
402
            $set1->attach($enumerator);
403
            $this->assertFalse($set1->isEqual($set2));
404
405
            $set2->attach($enumerator);
406
            $this->assertTrue($set1->isEqual($set2));
407
        }
408
    }
409
410
    public function testIsEqualWrongInstance()
411
    {
@@ 410-423 (lines=14) @@
407
        }
408
    }
409
410
    public function testIsEqualWrongInstance()
411
    {
412
        $set1 = new EnumSet(EnumBasic::class);
413
        $set2 = new EnumSet(EnumInheritance::class);
414
        $this->assertFalse($set1->isEqual($set2));
415
416
        foreach (EnumBasic::getEnumerators() as $enumerator) {
417
            $set1->attach($enumerator);
418
            $this->assertFalse($set1->isEqual($set2));
419
420
            $set2->attach($enumerator->getValue());
421
            $this->assertFalse($set1->isEqual($set2));
422
        }
423
    }
424
425
    /**
426
     * if $A->isEqual($B) is true then $A->isSubsetOf($B) is also true
@@ 428-439 (lines=12) @@
425
    /**
426
     * if $A->isEqual($B) is true then $A->isSubsetOf($B) is also true
427
     */
428
    public function testIsSubsetEqual()
429
    {
430
        $set1 = new EnumSet(Enum32::class);
431
        $set2 = new EnumSet(Enum32::class);
432
        $this->assertTrue($set1->isSubset($set2));
433
434
        foreach (Enum32::getEnumerators() as $enumerator) {
435
            $set1->attach($enumerator);
436
            $set2->attach($enumerator);
437
            $this->assertTrue($set1->isSubset($set2));
438
        }
439
    }
440
441
    public function testIsSubsetFull()
442
    {
@@ 463-476 (lines=14) @@
460
        }
461
    }
462
463
    public function testIsSubsetWrongInstance()
464
    {
465
        $set1 = new EnumSet(EnumBasic::class);
466
        $set2 = new EnumSet(EnumInheritance::class);
467
        $this->assertFalse($set1->isSubset($set2));
468
469
        foreach (EnumBasic::getEnumerators() as $enumerator) {
470
            $set1->attach($enumerator);
471
            $this->assertFalse($set1->isSubset($set2));
472
473
            $set2->attach($enumerator->getValue());
474
            $this->assertFalse($set1->isSubset($set2));
475
        }
476
    }
477
478
    /**
479
     * if $A->isEqual($B) is true then $A->isSuperset($B) is also true
@@ 481-492 (lines=12) @@
478
    /**
479
     * if $A->isEqual($B) is true then $A->isSuperset($B) is also true
480
     */
481
    public function testIsSsetEqual()
482
    {
483
        $set1 = new EnumSet(Enum32::class);
484
        $set2 = new EnumSet(Enum32::class);
485
        $this->assertTrue($set1->isSuperset($set2));
486
487
        foreach (Enum32::getEnumerators() as $enumerator) {
488
            $set1->attach($enumerator);
489
            $set2->attach($enumerator);
490
            $this->assertTrue($set1->isSuperset($set2));
491
        }
492
    }
493
494
    public function testIsSupersetFull()
495
    {
@@ 516-529 (lines=14) @@
513
        }
514
    }
515
516
    public function testIsSupersetWrongInstance()
517
    {
518
        $set1 = new EnumSet(EnumBasic::class);
519
        $set2 = new EnumSet(EnumInheritance::class);
520
        $this->assertFalse($set1->isSuperset($set2));
521
522
        foreach (EnumBasic::getEnumerators() as $enumerator) {
523
            $set1->attach($enumerator);
524
            $this->assertFalse($set1->isSuperset($set2));
525
526
            $set2->attach($enumerator->getValue());
527
            $this->assertFalse($set1->isSuperset($set2));
528
        }
529
    }
530
531
    public function testGetOrdinals()
532
    {