我想为枚举的所有实例模拟方法shouldShow()。有人可以帮忙吗?
public enum MyButton implements ListButton {
Button1(
R.drawable.drawable1) {
// Some methods here
},
Button2(
R.drawable.drawable2) {
//Some methods here
};
@Override
public boolean shouldShow() {
//Some logic that decides whether to show the button or not
}
}
我想对其进行模拟,以便如果我调用Button1.shouldShow或Button2.shouldShow或enum.shouldShow中的任何其他值,则我的存根应该返回true。
最佳答案
我想shouldShow()
方法是ListButton
接口的一部分。如果您的设计经过深思熟虑,则您很可能应该嘲笑ListButton
,而不是对任何特定MyButton
会发生什么。
Java枚举常量本质上是公共静态最终字段,因此在特定的shouldShow()
常量上模拟MyButton
方法就等于在静态final字段上模拟方法。
关于java - 枚举Java所有实例的Mock方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45290315/