驗證例外情境
@Test(Exptected=xxx.clss) 是一種方法,但有其侷限性。
UdeExptectedException
參考org.junit.rules.ExpectedException用法,可用於檢驗異常流程是否抛出預期例外。 已有在UDETest中預設宣告。
@Rule public UdeExpectedException thrown = new UdeExpectedException();
// 使用例:
@Test public void xx(){
final Map<String, String> map = JsonUtils.toMap("{MyPATH:'${config.path}/path1'}");
final LogicalFileLocations locations = new LogicalFileLocations(map);
UdeFieldUtils.write(this.target, "loadedResource", locations);
this.thrown.expect(UdeMessage.UDE0202E);
this.thrown.expectMessage("DEFAULT");
this.target.toRealFile(new LogicalFile(MockLocation.DEFAULT, "A.txt"));
}