Beispiel #1
0
        public void unit_of_measurementUpdate()
        {
            DataSet1       dataSet = BL.getUnits();
            List <DataRow> list    = dataSet.unit_of_measurement.Select("").OfType <DataRow>().ToList();

            // Сортируем строки по айдишнику в порядке возрастания
            list.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"]));


            // Обновляем первую запись
            DataSet1.unit_of_measurementRow oldM = null;
            AbstractConnection  connectionN      = null;
            AbstractTransaction transactionN     = null;
            String oldName = "";

            oldM    = dataSet.unit_of_measurement[0];
            oldName = oldM.unit_name;
            dataSet.unit_of_measurement[0].unit_name = oldM.unit_name + "_changed";
            BL.updateUnits(dataSet);


            // Заново читаем из базы, проверяем, что поменялось
            DataSet1       dataSetUpdated = BL.getUnits();
            List <DataRow> list_3         = dataSetUpdated.unit_of_measurement.Select("").OfType <DataRow>().ToList();

            // Сортируем по id
            list_3.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"]));
            // Проверяем что записей столько же
            Assert.That(list_3.Count, Is.EqualTo(15));

            // Достаем ту же запись
            List <DataRow> rows_list = dataSet.unit_of_measurement.Select("id = " + oldM.id).OfType <DataRow>().ToList();

            // Проверяем что по такому id одна запись
            Assert.That(rows_list.Count, Is.EqualTo(1));

            DataSet1.unit_of_measurementRow updatedM = dataSetUpdated.unit_of_measurement[0];

            Assert.That(oldM.id, Is.EqualTo(updatedM.id));

            Assert.That(oldName, !Is.EqualTo(updatedM.unit_name));
            Assert.That(oldName + "_changed", Is.EqualTo(updatedM.unit_name));
        }
        public void unit_of_measurementUpdate()
        {
            UnitsDataAccessor   daUnit      = new UnitsDataAccessor();
            DataSet1            dataSet1    = new DataSet1();
            AbstractConnection  connection  = null;
            AbstractTransaction transaction = null;

            try
            {
                connection = DBFactory.createConnection();
                connection.open();
                transaction = connection.beginTransaction();
                daUnit.Read(connection, transaction, dataSet1);
                transaction.commit();
            }
            catch (Exception e)
            {
                transaction.rollback();
            }
            finally
            {
                connection.close();
            }

            List <DataRow> list = dataSet1.unit_of_measurement.Select("").OfType <DataRow>().ToList();

            // Сортируем строки по айдишнику в порядке возрастания
            list.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"]));


            // Обновляем первую запись
            DataSet1.unit_of_measurementRow oldM = null;
            AbstractConnection  connectionN      = null;
            AbstractTransaction transactionN     = null;
            String oldName = "";

            try
            {
                connectionN = DBFactory.createConnection();
                connectionN.open();
                transactionN = connectionN.beginTransaction();
                oldM         = dataSet1.unit_of_measurement[0];
                oldName      = oldM.unit_name;

                dataSet1.unit_of_measurement[0].unit_name = oldM.unit_name + "_changed";
                daUnit.Update(connectionN, transactionN, dataSet1);
                transactionN.commit();
            }
            catch (Exception e)
            {
                transactionN.rollback();
            }
            finally
            {
                connectionN.close();
            }


            // Заново читаем из базы, проверяем, что поменялось
            UnitsDataAccessor   daUpdated          = new UnitsDataAccessor();
            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.unit_of_measurement.Select("").OfType <DataRow>().ToList();

            // Сортируем по id
            list_3.Sort((x, y) => ((int)x["id"]).CompareTo((int)y["id"]));
            // Проверяем что записей столько же
            Assert.That(list_3.Count, Is.EqualTo(15));

            // Достаем ту же запись
            List <DataRow> rows_list = dataSet1.unit_of_measurement.Select("id = " + oldM.id).OfType <DataRow>().ToList();

            // Проверяем что по такому id одна запись
            Assert.That(rows_list.Count, Is.EqualTo(1));

            DataSet1.unit_of_measurementRow updatedM = dataSetUpdated.unit_of_measurement[0];

            Assert.That(oldM.id, Is.EqualTo(updatedM.id));

            Assert.That(oldName, !Is.EqualTo(updatedM.unit_name));
            Assert.That(oldName + "_changed", Is.EqualTo(updatedM.unit_name));
        }