无法使用空参数模拟枚举静态方法
Unable to mock enum static method with null parameter
我正在尝试模拟枚举的静态方法,它具有如下所示的空值
try (MockedStatic<SomEnum> e = Mockito.mockStatic(SomEnum.class)) {
e.when(() -> SomEnum.methodWhichAcceptingNullParam(any())).thenReturn(somValue);
}
此处 any() 不起作用...我不确定我是否在方法内部传递空参数
methodWhichAcceptingNullParam
我已经尝试过任何 isNull.The 事实上 SomEnum.methodWhichAcceptingNullParam 总是被调用但是它不应该因为我已经提供了一个模拟值
有什么帮助吗?
您的代码是使用空对象还是非空对象调用的?此信息丢失(至少对我而言)。
假设你调用的是SomeEnum.methodWhichAcceptingNullParam(null),那么你需要使用
ArgumentMatchers.isNull()
而不是 any()。
我正在尝试模拟枚举的静态方法,它具有如下所示的空值
try (MockedStatic<SomEnum> e = Mockito.mockStatic(SomEnum.class)) {
e.when(() -> SomEnum.methodWhichAcceptingNullParam(any())).thenReturn(somValue);
}
此处 any() 不起作用...我不确定我是否在方法内部传递空参数
methodWhichAcceptingNullParam
我已经尝试过任何 isNull.The 事实上 SomEnum.methodWhichAcceptingNullParam 总是被调用但是它不应该因为我已经提供了一个模拟值
有什么帮助吗?
您的代码是使用空对象还是非空对象调用的?此信息丢失(至少对我而言)。
假设你调用的是SomeEnum.methodWhichAcceptingNullParam(null),那么你需要使用
ArgumentMatchers.isNull()
而不是 any()。