MathPHP\SetTheory\SetOperationsTest::testUnionMultipleSets PHP Метод

testUnionMultipleSets() публичный Метод

public testUnionMultipleSets ( array $A, array $B, array $C, array $A∪B∪C, Set $R )
$A array
$B array
$C array
$A∪B∪C array
$R Set
    public function testUnionMultipleSets(array $A, array $B, array $C, array $A∪B∪C, Set $R)
    {
        $setA = new Set($A);
        $setB = new Set($B);
        $setC = new Set($C);
        $expected = new Set($A∪B∪C);
        $union = $setA->union($setB, $setC);
        $union_array = $union->asArray();
        $this->assertEquals($R, $union);
        $this->assertEquals($expected, $union);
        $this->assertEquals(count($A∪B∪C), count($union));
        foreach ($A∪B∪C as $member) {
            $this->assertArrayHasKey("{$member}", $union_array);
        }
        foreach ($A∪B∪C as $_ => $value) {
            if ($value instanceof Set) {
                $this->assertEquals($value, $union_array["{$value}"]);
            } else {
                $this->assertContains("{$value}", $union_array);
            }
        }
    }