home | career | drupal | java | mac | mysql | perl | scala | uml | unix

Groovy example source code file (VariablePrecedenceTest.groovy)

This example Groovy source code file (VariablePrecedenceTest.groovy) is included in the DevDaily.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Java - Groovy tags/keywords

class_method_str, class_method_str, classmethod, closure, closure, closure_str, closure_str, groovytestcase, string, string, variableprecedencetest

The Groovy VariablePrecedenceTest.groovy source code

package gls.scope

/**
*  test case based on GROOVY-3069
*/
class VariablePrecedenceTest extends GroovyTestCase {
    final String CLOSURE_STR = '[Closure]'
    final String CLASS_METHOD_STR = '[ClassMethod]'

    def void testClosureParamPrecedenceExplicitClosureType() {
        def cl = { CLOSURE_STR }
        checkPrecendenceWithExplicitClosureType(cl)
    }

    def void testClosureParamPrecedenceImplicitClosureType() {
        def cl = { CLOSURE_STR }
        checkPrecendenceWithImplicitClosureType(cl)
    }

    def void testClosureLocalVarPrecedenceExplicitClosureType() {
        Closure method = { CLOSURE_STR }

        assert method() == CLOSURE_STR
        assert this.method() == CLASS_METHOD_STR
    }

    def void testClosureLocalVarPrecedenceImplicitClosureType() {
        def method = { CLOSURE_STR }

        assert method() == CLOSURE_STR
        assert this.method() == CLASS_METHOD_STR
    }

    String method() {
        return CLASS_METHOD_STR
    }

    String checkPrecendenceWithExplicitClosureType(Closure method) {
        assert method() == CLOSURE_STR
        assert this.method() == CLASS_METHOD_STR
    }

    String checkPrecendenceWithImplicitClosureType(method) {
        assert method() == CLOSURE_STR
        assert this.method() == CLASS_METHOD_STR
    }
}

Other Groovy examples (source code examples)

Here is a short list of links related to this Groovy VariablePrecedenceTest.groovy source code file:

new blog posts

 

Copyright 1998-2013 Alvin Alexander, alvinalexander.com
All Rights Reserved.