Linq를 사용하여 DocumentDb를 쿼리하는 메소드를 유닛 테스트해야하며 사전 정의 된 UserDefinedFunction "IS_DEFINED"중 하나를 사용합니다. 이 메서드는 unittest이 DocumentDb 부분 조롱을 시도 할 때 예외가 throw됩니다 "이 메서드는 Linq 식 내에서 사용자 정의 함수 호출"호출해야합니다.UserDefinedFunction을 이용한 단위 테스트 메소드
public void GetRequiredData()
{
var data = docDbClient.GetDataAsQueryable("some parameters").Where((bool)UserDefinedFunctionProvider.Invoke("IS_DEFINED"), somefield);
}
GetDataAsQueryable 방법 I 조롱 documentDb로부터 데이터를 얻을 수 있지만,이 단위 테스트 범위에서 사용할 수없는 등의 예외 UserDefinedFunctionProvider.Invoke 던진다.
어떻게하면 UDF를 조롱 할 수 있습니까? 이 방법을 단위 테스트 할 수있는 다른 방법이 있습니까?
[업데이트]
나는이 오류의 원인은 무엇
"Null 허용 개체 값이 있어야합니다"그것은 오류가 발생합니다
Expression<Func<object, bool>> expr = obj => (bool) UserDefinedFunctionProvider.Invoke("IS_DEFINED", obj);
var data = docDbClient.GetDataAsQueryable("some parameters").Where(expr.Compile()(someobject));
아래 같은 식 무언가를 사용하여 시도 및 그것을 고치는 방법?