Basit Bir Mock Framework Geliştirelim 2
2023-05-11 | #diy-mocking-framework #do-it-yourself #mock #net #reflection
Artık interface lerle çalışalım. Öncelikle, System.Reflection.DispatchProxy‘yi kullanacağız. Bu, bir proxy sınıfı oluşturmanıza ve ona method çağrılarını yönlendirmenize olanak sağlar. DispatchProxy‘yi kullanarak belirli bir arayüzün metotlarını mocklayalım. using System; using System.Collections.Generic; using System.Reflection; public class Mock<T> : DispatchProxy { private readonly Dictionary<string, object> _methodResponses = new(); protected override object Invoke(MethodInfo targetMethod, object[] args) { if (_methodResponses.TryGetValue(targetMethod.Name, out var value)) { return value; } throw new Exception($"No response set up for method {targetMethod.