|
|
|
@ -198,6 +198,44 @@ func TestStaticObjectMethod(t *testing.T) {
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func TestStaticBooleanMethod(t *testing.T) { |
|
|
|
|
err := Do(vm, func(env Env) error { |
|
|
|
|
cls := FindClass(env, "test/AClass") |
|
|
|
|
mid := GetStaticMethodID(env, cls, "GetStaticBoolean", "()Z") |
|
|
|
|
if mid == nil { |
|
|
|
|
t.Errorf("MethodID is nil") |
|
|
|
|
} |
|
|
|
|
setterMid := GetStaticMethodID(env, cls, "SetStaticBoolean", "(Z)V") |
|
|
|
|
if setterMid == nil { |
|
|
|
|
t.Errorf("Setter MethodID is nil") |
|
|
|
|
} |
|
|
|
|
res, err := CallStaticBooleanMethod(env, cls, mid) |
|
|
|
|
if err != nil { |
|
|
|
|
t.Errorf("Method invocation failed") |
|
|
|
|
} |
|
|
|
|
if !res { |
|
|
|
|
t.Errorf("Method returned %v, not expected value of %v.", res, true) |
|
|
|
|
} |
|
|
|
|
if err := CallStaticVoidMethod(env, cls, setterMid, FALSE); err != nil { |
|
|
|
|
t.Errorf("Setter invocation failed") |
|
|
|
|
} |
|
|
|
|
res, err = CallStaticBooleanMethod(env, cls, mid) |
|
|
|
|
if err != nil { |
|
|
|
|
t.Errorf("Method invocation failed") |
|
|
|
|
} |
|
|
|
|
if res { |
|
|
|
|
t.Errorf("Method returned %v, not expected value of %v.", res, false) |
|
|
|
|
} |
|
|
|
|
if err := CallStaticVoidMethod(env, cls, setterMid, TRUE); err != nil { |
|
|
|
|
t.Errorf("Setter invocation failed") |
|
|
|
|
} |
|
|
|
|
return err |
|
|
|
|
}) |
|
|
|
|
if err != nil { |
|
|
|
|
t.Errorf("Error: %s", err) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func TestMethod(t *testing.T) { |
|
|
|
|
defer func() { |
|
|
|
|
if r := recover(); r == nil { |
|
|
|
|