对于Grails中的这个字段,我有以下约束:
businessNumber(matches: '([0-9A-Z]*9)RA([0-9A-Z]*4)', maxSize: 15)
我使用了maxSize约束,以便grails在html视图中嵌入maxlength属性。我对约束进行了如下所示的单元测试:
void testBusinessNumberExceedMaxSize(){
mockChildrenSpecialAllowancesForm.setBusinessNumber("F%G&Hy934F4G6H%55")
assertFalse (mockChildrenSpecialAllowancesForm.validate())
assertEquals ("maxSize",mockChildrenSpecialAllowancesForm.errors.businessNumber)
assertEquals (2, mockChildrenSpecialAllowancesForm.errors.getErrorCount())
}
testBusinessNumberExceedMaxSize(com.ass.socialservicescm.ChildrenSpecialAllowancesTests)
| org.junit.ComparisonFailure: expected:<ma[xSize]> but was:<ma[tches]>
at org.junit.Assert.assertEquals(Assert.java:125)
at org.junit.Assert.assertEquals(Assert.java:147)
at com.ass.socialservicescm.ChildrenSpecialAllowancesTests.testBusinessNumberExceedMaxSize(ChildrenSpecialAllowancesTests.groovy:177)
注意:我使用的是grails 2.0.0
我使用它将所有验证异常解析成一个字符串,然后在调用代码中执行assertEquals,并将其与此结果进行比较。也许有一个更简单的方法,但现在这对我有效。
public static String getErrorString(errors) {
StringBuffer errorMsg = new StringBuffer();
errors.allErrors.each {
if (it instanceof org.springframework.validation.FieldError) {
if ((it.defaultMessage) == null) {
errorMsg.append('Error-> ObjectName:' + it.getObjectName() + ' /Field:' + it.getField() + ' /RejectedValue:' + it.getRejectedValue() + ".\n");
} else {
errorMsg.append(doReplace((String) it.defaultMessage, it.arguments) + "\n");
}
}
}
return errorMsg.toString();
}
public static String doReplace(String error, Object[] arguments) {
int index = 0;
arguments.each {
error = error.replace("{" + index + "}", it.toString());
index++;
}
return error;
}
当“事件ID”与“用户ID”匹配时,im会尝试从我的“事件”表中选择所有数据。然而,我得到一个错误1242,子查询返回超过1行。 我理解我的子查询将返回多行,因为一个用户可以参加多个事件。那么我如何使我的查询接受多行呢?
null 但如果有例外,我该怎么办? null
我已经使用创建了“CfnUserPool”对象https://docs.aws.amazon.com/cdk/api/latest/python/aws_cdk.aws_cognito/CfnUserPool.html aws文件。 我想获取UserPool的“Pool Id”。其Id值为“us-east-1_4kxxxxxx”。我使用python尝试了很多选项来获取这个值,但都没有成功。 所以我
基类控制器里有error方法,用于api的错误消息返回输出 /** * 操作错误跳转的快捷方法 * @access protected * @param mixed $msg 提示信息,若要指定错误码,可以传数组,格式为['code'=>您的错误码,'msg'=>'您的错误消息'] * @param mixed $data 返回的数据 * @par
我正在努力使用Alamofire及其浏览器获取返回的json错误消息<代码>成功/。故障方法。 在使用这个之前,我可以使用
我是JS的学生。我有一段代码返回了一个错误。 这是返回的语法错误。你们能解释一下我做错了什么吗?