public void FixUpdList_FjernerDuplicates_ListCount3_Success()
        {
            // Arrange
            var listInsertOrUpdate = new List <Ejerlav>();
            var listDelete         = new List <Ejerlav>();

            JObject update1item = JObject.Parse(TxidEjerlav1u);

            Ejerlav update1 = new Ejerlav()
            {
                Kode = 101
            };

            update1.SetEntityFields(update1item);

            JObject update2item = JObject.Parse(TxidEjerlav2u);

            Ejerlav update2 = new Ejerlav()
            {
                Kode = 101
            };

            update2.SetEntityFields(update2item);

            JObject update3item = JObject.Parse(TxidEjerlav3u);

            Ejerlav update3 = new Ejerlav()
            {
                Kode = 101
            };

            update3.SetEntityFields(update3item);

            listInsertOrUpdate.Add(update1);
            listInsertOrUpdate.Add(update2);
            listInsertOrUpdate.Add(update3);

            int expectedDelCount    = 0;
            int expectedUpsertCount = 1;
            int expectedTxid        = 8;

            // Act
            UpdateEntityHelper.ProcessOperationLists(listDelete, listInsertOrUpdate);

            // Assert
            int  delCount    = listDelete.Count();
            int  upsertCount = listInsertOrUpdate.Count();
            long txid        = listInsertOrUpdate[0].EntityTxid;


            Assert.AreEqual(expectedDelCount, delCount);
            Assert.AreEqual(expectedUpsertCount, upsertCount);
            Assert.AreEqual(expectedTxid, txid);
        }
        public void FixList_NoDuplicates_Success()
        {
            // Arrange
            var listInsertOrUpdate = new List <Ejerlav>();
            var listDelete         = new List <Ejerlav>();

            JObject update1item = JObject.Parse(TxidEjerlav1u);

            Ejerlav update1 = new Ejerlav()
            {
                Kode = 101
            };

            update1.SetEntityFields(update1item);

            JObject update2item = JObject.Parse(TxidEjerlav2u);

            Ejerlav update2 = new Ejerlav()
            {
                Kode = 102
            };

            update2.SetEntityFields(update2item);

            JObject update3item = JObject.Parse(TxidEjerlav3u);

            Ejerlav update3 = new Ejerlav()
            {
                Kode = 103
            };

            update3.SetEntityFields(update3item);

            JObject delete1item = JObject.Parse(TxidEjerlav3d);

            Ejerlav delete1 = new Ejerlav()
            {
                Kode = 104
            };

            delete1.SetEntityFields(delete1item);

            JObject delete2item = JObject.Parse(TxidEjerlav4d);

            Ejerlav delete2 = new Ejerlav()
            {
                Kode = 105
            };

            delete2.SetEntityFields(delete2item);

            JObject delete3item = JObject.Parse(TxidEjerlav5d);

            Ejerlav delete3 = new Ejerlav()
            {
                Kode = 106
            };

            delete3.SetEntityFields(delete3item);


            listInsertOrUpdate.Add(update1);
            listInsertOrUpdate.Add(update2);
            listDelete.Add(delete1);
            listDelete.Add(delete2);
            listDelete.Add(delete3);
            listInsertOrUpdate.Add(update3);
            int expectedDelCount    = 3;
            int expectedUpsertCount = 3;
            int expectedTxid        = 8;

            // Act
            UpdateEntityHelper.ProcessOperationLists(listDelete, listInsertOrUpdate);

            // Assert
            int  delCount    = listDelete.Count();
            int  upsertCount = listInsertOrUpdate.Count();
            long txid        = listInsertOrUpdate.Max(f => f.EntityTxid);


            Assert.AreEqual(expectedDelCount, delCount);
            Assert.AreEqual(expectedUpsertCount, upsertCount);
            Assert.AreEqual(expectedTxid, txid);
        }