単一の列挙型をモックできることはわかっていますが ( How to mock an enum singleton class using Mockito/Powermock? を使用)、1000 個の列挙値があり、5 つの異なるコンストラクターを呼び出すことができます。列挙型の値は、開発中に頻繁に変更されます。
JUnit テスト用に本当に 1 つか 2 つだけをモックしたいのです。残りは気にしませんが、それらはまだインスタンス化されており、ファイルシステムから列挙型の値をロードする厄介なものを呼び出します。
はい、私はそれが非常に悪いデザインであることを知っています. しかし、今はそれを変更する時間がありません。
現在、Mockito/powermock を使用しています。しかし、このsh **を解決できるフレームワークは何でも、つまり、悪い設計は大歓迎です。
これに似た列挙型があるとしましょう:
public static enum MyEnum {
A(OtherEnum.CONSTANT),
B("1"),
C("1", OtherEnum.CONSTANT),
//...and so on for again 1000 enum values :(
private double value;
private String defaultValue;
private OtherEnum value;
/* Getter/Setter */
/* constructors */
}