using System.Data.Common;
using System.Collections.Generic;
public string StringProperty { get; set; }
public int IntegerProperty { get; set; }
private static void TestMoqDapperExecuteAsyncIDbConnectionWithoutTransaction()
var connection = new Mock<IDbConnection>();
connection.SetupDapperAsync(c => c.QueryAsync<int>(It.IsAny<string>(), It.IsAny<object>(), It.IsAny<IDbTransaction>(), It.IsAny<int>(), It.IsAny<CommandType>()))
.ReturnsAsync(new List<int>
var result = connection.Object
Console.WriteLine(string.Format(" Test without transaction {0}", result.Count() != 0 ? "PASSED" : "FAILED"));
private static void TestMoqDapperExecuteAsyncIDbConnectionWithTransaction()
var connection = new Mock<IDbConnection>();
var tran= new Mock<IDbTransaction>();
connection.SetupDapperAsync(c => c.QueryAsync<int>(It.IsAny<string>(), It.IsAny<object>(), It.IsAny<IDbTransaction>(), It.IsAny<int>(), It.IsAny<CommandType>()))
.ReturnsAsync(new List<int>
var result = connection.Object
.QueryAsync<int>("",null,tran.Object)
Console.WriteLine(string.Format("Test with transaction {0}", result.Count() != 0 ? "PASSED" : "FAILED"));
public static void Main()
TestMoqDapperExecuteAsyncIDbConnectionWithoutTransaction();
TestMoqDapperExecuteAsyncIDbConnectionWithTransaction();