public void materialUpdate() { DataSet1 dataSet1 = BL.getMaterials(); List <DataRow> list = dataSet1.material.Select("").OfType <DataRow>().ToList(); // Сортируем строки по id в порядке возрастания list.Sort((a, b) => ((int)a["id"]).CompareTo((int)b["id"])); // Обновляем первую запись DataSet1.materialRow oldM = null; String oldName = ""; oldM = dataSet1.material[0]; oldName = oldM.name_material; dataSet1.material[0].name_material = oldM.name_material + "_changed"; BL.updateMaterials(dataSet1); // Заново читаем из базы, проверяем, что поменялось DataSet1 dataSetUpdated = BL.getMaterials(); // достаем из датасета все записи таблицы List <DataRow> list_3 = dataSetUpdated.material.Select("").OfType <DataRow>().ToList(); // Сортируем по id list_3.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"])); // Проверяем что записей столько же Assert.That(list_3.Count, Is.EqualTo(8)); // Достаем ту же запись List <DataRow> rows_list = dataSet1.material.Select("id = " + oldM.id).OfType <DataRow>().ToList(); // Проверяем что по такому id одна запись Assert.That(rows_list.Count, Is.EqualTo(1)); DataSet1.materialRow updatedM = dataSetUpdated.material[0]; Assert.That(oldM.id, Is.EqualTo(updatedM.id)); Assert.That(oldName, !Is.EqualTo(updatedM.name_material)); Assert.That(oldName + "_changed", Is.EqualTo(updatedM.name_material)); }
public void materialUpdate() { MaterialDataAccessor daMaterial = new MaterialDataAccessor(); DataSet1 dataSet1 = new DataSet1(); AbstractConnection connection = null; AbstractTransaction transaction = null; try { connection = DBFactory.createConnection(); connection.open(); transaction = connection.beginTransaction(); daMaterial.Read(connection, transaction, dataSet1); transaction.commit(); } catch (Exception e) { transaction.rollback(); } finally { connection.close(); } List <DataRow> list = dataSet1.material.Select("").OfType <DataRow>().ToList(); // Сортируем строки по айдишнику в порядке возрастания list.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"])); // Assert.That(list.Count, Is.EqualTo(2)); // всего две строки // Обновляем первую запись //CarDTO oldCarDTO = null; DataSet1.materialRow oldM = null; AbstractConnection connectionN = null; AbstractTransaction transactionN = null; String oldName = ""; try { connectionN = DBFactory.createConnection(); connectionN.open(); transactionN = connectionN.beginTransaction(); oldM = dataSet1.material[0]; oldName = oldM.name_material; // oldCarDTO = new CarDTO(dataSet1.car[0]); dataSet1.material[0].name_material = oldM.name_material + "_changed"; daMaterial.Update(connectionN, transactionN, dataSet1); transactionN.commit(); } catch (Exception e) { transactionN.rollback(); } finally { connectionN.close(); } // Заново читаем из базы, проверяем, что поменялось MaterialDataAccessor daUpdated = new MaterialDataAccessor(); 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.material.Select("").OfType <DataRow>().ToList(); // Сортируем по id list_3.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"])); // Проверяем что записей столько же Assert.That(list_3.Count, Is.EqualTo(8)); // Достае ту же запись List <DataRow> rows_list = dataSet1.material.Select("id = " + oldM.id).OfType <DataRow>().ToList(); // Проверяем что по такому id одна запись Assert.That(rows_list.Count, Is.EqualTo(1)); DataSet1.materialRow updatedM = dataSetUpdated.material[0]; Assert.That(oldM.id, Is.EqualTo(updatedM.id)); Assert.That(oldName, !Is.EqualTo(updatedM.name_material)); Assert.That(oldName + "_changed", Is.EqualTo(updatedM.name_material)); }