コード例 #1
0
        public void TestCase_Single_Relate2()
        {
            var listA = InitialRelateTableA(20);
            var listB = InitialRelateTableB(20);
            var listC = InitialRelateTableC(20);
            var listD = InitialRelateTableD(20);
            var listE = InitialRelateTableE(20);

            var list = context.Query <TeRelateA_BX>().ToList();

            Assert.Equal(listA.Count, list.Count);
            int i = 0;

            foreach (var item in list)
            {
                AssertExtend.Equal(listA[i], item);
                AssertExtend.Equal(listB[i], item.RelateB);
                AssertExtend.Equal(listC[i], item.RelateB.RelateC);
                AssertExtend.Equal(listD[i], item.RelateB.RelateD);
                AssertExtend.Equal(listE[i], item.RelateB.RelateE);
                AssertExtend.Equal(listE[i], item.RelateE);
                Assert.Equal(item, item.RelateE.RelateA);
                Assert.NotEqual(item.RelateE, item.RelateB.RelateE);
                Assert.Equal(item, item.RelateB.RelateC.RelateA);
                i++;
            }
        }
コード例 #2
0
 public void TestCase_Base_Single_Collection()
 {
     var listA          = InitialRelateTableA(20);
     var listB          = InitialRelateTableB(18);
     var listCollection = InitialRelateTableCollection(15);
     {
         var listEx = (from x in listA
                       join y in listB on x.Id equals y.RelateAId into ps
                       from p in ps.DefaultIfEmpty()
                       select new TeRelateA_B
         {
             Id = x.Id,
             RelateBId = x.RelateBId,
             RelateCId = x.RelateCId,
             RelateDId = x.RelateDId,
             RelateEId = x.RelateEId,
             RelateFId = x.RelateFId,
             DecimalField = x.DecimalField,
             VarcharField = x.VarcharField,
             DateTimeField = x.DateTimeField,
             RelateB = p
         }).ToList();
         var listAc = context.Query <TeRelateA_B_Collection>().ToList();
         AssertExtend.Equal(listA, listAc);
         for (int i = 0; i < listAc.Count; i++)
         {
             var item = listAc[i];
             AssertExtend.Equal(listEx[i], item);
             var collectionEx = listCollection.Where(x => x.RelateAId == item.Id).ToList();
             var collectionAc = item.RelateCollection.ToList();
             AssertExtend.StrictEqual(collectionEx, collectionAc);
         }
     }
 }
コード例 #3
0
        public void TestCase_DefalutValue_Refresh()
        {
            context.TruncateTable <TeBaseFieldDefaultValue>();
            var value = context.CreateNew <TeBaseFieldDefaultValue>();

            context.Insert(value, true);
            var ac = context.SelectById <TeBaseFieldDefaultValue>(value.Id);

            AssertExtend.Equal(value, ac);
        }
コード例 #4
0
        public async Task TestCase_MiniValue_Refresh_Async()
        {
            await context.TruncateTableAsync <TeBaseFieldNullMiniValue>(CancellationToken.None);

            var value = context.CreateNew <TeBaseFieldNullMiniValue>();
            await context.InsertAsync(value, true, CancellationToken.None);

            var ac = await context.SelectByIdAsync <TeBaseFieldNullMiniValue>(value.Id, CancellationToken.None);

            AssertExtend.Equal(value, ac);
        }
コード例 #5
0
        public void TestCase_DefaultValue_BulkInsert_Refresh()
        {
            context.TruncateTable <TeBaseFieldDefaultValue>();

            var list = new List <TeBaseFieldDefaultValue>();

            for (int i = 0; i < 10; i++)
            {
                var value = context.CreateNew <TeBaseFieldDefaultValue>();
                list.Add(value);
            }
            context.BatchInsert(list, true, true);
            var listAc = context.Query <TeBaseFieldDefaultValue>().ToList();

            AssertExtend.Equal(list, listAc);
        }
コード例 #6
0
        public async Task TestCase_MiniValue_BulkInsert_Refresh_Async()
        {
            await context.TruncateTableAsync <TeBaseFieldNullMiniValue>(CancellationToken.None);

            var list = new List <TeBaseFieldNullMiniValue>();

            for (int i = 0; i < 10; i++)
            {
                var value = context.CreateNew <TeBaseFieldNullMiniValue>();
                list.Add(value);
            }
            await context.BatchInsertAsync(list, true, true, CancellationToken.None);

            var listAc = await context.Query <TeBaseFieldNullMiniValue>().ToListAsync(CancellationToken.None);

            AssertExtend.Equal(list, listAc);
        }
コード例 #7
0
        public void TestCase_Single_Relate1()
        {
            var listA = InitialRelateTableA(20);
            var listB = InitialRelateTableB(20);

            var list = context.Query <TeRelateA_B_A>().ToList();

            Assert.Equal(listA.Count, list.Count);
            int i = 0;

            foreach (var item in list)
            {
                AssertExtend.Equal(listA[i], item);
                AssertExtend.Equal(listB[i], item.RelateB);
                Assert.Equal(item, item.RelateB.RelateA);
                i++;
            }
        }
