public static void Main()
Mock<IResponder> responder = new Mock<IResponder>();
It.IsAny<string>(), ref refInt, ref refDbl
var (res, integer, dbl) = responder.Object.Extension("name1");
Console.WriteLine($"{res}: {integer} {dbl}");
public interface IResponder {
bool Request(string Name, ref int value1, ref double value2);
public static class ResponderExt{
public static (bool, int, double) Extension(this IResponder responder, string name)
return responder.Extension(name, ref integer, ref dbl);
public static (bool, int, double) Extension(this IResponder responder, string name, ref int integer, ref double dbl)
var res = responder.Request(name, ref integer, ref dbl);
return (res, integer, dbl);