| @@ 666-687 (lines=22) @@ | ||
| 663 | $set1->union($set2); |
|
| 664 | } |
|
| 665 | ||
| 666 | public function testIntersect() |
|
| 667 | { |
|
| 668 | $set1 = new EnumSet(EnumBasic::class); |
|
| 669 | $set1->attach(EnumBasic::ONE); |
|
| 670 | $set1->attach(EnumBasic::TWO); |
|
| 671 | $set1->attach(EnumBasic::THREE); |
|
| 672 | ||
| 673 | $set2 = new EnumSet(EnumBasic::class); |
|
| 674 | $set2->attach(EnumBasic::TWO); |
|
| 675 | $set2->attach(EnumBasic::THREE); |
|
| 676 | $set2->attach(EnumBasic::FOUR); |
|
| 677 | ||
| 678 | $set3 = new EnumSet(EnumBasic::class); |
|
| 679 | $set3->attach(EnumBasic::THREE); |
|
| 680 | $set3->attach(EnumBasic::FOUR); |
|
| 681 | $set3->attach(EnumBasic::FIVE); |
|
| 682 | ||
| 683 | $rs = $set1->intersect($set2, $set3); |
|
| 684 | $this->assertSame(array( |
|
| 685 | EnumBasic::THREE, |
|
| 686 | ), $rs->getValues()); |
|
| 687 | } |
|
| 688 | ||
| 689 | public function testIntersectThrowsInvalidArgumentException() |
|
| 690 | { |
|
| @@ 698-719 (lines=22) @@ | ||
| 695 | $set1->intersect($set2); |
|
| 696 | } |
|
| 697 | ||
| 698 | public function testDiff() |
|
| 699 | { |
|
| 700 | $set1 = new EnumSet(EnumBasic::class); |
|
| 701 | $set1->attach(EnumBasic::ONE); |
|
| 702 | $set1->attach(EnumBasic::TWO); |
|
| 703 | $set1->attach(EnumBasic::THREE); |
|
| 704 | ||
| 705 | $set2 = new EnumSet(EnumBasic::class); |
|
| 706 | $set2->attach(EnumBasic::TWO); |
|
| 707 | $set2->attach(EnumBasic::THREE); |
|
| 708 | $set2->attach(EnumBasic::FOUR); |
|
| 709 | ||
| 710 | $set3 = new EnumSet(EnumBasic::class); |
|
| 711 | $set3->attach(EnumBasic::THREE); |
|
| 712 | $set3->attach(EnumBasic::FOUR); |
|
| 713 | $set3->attach(EnumBasic::FIVE); |
|
| 714 | ||
| 715 | $rs = $set1->diff($set2, $set3); |
|
| 716 | $this->assertSame(array( |
|
| 717 | EnumBasic::ONE, |
|
| 718 | ), $rs->getValues()); |
|
| 719 | } |
|
| 720 | ||
| 721 | public function testDiffThrowsInvalidArgumentException() |
|
| 722 | { |
|