diff --git a/src/Moq/Async/AwaitableFactory.cs b/src/Moq/Async/AwaitableFactory.cs index 908bff4d1..8c51868bf 100644 --- a/src/Moq/Async/AwaitableFactory.cs +++ b/src/Moq/Async/AwaitableFactory.cs @@ -30,7 +30,7 @@ static IAwaitableFactory Create(Type awaitableFactoryType, Type awaitableType) awaitableType.GetGenericArguments())); } - public static IAwaitableFactory TryGet(Type type) + public static IAwaitableFactory? TryGet(Type type) { Debug.Assert(type != null); diff --git a/src/Moq/ExpressionExtensions.cs b/src/Moq/ExpressionExtensions.cs index 51b0058d7..1b2b324af 100644 --- a/src/Moq/ExpressionExtensions.cs +++ b/src/Moq/ExpressionExtensions.cs @@ -296,7 +296,7 @@ void Split(Expression e, out Expression r /* remainder */, out MethodExpectation var memberAccessExpression = (MemberExpression)e; Debug.Assert(memberAccessExpression.Member is PropertyInfo); - if (IsResult(memberAccessExpression.Member, out var awaitableFactory)) + if (IsResult(memberAccessExpression.Member, out var awaitableFactory) && awaitableFactory is not null) { Split(memberAccessExpression.Expression, out r, out p); p.AddResultExpression( @@ -339,7 +339,7 @@ void Split(Expression e, out Expression r /* remainder */, out MethodExpectation } } - bool IsResult(MemberInfo member, out IAwaitableFactory awaitableFactory) + bool IsResult(MemberInfo member, out IAwaitableFactory? awaitableFactory) { var instanceType = member.DeclaringType; awaitableFactory = AwaitableFactory.TryGet(instanceType);