Tôi đang cố gắng thực hiện kiểm tra đơn vị trên phương thức namedquery và nó không hoạt động như tôi đang sử dụng phương thức grails.orm.HibernateCriteriaBuilder.createAlias dường như không được Grails tìm thấy: "Không có chữ ký của phương thức: grails.gorm.CriteriaBuilder.createAlias ()"Kiểm tra đơn vị Grails "CreateAlias" không hoạt động
Tôi đoán vấn đề là khi thực hiện kiểm tra đơn vị và chế nhạo lớp, nó cố gắng tìm phương pháp xung quanh "grails.gorm.CriteriaBuilder" lớp và không phải là grails.orm.HibernateCriteriaBuilder lớp, tại sao ?? bất kỳ ý tưởng để giải quyết nó?
class Book{
static namedQueries = {
testMethod()
{
createAlias('name', 'james')
}
}
}
@Mock([Book])
class BookTests{
@Test
void myTest() {
Book.testMethod();
}
}
Lỗi: Không có chữ ký của phương pháp: grails.gorm.CriteriaBuilder.createAlias ()
Thực ra, đôi khi bạn cần bí danh - đó là cách duy nhất để chỉ định tham gia bên trái. Vì vậy, '' 'Book.withCriteria {createAlias ('tác giả', 'a', JoinType.LEFT_OUTER_JOIN) hoặc {isNull ('a.name') eq ('a.name', 'Fred')}}' '' sẽ khá hữu ích để có thể kiểm tra, nhưng theo như tôi biết, nó không thể kiểm tra được bằng bất kỳ cách nào - một người nào đó cho tôi thấy tôi sai! –