grails - Testing if a closure was 'injected" to instance -


i inject method afterinsert metaclass instance when hasproperty("auditable")

def injectmethod(object) {     if(object.hasproperty("auditable") {         object.metaclass.afterinsert = { dosomething }     } } 

how can test object responds afterinsert?

i tried:

assert object.respondsto("afterinsert") 

and

assert object.hasproperty("afterinsert") 

nothing

assert object.metaclass.afterinsert != null // true 

metaclass.respondsto?

class {   def foo }  = new a()  assert a.hasproperty("foo") assert !a.metaclass.respondsto(a, "bar")  a.metaclass.bar = { 10 }  assert a.hasproperty("foo") assert a.metaclass.respondsto(a, "bar")  assert a.bar() == 10 

Comments