Extension\BitwiseTest::testBitwise PHP Метод

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

public testBitwise ( )
    public function testBitwise()
    {
        $t = new \Test\Bitwise();
        // OR TESTS
        $this->assertSame($t->intAnd(), 0);
        $this->assertSame($t->int2And(), 0);
        $this->assertSame($t->intAndSimple(), 0);
        $this->assertSame($t->doubleAnd(), 0.0);
        $this->assertSame($t->double2And(), 0.0);
        $this->assertSame($t->doubleAndSimple(), 0.0);
        $this->assertSame($t->doubleAnd2Simple(), 0.0);
        $this->assertTrue($t->boolAnd());
        $this->assertFalse($t->bool2And());
        $this->assertFalse($t->bool3And());
        $this->assertFalse($t->boolAndSimple());
        $this->assertSame($t->varAnd(), 0);
        $this->assertSame($t->varAndSimple(), 0);
        $this->assertSame($t->intDoubleAnd(), 0);
        $this->assertSame($t->intDoubleAndSimple(), 0);
        $this->assertSame($t->doubleIntAnd(), 0.0);
        $this->assertSame($t->doubleIntAndSimple(), 0.0);
        $this->assertSame($t->varIntAnd(), 0);
        $this->assertSame($t->intVarAnd(), 0);
        $this->assertSame($t->intVarImplicitCastAnd(), 0);
        $this->assertSame($t->intVarImplicitCast2And(), 0);
        $this->assertSame($t->complexAnd(), 0.0);
        $this->assertTrue($t->complex2And());
        $this->assertTrue($t->complex3And());
        $this->assertSame($t->complex4And(), 1);
        $this->assertSame($t->complex5And(), 1);
        $this->assertTrue($t->complex6And());
        $this->assertSame($t->complex7And(), 0);
        $this->assertSame($t->complex9And(), 0);
        $this->assertSame($t->complex10And(), 0.0);
        $this->assertSame($t->complex11And(), 0.0);
        $this->assertSame($t->complex12And(), 0);
        $this->assertSame($t->complex13And(), 1);
        $this->assertSame($t->complex14And(), 1);
        $this->assertFalse($t->complex15And());
        $this->assertSame($t->complex17And(), 1.0);
        $this->assertSame($t->complex18And(), 1.0);
        $this->assertSame($t->complex19And(), 1.0);
        $this->assertSame($t->complex20And(), 1.0);
        $this->assertSame($t->complex21And(), 1.0);
        $this->assertSame($t->complex22And(), 0.0);
        $this->assertSame($t->complex23And(), 1.0);
        $this->assertSame($t->complex24And(), 0);
        // OR TESTS
        $this->assertSame($t->intOr(), 3);
        $this->assertSame($t->int2Or(), 3);
        $this->assertSame($t->intOrSimple(), 3);
        $this->assertSame($t->doubleOr(), 3.0);
        $this->assertSame($t->double2Or(), 3.0);
        $this->assertSame($t->doubleOrSimple(), 3.0);
        $this->assertSame($t->doubleOr2Simple(), 3.0);
        $this->assertTrue($t->boolOr());
        $this->assertTrue($t->bool2Or());
        $this->assertTrue($t->bool3Or());
        $this->assertTrue($t->boolOrSimple());
        $this->assertSame($t->varOr(), 3);
        $this->assertSame($t->varOrSimple(), 3);
        $this->assertSame($t->intDoubleOr(), 3);
        $this->assertSame($t->intDoubleOrSimple(), 3);
        $this->assertSame($t->doubleIntOr(), 3.0);
        $this->assertSame($t->doubleIntOrSimple(), 3.0);
        $this->assertSame($t->varIntOr(), 3);
        $this->assertSame($t->intVarOr(), 3);
        $this->assertSame($t->intVarImplicitCastOr(), 3);
        $this->assertSame($t->intVarImplicitCast2Or(), 3);
        $this->assertSame($t->complexOr(), 3.0);
        $this->assertTrue($t->complex2Or());
        $this->assertTrue($t->complex3Or());
        $this->assertSame($t->complex4Or(), 1);
        $this->assertSame($t->complex5Or(), 1);
        $this->assertTrue($t->complex6Or());
        $this->assertSame($t->complex7Or(), 3);
        $this->assertSame($t->complex9Or(), 3);
        $this->assertSame($t->complex10Or(), 3.0);
        $this->assertSame($t->complex11Or(), 3.0);
        $this->assertSame($t->complex12Or(), 3);
        $this->assertSame($t->complex13Or(), 1);
        $this->assertSame($t->complex14Or(), 1);
        $this->assertTrue($t->complex15Or());
        $this->assertSame($t->complex17Or(), 1.0);
        $this->assertSame($t->complex18Or(), 1.0);
        $this->assertSame($t->complex19Or(), 1.0);
        $this->assertSame($t->complex20Or(), 1.0);
        $this->assertSame($t->complex21Or(), 1.0);
        $this->assertSame($t->complex22Or(), 3.0);
        $this->assertSame($t->complex23Or(), 1.0);
        $this->assertSame($t->complex24Or(), 1.0);
        // shiftleft
        $this->assertSame($t->intShiftLeft(), 4);
        $this->assertSame($t->int2ShiftLeft(), 4);
        $this->assertSame($t->intShiftLeftSimple(), 4);
        // shiftright
        $this->assertSame($t->intShiftRight(), 0);
        $this->assertSame($t->int2ShiftRight(), 0);
        $this->assertSame($t->intShiftRightSimple(), 0);
        // Bitwise NOT
        $this->assertSame($t->testBitwiseNot(666), -667);
        $this->assertSame($t->testBitwiseAndNot(5, 4), 1);
    }
BitwiseTest