コード例 #8
0
        public async Task TestCase_CUD_Bulk_Async()
        {
            const int count  = 33;
            var       listEx = CreateBaseFieldEntityTableList(count);
            List <TeBaseFieldEntity> listAc;
            await context.TruncateTableAsync <TeBaseFieldEntity>(CancellationToken.None);

            var retInsert = await context.BatchInsertAsync(listEx, CancellationToken.None);

            Assert.Equal(count, retInsert);
            listAc = await context.Query <TeBaseFieldEntity>().ToListAsync(CancellationToken.None);

            AssertExtend.Equal(listEx, listAc);
            DateTime d = GetNow();

            listEx.ForEach(x =>
            {
                x.DateTimeField      = d;
                x.DateTimeFieldNull  = null;
                x.Int32Field         = 2;
                x.Int32FieldNull     = null;
                x.DoubleField        = 2.0d;
                x.DoubleFieldNull    = null;
                x.VarcharField       = "abc";
                x.VarcharFieldNull   = null;
                x.EnumInt32Field     = EnumInt32Type.Zero;
                x.EnumInt32FieldNull = null;
                x.EnumInt64Field     = EnumInt64Type.Zero;
                x.EnumInt64FieldNull = null;
            });
            var retUpdate = await context.BatchUpdateAsync(listEx, CancellationToken.None);

            Assert.Equal(count, retUpdate);
            listAc = await context.Query <TeBaseFieldEntity>().ToListAsync(CancellationToken.None);

            AssertExtend.Equal(listEx, listAc);
            var retDelete = await context.BatchDeleteAsync(listEx, CancellationToken.None);

            Assert.Equal(count, retDelete);
            listAc = await context.Query <TeBaseFieldEntity>().ToListAsync(CancellationToken.None);

            AssertExtend.Equal(0, listAc.Count);
        }
コード例 #9
0
        public void TestCase_CUD_Bulk()
        {
            const int count  = 33;
            var       listEx = CreateBaseFieldEntityTableList(count);
            List <TeBaseFieldEntity> listAc;

            context.TruncateTable <TeBaseFieldEntity>();
            var retInsert = context.BatchInsert(listEx);

            Assert.Equal(count, retInsert);
            listAc = context.Query <TeBaseFieldEntity>().ToList();
            AssertExtend.Equal(listEx, listAc);
            DateTime d = GetNow();

            listEx.ForEach(x =>
            {
                x.DateTimeField      = d;
                x.DateTimeFieldNull  = null;
                x.Int32Field         = 2;
                x.Int32FieldNull     = null;
                x.DoubleField        = 2.0d;
                x.DoubleFieldNull    = null;
                x.VarcharField       = "abc";
                x.VarcharFieldNull   = null;
                x.EnumInt32Field     = EnumInt32Type.Zero;
                x.EnumInt32FieldNull = null;
                x.EnumInt64Field     = EnumInt64Type.Zero;
                x.EnumInt64FieldNull = null;
            });
            var retUpdate = context.BatchUpdate(listEx);

            Assert.Equal(count, retUpdate);
            listAc = context.Query <TeBaseFieldEntity>().ToList();
            AssertExtend.Equal(listEx, listAc);
            var retDelete = context.BatchDelete(listEx);

            Assert.Equal(count, retDelete);
            listAc = context.Query <TeBaseFieldEntity>().ToList();
            AssertExtend.Equal(0, listAc.Count);
        }
コード例 #10
0
 public void TestCase_Base_Collection()
 {
     var listA          = InitialRelateTableA(20);
     var listCollection = InitialRelateTableCollection(15);
     {
         var listAc = context.Query <TeRelateA_LCollection>().ToList();
         AssertExtend.Equal(listA, listAc);
         for (int i = 0; i < listAc.Count; i++)
         {
             var item         = listAc[i];
             var collectionEx = listCollection.Where(x => x.RelateAId == item.Id).ToList();
             var collectionAc = item.RelateCollection.ToList();
             AssertExtend.StrictEqual(collectionEx, collectionAc);
         }
     }
     {
         var listAc = context.Query <TeRelateA_ICollection>().ToList();
         AssertExtend.Equal(listA, listAc);
         for (int i = 0; i < listAc.Count; i++)
         {
             var item         = listAc[i];
             var collectionEx = listCollection.Where(x => x.RelateAId == item.Id).ToList();
             var collectionAc = item.RelateCollection.ToList();
             AssertExtend.StrictEqual(collectionEx, collectionAc);
         }
     }
     {
         var listAc = context.Query <TeRelateA_2Collection>().ToList();
         AssertExtend.Equal(listA, listAc);
         for (int i = 0; i < listAc.Count; i++)
         {
             var item          = listAc[i];
             var collectionEx  = listCollection.Where(x => x.RelateAId == item.Id).ToList();
             var collectionLAc = item.RelateLCollection.ToList();
             AssertExtend.StrictEqual(collectionEx, collectionLAc);
             var collectionIAc = item.RelateICollection.ToList();
             AssertExtend.StrictEqual(collectionEx, collectionIAc);
         }
     }
 }