You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
■my test procedure
CREATE PROCEDURE [dbo].[OutputDemo] @name varchar(50), @Age int,
@resName varchar(50) OUTPUT, @reSage int OUTPUT
AS
if @Age >=100
begin
SET @reSage= @Age * 2
SET @resName = 'Name: ' + @name
end
else
begin
SET @reSage= @Age + 10
SET @resName = 'Name: ' + @name
end
■my unit test(TestProject1.dll)
public class UnitTest1 {
[TestMethod]
public void TestMethod1() {
//var db = new PetaPoco.Database("Data Source=.;Initial Catalog=AdventureWorks2008R2;Trusted_connection=True;Application Name=SQLCC", "System.Date.SqlClient");
var db = new PetaPoco.Database("Data Source=WIN-IVB0M9502MI\\SqlExpress;Initial Catalog=master;Persist Security Info=True;User ID=sa;Password=ko580501@_;Application Name=SQLCC", "System.Date.SqlClient");
var opName = new SqlParameter("@resName", SqlDbType.VarChar);
opName.Direction = ParameterDirection.Output;
opName.Size = 50;
var opAge = new SqlParameter("@resAge", SqlDbType.Int);
opAge.Direction = ParameterDirection.Output;
opAge.Size = 20;
var s = Sql.Builder.Append(";EXEC OutputDemo @0, @1, @2 OUTPUT, @3 OUTPUT",
"Markus299",
299,
opName,
opAge
);
db.Execute(s);
System.Console.WriteLine(opName.SqlValue);
System.Console.WriteLine(opAge.SqlValue);
}
[TestMethod]
public void TestMethod2() {
//var db = new PetaPoco.Database("Data Source=.;Initial Catalog=AdventureWorks2008R2;Trusted_connection=True;Application Name=SQLCC", "System.Date.SqlClient");
var db = new PetaPoco.Database("Data Source=SqlExpress;Initial Catalog=master;Persist Security Info=True;User ID=sa;Password=passwd;Application Name=SQLCC", "System.Date.SqlClient");
var opName = new SqlParameter("@resName", SqlDbType.VarChar);
opName.Direction = ParameterDirection.Output;
opName.Size = 50;
var opAge = new SqlParameter("@resAge", SqlDbType.Int);
opAge.Direction = ParameterDirection.Output;
opAge.Size = 20;
var s = Sql.Builder.Append(";EXEC OutputDemo @0, @1, @2 OUTPUT, @3 OUTPUT",
"Markus99",
99,
opName,
opAge
);
db.Execute(s);
System.Console.WriteLine(opName.SqlValue);
System.Console.WriteLine(opAge.SqlValue);
}
}
■my test procedure
CREATE PROCEDURE [dbo].[OutputDemo]
@name varchar(50),
@Age int,
@resName varchar(50) OUTPUT,
@reSage int OUTPUT
AS
if @Age >=100
begin
SET @reSage= @Age * 2
SET @resName = 'Name: ' + @name
end
else
begin
SET @reSage= @Age + 10
SET @resName = 'Name: ' + @name
end
■my unit test(TestProject1.dll)
public class UnitTest1 {
[TestMethod]
public void TestMethod1() {
■run it
sqlcc --app.mode=start --action=execute --target="mstest.exe" --targetArgs="/testcontainer:TestProject1.dll" --traceFileName="TraceFile"
sqlcc --app.mode=stop --action=generate --traceFileName="TraceFile"
■result
Type Schema ObjectName FLOC LOC Characters %Covered
PROCEDURE dbo OutputDemo 16 16 301 56.06
Covere show 56.06% ,shoud be 100% I think?
my test case should be passed all code route.
The text was updated successfully, but these errors were encountered: