booleanoperationtest.groovy

来自「Groovy动态语言 运行在JVM中的动态语言 可以方便的处理业务逻辑变化大的业」· GROOVY 代码 · 共 128 行

GROOVY
128
字号
class BooleanOperationTest extends GroovyTestCase {

    void testComparisons() {
        assert true
        assert true != false
        
        def x = true
        
        assert x
        assert x == true
        assert x != false
        
        x = false
        
        assert x == false
        assert x != true
        
        assert !x
        
        def y = false        
        assert x == y
        
        y = true
        assert x != y
    }
    
    
    void testIfBranch() {
        def x = false
        def r = false
        
        if ( x ) {
            // ignore
        }
        else {
            r = true
        }

        assert r
        
        x = true
        r = false
        
        if ( x ) {
            r = true
        }
        else {
            // ignore
        }
        assert r
        
        if ( !x ) {
            r = false
        }
        else {
            r = true
        }
        
        assert r
    }


	void testBooleanExpression() {
	    def x = 5
	    def value = x > 2
	    assert value
	    
	    value = x < 2
	    assert value == false
	}
	
	
	void testBooleanOps() {
	    boolean x = true
	    boolean y = false
	    assert (x & x) == true
	    assert (x & y) == false
	    assert (y & x) == false
	    assert (y & y) == false

	    assert (x | x) == true
	    assert (x | y) == true
	    assert (y | x) == true
	    assert (y | y) == false

	    assert (x ^ x) == false
	    assert (x ^ y) == true
	    assert (y ^ x) == true
	    assert (y ^ y) == false

	    assert (!x) == false
	    assert (!y) == true
	}


	void testBooleanAssignOps() {
	    boolean z = true
	    z &= true
	    assert z == true
	    z &= false
	    assert z == false

	    z = true
	    z |= true
	    assert z == true
	    z |= false
	    assert z == true
	    z = false
	    z |= false
	    assert z == false
	    z |= true
	    assert z == true

        z = true
        z ^= true
        assert z == false
        z ^= true
        assert z == true
        z ^= false
        assert z == true
        z ^= true
        assert z == false
        z ^= false
        assert z == false
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?