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