Skip to content

Commit 7efa00c

Browse files
committed
Test fix
1 parent 2f1c408 commit 7efa00c

File tree

3 files changed

+38
-80
lines changed

3 files changed

+38
-80
lines changed

src/CfCommand.ExecuteReader.cs

Lines changed: 0 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -38,47 +38,6 @@ public IDataReader ExecuteReader(CfCommandType cmdType, string cmdText, object c
3838
{
3939
var cfParams = ConvertObjectToCfParameters(cmdParms);
4040
return ExecuteReader(cmdType, cmdText, cfParams);
41-
try
42-
{
43-
IList<CfParameter> cfParams = null;
44-
if (cmdParms != null)
45-
{
46-
if (!(cmdParms is IEnumerable<CfParameter>))
47-
{
48-
49-
var props = cmdParms as ExpandoObject as IDictionary<string, object>;
50-
if (props != null)
51-
{
52-
cfParams = new List<CfParameter>(props.Count());
53-
foreach (var p in props)
54-
{
55-
cfParams.Add(new CfParameter(p.Key, p.Value));
56-
}
57-
}
58-
else
59-
{
60-
var properties = cmdParms.GetType().GetProperties();
61-
if (properties.Any())
62-
{
63-
cfParams = new List<CfParameter>(properties.Count());
64-
foreach (var property in properties)
65-
{
66-
cfParams.Add(new CfParameter(property.Name, property.GetValue(cmdParms, null)));
67-
}
68-
}
69-
}
70-
}
71-
}
72-
73-
_conn.EstablishFactoryConnection();
74-
PrepareCommand(cmdType, cmdText, cfParams);
75-
return _cmd.ExecuteReader(CommandBehavior.CloseConnection);
76-
}
77-
catch (Exception ex)
78-
{
79-
Logger.Error(ex);
80-
throw new CfException("Unknown Error (Connection Factory: ExecuteReader) " + ex.Message, ex);
81-
}
8241
}
8342
#endregion
8443
}

test/ConnectionFactoryTest/App.config

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@
1212
<compilation debug="true" targetFramework="4.0.3" />
1313
</system.web>
1414
<connectionStrings>
15+
<add name="AppVeyor" connectionString="Data Source=.\sqlexpress;Initial Catalog=dtb_PortalDAT;Integrated Security=True"
16+
providerName="System.Data.SqlClient" />
17+
1518
<add name="teste" connectionString="Data Source=.\sqlexpress;Initial Catalog=dtb_PortalDAT;Integrated Security=True"
1619
providerName="System.Data.SqlClient" />
1720
</connectionStrings>

test/ConnectionFactoryTest/UnitTest1.cs

Lines changed: 35 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using ConnectionFactory;
1+
using System;
2+
using ConnectionFactory;
23
using Microsoft.VisualStudio.TestTools.UnitTesting;
34
using System.Collections.Generic;
45
using System.Data.Common;
@@ -9,63 +10,58 @@ namespace ConnectionFactoryTest
910
[TestClass]
1011
public class UnitTest1
1112
{
13+
protected static readonly bool IsAppVeyor = Environment.GetEnvironmentVariable("Appveyor")?.ToUpperInvariant() == "TRUE";
14+
15+
protected static string ConnName => IsAppVeyor ? "AppVeyor" : "teste";
16+
1217
[TestMethod]
1318
public void TestCommandWithDynamicParameters()
1419
{
15-
try
20+
string returnValue = null;
21+
using (var conn = new CfConnection(ConnName))
1622
{
17-
using (var conn = new CfConnection("teste"))
18-
{
19-
var cmd = conn.CreateCfCommand();
23+
var cmd = conn.CreateCfCommand();
2024

21-
DbDataReader result = (DbDataReader)cmd.ExecuteReader(CfCommandType.Text,
22-
"select * from sisuser.sis_user where login = @login",
23-
new { login = "andersonn" });
25+
DbDataReader result = (DbDataReader)cmd.ExecuteReader(CfCommandType.Text,
26+
@"select *
27+
from(select 'user1' as login) as t
28+
where login = 'user1'",
29+
new { login = "user1" });
2430

25-
if (result.Read())
26-
{
27-
var ret = result["login"].ToString();
28-
Assert.IsTrue(!string.IsNullOrEmpty(ret));
29-
}
31+
if (result.Read())
32+
{
33+
returnValue = result["login"].ToString();
3034
}
31-
32-
Assert.IsTrue(true);
33-
}
34-
catch
35-
{
36-
Assert.Fail();
3735
}
36+
37+
Assert.AreEqual(returnValue, "user1");
38+
3839
}
3940

4041
[TestMethod]
4142
public void TestCommandWithExpandoObjectParameters()
4243
{
43-
try
44+
string returnValue = null;
45+
using (var conn = new CfConnection(ConnName))
4446
{
45-
using (var conn = new CfConnection("teste"))
46-
{
47-
var cmd = conn.CreateCfCommand();
47+
var cmd = conn.CreateCfCommand();
4848

49-
var paramters = new ExpandoObject() as IDictionary<string, object>;
50-
paramters.Add("login", "andersonn");
49+
var paramters = new ExpandoObject() as IDictionary<string, object>;
50+
paramters.Add("login", "andersonn");
5151

52-
DbDataReader result = (DbDataReader)cmd.ExecuteReader(CfCommandType.Text,
53-
"select * from sisuser.sis_user where login = @login",
54-
paramters);
52+
DbDataReader result = (DbDataReader)cmd.ExecuteReader(CfCommandType.Text,
53+
@"select *
54+
from(select 'user1' as login) as t
55+
where login = 'user1'",
56+
paramters);
5557

56-
if (result.Read())
57-
{
58-
var ret = result["login"].ToString();
59-
Assert.IsTrue(!string.IsNullOrEmpty(ret));
60-
}
58+
if (result.Read())
59+
{
60+
returnValue = result["login"].ToString();
6161
}
62-
63-
Assert.IsTrue(true);
64-
}
65-
catch
66-
{
67-
Assert.Fail();
6862
}
63+
64+
Assert.AreEqual(returnValue, "user1");
6965
}
7066

7167
}

0 commit comments

Comments
 (0)