Попробуйте безопасное с точки зрения типов перечисление шаблон.
public sealed class AuthenticationMethod {
private readonly String name;
private readonly int value;
public static readonly AuthenticationMethod FORMS = new AuthenticationMethod (1, "FORMS");
public static readonly AuthenticationMethod WINDOWSAUTHENTICATION = new AuthenticationMethod (2, "WINDOWS");
public static readonly AuthenticationMethod SINGLESIGNON = new AuthenticationMethod (3, "SSN");
private AuthenticationMethod(int value, String name){
this.name = name;
this.value = value;
}
public override String ToString(){
return name;
}
}
Обновление Явный (или неявный) преобразование типов может быть сделано [1 111]
добавляющее статическое поле с отображением
private static readonly Dictionary instance = new Dictionary();
заполнение этого отображения в конструкторе экземпляра
instance[name] = this;
и добавление пользовательский оператор
public static explicit operator AuthenticationMethod(string str)
{
AuthenticationMethod result;
if (instance.TryGetValue(str, out result))
return result;
else
throw new InvalidCastException();
}
преобразования типов
Я нашел решение. Добавьте в Config.groovy следующее:
environments {
test {
plugin {
excludes = "searchable"
}
}
}
Я не уверен, как отключить плагин, возможно, есть способ с помощью собственного компаса XML
С помощью grails вы можете сделать модульное тестирование более терпимым с помощью следующих ... Установите этот дополнительный плагин: grails install-searchchable-config
Это даст вам файл grails-app / conf / Searchable.groovy. Вы можете редактировать Environment.test.searchable, чтобы отключить как минимум bulkIndexOnStartup и mirrorChanges.
environments {
test {
searchable {
// disable bulk index on startup
bulkIndexOnStartup = false
mirrorChanges = false
// use faster in-memory index
compassConnection = "ram://test-index"
}
}
}