Files
Dapper/DapperTests NET35/Tests.cs
T
Caio Proiete 081682fd93 Add mapping for query fields containing underscores to properties with the same name without underscores
Example:
Database field "Customer_ID" is now mapped to class property/field "CustomerID" (case insensitive)
2013-07-18 21:01:26 -03:00

61 lines
1.9 KiB
C#

using System.Data.SqlClient;
using System.Linq;
using Dapper;
using SqlMapper;
using System.Data;
namespace DapperTests_NET35
{
public class Tests
{
SqlConnection connection = Program.GetOpenConnection();
public void TestBasicStringUsage()
{
var arr = connection.Query<string>("select 'abc' as [Value] union all select @txt", new {txt = "def"}).ToArray();
arr.IsSequenceEqualTo(new[] { "abc", "def" });
}
public void TestClassWithStringUsage()
{
var arr = connection.Query<BasicType>("select 'abc' as [Value], '123' as [Another_Value] union all select @txt, @txt2", new { txt = "def", txt2 = "456" }).ToArray();
arr.Select(x => x.Value).IsSequenceEqualTo(new[] { "abc", "def" });
arr.Select(x => x.AnotherValue).IsSequenceEqualTo(new[] { "123", "456" });
}
class BasicType
{
public string Value { get; set; }
public string AnotherValue { get; set; }
}
public void TestDynamicSimulatedQuery() {
var rows = connection.Query("select 1 A, 2 B union all select 3, 4", null).ToList();
((int)rows[0]["A"])
.IsEqualTo(1);
((int)rows[0]["B"])
.IsEqualTo(2);
((int)rows[1]["A"])
.IsEqualTo(3);
((int)rows[1]["B"])
.IsEqualTo(4);
}
public void TestMultiple()
{
using (var grid = connection.QueryMultiple("select 1; select 2; select 3", null, CommandType.Text))
{
int i = grid.Read<int>().Single();
int j = grid.Read<int>().Single();
int k = grid.Read<int>().Single();
i.Equals(1);
j.Equals(2);
k.Equals(3);
}
}
}
}