単体テストでは、「workingDir」システム プロパティを Null に設定する必要があります。
しかし、NullPointerException が発生するため、このようなことはできません。
System.setProperty("workingDir", null);
どうすればいいですか?
単体テストでは、「workingDir」システム プロパティを Null に設定する必要があります。
しかし、NullPointerException が発生するため、このようなことはできません。
System.setProperty("workingDir", null);
どうすればいいですか?
実際の null 値を持つようにプロパティを設定することはできません。次のようにクリアすることしかできません。
System.clearProperty("workingDir");
System.setProperty()
はオブジェクトを使用して内部的に実装されており、そのProperties
オブジェクトは古き良き を使用しますHashtable
。これらのハッシュテーブルでは、メソッドを使用して null 値を設定するput()
ことはできないため、実際にはそのようにすることはできません。Jon Skeet の投稿には解決策があります。
setProperty
メソッドの引数のいずれかが null の場合、メソッドは NullPointerException をスローするため、それを行うことはできません。Jon が提案したように、そこに空の文字列を配置して、単体テストまたは単純に clearProperty で確認することができます。