public void invoiceUpdate() { DataSet1 dataSet = BL.getInvoices(); List <DataRow> list = dataSet.invoice.Select("").OfType <DataRow>().ToList(); // Сортируем строки по айдишнику в порядке возрастания list.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"])); // Обновляем первую запись DataSet1.invoiceRow oldM = dataSet.invoice[0]; String oldName = oldM.invoice_number; dataSet.invoice[0].invoice_number = oldM.invoice_number + "_changed"; BL.updateInvoices(dataSet); // Заново читаем из базы, проверяем, что поменялось DataSet1 dataSetUpdated = BL.getInvoices(); List <DataRow> list_3 = dataSetUpdated.invoice.Select("").OfType <DataRow>().ToList(); // Сортируем по id list_3.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"])); // Проверяем что записей столько же Assert.That(list_3.Count, Is.EqualTo(2)); // Достаем ту же запись List <DataRow> rows_list = dataSet.invoice.Select("id = " + oldM.id).OfType <DataRow>().ToList(); // Проверяем что по такому id одна запись Assert.That(rows_list.Count, Is.EqualTo(1)); DataSet1.invoiceRow updatedM = dataSetUpdated.invoice[0]; Assert.That(oldM.id, Is.EqualTo(updatedM.id)); Assert.That(oldName, !Is.EqualTo(updatedM.invoice_number)); Assert.That(oldName + "_changed", Is.EqualTo(updatedM.invoice_number)); }
public void invoiceUpdate() { InvoiceDataAccessor daInvoice = new InvoiceDataAccessor(); DataSet1 dataSet1 = new DataSet1(); AbstractConnection connection = null; AbstractTransaction transaction = null; try { connection = DBFactory.createConnection(); connection.open(); transaction = connection.beginTransaction(); daInvoice.Read(connection, transaction, dataSet1); transaction.commit(); } catch (Exception e) { transaction.rollback(); } finally { connection.close(); } List<DataRow> list = dataSet1.invoice.Select("").OfType<DataRow>().ToList(); // Сортируем строки по айдишнику в порядке возрастания list.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"])); // Обновляем первую запись DataSet1.invoiceRow oldM = null; AbstractConnection connectionN = null; AbstractTransaction transactionN = null; String oldName = ""; try { connectionN = DBFactory.createConnection(); connectionN.open(); transactionN = connectionN.beginTransaction(); oldM = dataSet1.invoice[0]; oldName = oldM.invoice_number; dataSet1.invoice[0].invoice_number = oldM.invoice_number + "_changed"; daInvoice.Update(connectionN, transactionN, dataSet1); transactionN.commit(); } catch (Exception e) { transactionN.rollback(); } finally { connectionN.close(); } // Заново читаем из базы, проверяем, что поменялось InvoiceDataAccessor daUpdated = new InvoiceDataAccessor(); DataSet1 dataSetUpdated = new DataSet1(); AbstractConnection connectionUpdated = null; AbstractTransaction transactionUpdated = null; try { connectionUpdated = DBFactory.createConnection(); connectionUpdated.open(); transactionUpdated = connectionUpdated.beginTransaction(); daUpdated.Read(connectionUpdated, transactionUpdated, dataSetUpdated); transactionUpdated.commit(); } catch (Exception e) { transactionUpdated.rollback(); } finally { connectionUpdated.close(); } // достаем из датасета все записи таблицы List<DataRow> list_3 = dataSetUpdated.invoice.Select("").OfType<DataRow>().ToList(); // Сортируем по id list_3.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"])); // Проверяем что записей столько же Assert.That(list_3.Count, Is.EqualTo(2)); // Достаем ту же запись List<DataRow> rows_list = dataSet1.invoice.Select("id = " + oldM.id).OfType<DataRow>().ToList(); // Проверяем что по такому id одна запись Assert.That(rows_list.Count, Is.EqualTo(1)); DataSet1.invoiceRow updatedM = dataSetUpdated.invoice[0]; Assert.That(oldM.id, Is.EqualTo(updatedM.id)); Assert.That(oldName, !Is.EqualTo(updatedM.invoice_number)); Assert.That(oldName + "_changed", Is.EqualTo(updatedM.invoice_number)); }