I notice that any reference to a property is missing when requiring domain classes in grails unit tests.
Somewhere in the Unit Test
mockDomain(Event)
10.times {
    e   = new Event(eventCalendar:ec, title:"$ec - Event $it", details:"some detail", location:"some location", startDate: now, endDate: now+1)
    e.save()
}
Event.groovy
static beforeInsert = {
    if (!endDate) {
        // do something about it
    }
}
Resulting error
No such property: endDate for class: myproj.Event Possible solutions: endDate
groovy.lang.MissingPropertyException: No such property: endDate for class: myproj.Event
Possible solutions: endDate
    at myproj.Event$__clinit__closure5.doCall(Event.groovy:74)
    at myproj.Event$__clinit__closure5.doCall(Event.groovy)
    at grai开发者_C百科ls.test.MockUtils.triggerEvent(MockUtils.groovy:724)
    at grails.test.MockUtils$_addDynamicInstanceMethods_closure68.doCall(MockUtils.groovy:752)
    at grails.test.MockUtils$_addDynamicInstanceMethods_closure68.doCall(MockUtils.groovy)
    at myproj.EventCalendarTest$_testCreateAndDeleteCalendarWithEvents_closure1.doCall(EventCalendarTest.groovy:43)
    at myproj.EventCalendarTest.testCreateAndDeleteCalendarWithEvents(EventCalendarTest.groovy:40)
- How can I still create a working test?
- Why is the stacktrace suggesting the property which it has stated as missing?
You've incorrectly defined your event handler as a static closure:
static beforeInsert = {
    if (!endDate) {
        // do something about it
    }
}
You can't access endDate here because it's (presumably) a non-static property. Change your event handler to be non-static and your problem should be fixed.
def beforeInsert = {
    if (!endDate) {
        // do something about it
    }
}
 
         
                                         
                                         
                                         
                                        ![Interactive visualization of a graph in python [closed]](https://www.devze.com/res/2023/04-10/09/92d32fe8c0d22fb96bd6f6e8b7d1f457.gif) 
                                         
                                         
                                         
                                         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论