public void ExecuteRowTyped_Test() { using (var cmd = new DatabaseCommand(_connection)) { cmd.Log = Console.WriteLine; cmd.CommandText = "SELECT * FROM EMP WHERE EMPNO = 7369"; EMP emp = cmd.ExecuteRow <EMP>(); Assert.AreEqual(7369, emp.EmpNo); } }
public void ExecuteRow_NoData_Test() { using (var cmd = new DatabaseCommand(_connection)) { cmd.Log = Console.WriteLine; cmd.CommandText = "SELECT * FROM EMP WHERE EMPNO = 99999"; EMP emp = cmd.ExecuteRow <EMP>(); Assert.AreEqual(null, emp); } }
public void ExecuteNonQuery_Transaction_Test() { using (var cmd = new DatabaseCommand(_connection)) { cmd.Log = Console.WriteLine; cmd.CommandText.AppendLine(" DELETE FROM EMP "); cmd.TransactionBegin(); cmd.ExecuteNonQuery(); cmd.TransactionRollback(); Assert.AreEqual(EMP.GetEmployeesCount(_connection), 14); } }
public void ExecuteTableTyped_Test() { using (var cmd = new DatabaseCommand(_connection)) { cmd.Log = Console.WriteLine; cmd.CommandText = " SELECT EMPNO, ENAME, HIREDATE, COMM, MGR FROM EMP "; EMP[] data = cmd.ExecuteTable <EMP>().ToArray(); EMP smith = data.FirstOrDefault(i => i.EmpNo == 7369); Assert.AreEqual(EMP.Smith.EmpNo, smith.EmpNo); Assert.AreEqual(EMP.Smith.EName, smith.EName); Assert.AreEqual(EMP.Smith.HireDate, smith.HireDate); Assert.AreEqual(EMP.Smith.Comm, smith.Comm); } }
public void ExecuteTableTypedWithColumnAttribute_Test() { using (var cmd = new DatabaseCommand(_connection)) { cmd.Log = Console.WriteLine; cmd.CommandText = " SELECT EMPNO, ENAME, SAL, HIREDATE, COMM, MGR FROM EMP "; var data = cmd.ExecuteTable <EMP>(); EMP smith = data.FirstOrDefault(i => i.EmpNo == 7369); Assert.AreEqual(smith.EmpNo, EMP.Smith.EmpNo); Assert.AreEqual(smith.EName, EMP.Smith.EName); Assert.AreEqual(smith.HireDate, EMP.Smith.HireDate); Assert.AreEqual(smith.Comm, EMP.Smith.Comm); Assert.AreEqual(smith.Salary, EMP.Smith.Salary); } }
public async Task ExecuteNonQueryAsync_Transaction_Test() { using (var cmd = new DatabaseCommand(_connection)) { cmd.Log = Console.WriteLine; cmd.CommandText.AppendLine(" DELETE FROM EMP "); cmd.TransactionBegin(); int count = await cmd.ExecuteNonQueryAsync(); cmd.TransactionRollback(); Assert.AreEqual(14, count); Assert.AreEqual(14, EMP.GetEmployeesCount(_connection)); } }
public void ExecuteRowWithConverter_Test() { using (var cmd = new DatabaseCommand(_connection)) { cmd.Log = Console.WriteLine; cmd.CommandText = " SELECT * FROM EMP WHERE EMPNO = 7369"; EMP emp = cmd.ExecuteRow <EMP>((row) => { return(new EMP() { EmpNo = Convert.ToInt32(row["EMPNO"]), EName = Convert.ToString(row["ENAME"]) }); }); Assert.AreEqual(7369, emp.EmpNo); } }
public void ExecuteNonQuery_TransactionForTwoCommands_Test() { DbTransaction currentTransaction; using (var cmd = new DatabaseCommand(_connection)) { cmd.Log = Console.WriteLine; cmd.CommandText.AppendLine(" DELETE FROM EMP "); currentTransaction = cmd.TransactionBegin(); cmd.ExecuteNonQuery(); Assert.AreEqual(EMP.GetEmployeesCount(currentTransaction), 0); // Inside the transaction cmd.TransactionRollback(); Assert.AreEqual(EMP.GetEmployeesCount(_connection), 14); // Ouside the transaction } }
public void Transaction_GetInternalTransaction_Test() { using (var cmd = new DatabaseCommand(_connection)) { cmd.Log = Console.WriteLine; cmd.CommandText.AppendLine(" DELETE FROM EMP "); var trans1 = DataExtensions.GetTransaction(_connection); var trans2A = cmd.TransactionBegin(); var trans2B = DataExtensions.GetTransaction(_connection); cmd.ExecuteNonQuery(); cmd.TransactionRollback(); var trans3 = DataExtensions.GetTransaction(_connection); Assert.AreEqual(EMP.GetEmployeesCount(_connection), 14); Assert.AreEqual(null, trans1); Assert.AreEqual(trans2A, trans2B); Assert.AreEqual(null, trans3); } }
public void ExecuteNonQuery_DefineTransactionBefore_Test() { using (var transaction = _connection.BeginTransaction()) { using (var cmd = new DatabaseCommand(transaction)) { cmd.Log = Console.WriteLine; cmd.CommandText.AppendLine(" INSERT INTO EMP (EMPNO, ENAME) VALUES (1234, 'ABC') "); cmd.ExecuteNonQuery(); } using (var cmd = new DatabaseCommand(transaction)) { cmd.Log = Console.WriteLine; cmd.CommandText.AppendLine(" INSERT INTO EMP (EMPNO, ENAME) VALUES (9876, 'XYZ') "); cmd.ExecuteNonQuery(); } transaction.Rollback(); Assert.AreEqual(EMP.GetEmployeesCount(_connection), 14); } }