UFile (package = ) [public abstract class Foo {...]
    UClass (name = Foo) [public abstract class Foo {...}]
        UMethod (name = getTestName) [public abstract fun getTestName(upper: boolean) : java.lang.String = UastEmptyExpression]
            UParameter (name = upper) [var upper: boolean]
        UMethod (name = bar) [public fun bar() : void {...}]
            UBlockExpression [{...}] = Undetermined
                UDeclarationsExpression [var t1: java.lang.String = getTestName(false)] = Undetermined
                    ULocalVariable (name = t1) [var t1: java.lang.String = getTestName(false)]
                        UCallExpression (kind = UastCallKind(name='method_call'), argCount = 1)) [getTestName(false)] = "lower"
                            UIdentifier (Identifier (getTestName)) [UIdentifier (Identifier (getTestName))]
                            ULiteralExpression (value = false) [false] = false
                UDeclarationsExpression [var t2: java.lang.String = getTestName(true)] = Undetermined
                    ULocalVariable (name = t2) [var t2: java.lang.String = getTestName(true)]
                        UCallExpression (kind = UastCallKind(name='method_call'), argCount = 1)) [getTestName(true)] = "UPPER"
                            UIdentifier (Identifier (getTestName)) [UIdentifier (Identifier (getTestName))]
                            ULiteralExpression (value = true) [true] = true
