Пример #1
0
        public void TestNullableDataContainer()
        {
            NullableDataContainer ndc = new NullableDataContainer();

            ndc.Init();

            var pm = PmFactory.NewPersistenceManager();

            pm.MakePersistent(ndc);
            pm.Save();
            pm.UnloadCache();
            ndc = new NDOQuery <NullableDataContainer>(pm, null, false).ExecuteSingle(true);
            AssertNullableDataContainer(ndc);
        }
Пример #2
0
        void AssertNullableDataContainer(NullableDataContainer dc)
        {
            Assert.AreEqual(true, dc.BoolVar, "BoolVar falsch");
            Assert.AreEqual(127, dc.ByteVar, "ByteVar falsch");
            Assert.AreEqual(DateTime.Now.Date, dc.DateTimeVar.Value.Date, "DateTimeVar falsch");
            Assert.AreEqual(new Guid("12341234-1234-1234-1234-123412341234"), dc.GuidVar, "GuidVar falsch");
            Assert.AreEqual(1231.12m, dc.DecVar, "DecVar falsch");
            Assert.AreEqual(int.MaxValue, dc.Int32Var, "Int32Var falsch");
            Assert.AreEqual((uint)int.MaxValue, dc.Uint32Var, "UInt32Var falsch");
#if SQLITE
            Assert.That(CheckDouble(1E28, dc.DoubleVar.Value), "DoubleVar falsch");
            Assert.That(CheckFloat(1E14F, dc.FloatVar.Value), "FloatVar falsch");
#else
            Assert.AreEqual(1E28, dc.DoubleVar.Value, "DoubleVar falsch");
            Assert.AreEqual(1E14F, dc.FloatVar.Value, "FloatVar falsch");
#endif
            Assert.AreEqual(0x1ffffffff, dc.Int64Var, "Int64Var falsch");
            Assert.AreEqual(short.MaxValue, dc.Int16Var, "Int16Var falsch");
            Assert.AreEqual((ushort)short.MaxValue, dc.Uint16Var, "UInt16Var falsch");
            Assert.AreEqual(0x1ffffffff, dc.Uint64Var, "UInt64Var falsch");
            Assert.AreEqual(EnumType.drei, dc.EnumVar, "EnumType falsch");

#if !ACCESS  // Access initializes bool vars always with False
            Assert.That(!dc.BoolEmptyVar.HasValue, "BoolEmptyVar falsch");
#endif
            Assert.That(!dc.ByteEmptyVar.HasValue, "ByteVar falsch");
            Assert.That(!dc.DateTimeEmptyVar.HasValue, "DateTimeVar falsch");
            Assert.That(!dc.GuidEmptyVar.HasValue, "GuidVar falsch");
            Assert.That(!dc.DecEmptyVar.HasValue, "DecVar falsch");
            Assert.That(!dc.Int32EmptyVar.HasValue, "Int32Var falsch");
            Assert.That(!dc.Uint32EmptyVar.HasValue, "UInt32Var falsch");
            Assert.That(!dc.DoubleEmptyVar.HasValue, "DoubleVar falsch");
            Assert.That(!dc.FloatEmptyVar.HasValue, "FloatVar falsch");
            Assert.That(!dc.Int64EmptyVar.HasValue, "Int64Var falsch");
            Assert.That(!dc.Int16EmptyVar.HasValue, "Int16Var falsch");
            Assert.That(!dc.Uint16EmptyVar.HasValue, "UInt16Var falsch");
            Assert.That(!dc.Uint64EmptyVar.HasValue, "UInt64Var falsch");
            Assert.That(!dc.EnumEmptyVar.HasValue, "EnumType falsch");
        }