コード例 #1
0
        public void ExecuteStatementMultipleRowMultipleColumnTest()
        {
            // Arrange
            var helper    = new ProcedureHelper();
            var procedure = new Procedure("proc", "proc", null, null, new List <Select> {
                new Select(new List <SelectColumn> {
                    new SelectColumn("col1", DataTypeHelper.Instance.GetMap(TypeFormat.DotNetFrameworkType, "Int32?"), true),
                    new SelectColumn("col2", DataTypeHelper.Instance.GetMap(TypeFormat.DotNetFrameworkType, "String"), true),
                }, false, null)
            });

            // Act
            var result = helper.GetExecuteStatement(procedure);

            // Assert
            Assert.AreEqual(@"using(var reader = cmd.ExecuteReader(CommandBehavior.SequentialAccess))
{
	result.RecordsAffected = reader.RecordsAffected;
	var list = new List<procOutputDto>();
	while (reader.Read())
	{
		var item = new procOutputDto();
		item.col1 = !reader.IsDBNull(0) ? reader.GetInt32(0) : default(Int32?);
		item.col2 = !reader.IsDBNull(1) ? reader.GetString(1) : default(String);
		list.Add(item);
	}
	result.Data = list;
	reader.Close();
}
", result);
        }
コード例 #2
0
        public void ExecuteStatementNoSelectTest()
        {
            // Arrange
            var helper    = new ProcedureHelper();
            var procedure = new Procedure("proc", "proc", null, null, null);

            // Act
            var result = helper.GetExecuteStatement(procedure);

            // Assert
            Assert.AreEqual("result = cmd.ExecuteNonQuery();\r\n", result);
        }
コード例 #3
0
        public void ExecuteStatementSingleValueTest()
        {
            // Arrange
            var helper    = new ProcedureHelper();
            var procedure = new Procedure("proc", "proc", null, null, new List <Select> {
                new Select(new List <SelectColumn> {
                    new SelectColumn("col1", DataTypeHelper.Instance.GetMap(TypeFormat.DotNetFrameworkType, "Int32?"), false)
                }, true, null)
            });

            // Act
            var result = helper.GetExecuteStatement(procedure);

            // Assert
            Assert.AreEqual("result = (Int32)cmd.ExecuteScalar();\r\n", result);
        }
コード例 #4
0
        public void ExecuteStatementSingleValueTest()
        {
            // Arrange
            var helper = new ProcedureHelper();
            var procedure = new Procedure("proc", "proc", null, null, new List<Select>{
                new Select(new List<SelectColumn>{
                    new SelectColumn("col1", DataTypeHelper.Instance.GetMap(TypeFormat.DotNetFrameworkType, "Int32?"), false)
                }, true, null)
            });

            // Act
            var result = helper.GetExecuteStatement(procedure);

            // Assert
            Assert.AreEqual("result = (Int32)cmd.ExecuteScalar();\r\n", result);
        }
コード例 #5
0
        public void ExecuteStatementSingleRowMulipleColumnTest()
        {
            // Arrange
            var helper = new ProcedureHelper();
            var procedure = new Procedure("proc", "proc", null, null, new List<Select>{
                new Select(new List<SelectColumn>{
                    new SelectColumn("col1", DataTypeHelper.Instance.GetMap(TypeFormat.DotNetFrameworkType, "Int32?"), true),
                    new SelectColumn("col2", DataTypeHelper.Instance.GetMap(TypeFormat.DotNetFrameworkType, "String"), true),
                }, true, null)
            });

            // Act
            var result = helper.GetExecuteStatement(procedure);

            // Assert
            Assert.AreEqual(@"using(var reader = cmd.ExecuteReader(CommandBehavior.SequentialAccess))
            {
            result.RecordsAffected = reader.RecordsAffected;
            while (reader.Read())
            {
            var item = new procOutputDto();
            item.col1 = !reader.IsDBNull(0) ? reader.GetInt32(0) : default(Int32?);
            item.col2 = !reader.IsDBNull(1) ? reader.GetString(1) : default(String);
            result.Data = item;
            }
            reader.Close();
            }
            ", result);
        }
コード例 #6
0
        public void ExecuteStatementNoSelectTest()
        {
            // Arrange
            var helper = new ProcedureHelper();
            var procedure = new Procedure("proc", "proc", null, null, null);

            // Act
            var result = helper.GetExecuteStatement(procedure);

            // Assert
            Assert.AreEqual("result = cmd.ExecuteNonQuery();\r\n", result);
        }