java - 为什么 HIbernate 的 PESEL 验证器不起作用?
问题描述
@Test
public void testEncryptingPesel() {
// given
CharSequence validPesel = "94092367705";
// when
PESELValidator validator = new PESELValidator();
// then
assertTrue(validator.isValid(validPesel, null));
}
测试失败。PESEL 100% 正确,您可以在这里查看: https ://sprawdz-numer.com/pesel
解决方案
这是因为你没有初始化验证器,所以它不知道哪个数字是验证数字。您必须initialize
显式调用该方法:
// when
PESELValidator validator = new PESELValidator();
validator.initialize(null);
这个论点是null
因为它无论如何都被忽略了(很难说这种方法的作者的想法是什么)。
推荐阅读
- python - 如何从 pandas DF 获取`field_name:field_type` 的字典
- sql - 如何编写一个sql来计算工作时间减去休息时间
- java - Java 翻译反射调用程序的文件 API 路径
- reactjs - react-router-dom+antD/ 如何根据当前路由设置一个 Nav Element Active
- amazon-web-services - 如何使 Redisson Semaphore 自动释放
- c++ - 二叉搜索树未将插入值加载到树中
- apache-spark - Spark-submit 命令选项 --num-executors 问题
- sql-server - tsql 等待更改,读取已提交快照打开
- python - 使用 python 操作 SVG 文件
- c# - WPF 数据网格绑定到数据表