Exemplo n.º 1
0
        private DateTimeFormat()
        {
            // 由于循环依赖,所以只能先传出指针
            Singleton = this;
#if NET6_0_OR_GREATER
            DateOnlyF = DateOnlyFormat.Singleton;
#else
            ShortChar01 = ShortChar0.GetLower();
            Int101      = Int10.GetLower();
            ShortN151   = ShortN15.GetLower();
#endif
        }
Exemplo n.º 2
0
        public void Should_SerializeInt10()
        {
            Int10 value = Int10.MaxValue; // range -511 to 511

            Assert.AreEqual(false, value._sign);
            Assert.AreEqual(1, value.GetBit(0));
            Assert.AreEqual(1, value.GetBit(1));
            Assert.AreEqual(1, value.GetBit(2));
            Assert.AreEqual(1, value.GetBit(3));
            Assert.AreEqual(1, value.GetBit(4));
            Assert.AreEqual(1, value.GetBit(5));
            Assert.AreEqual(1, value.GetBit(6));
            Assert.AreEqual(1, value.GetBit(7));
            Assert.AreEqual(1, value.GetBit(8));
            Assert.AreEqual(new Bit[] { 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 }, value.GetBits());

            value = Int10.MinValue;
            Assert.AreEqual(true, value._sign);
            Assert.AreEqual(1, value.GetBit(0));
            Assert.AreEqual(1, value.GetBit(1));
            Assert.AreEqual(1, value.GetBit(2));
            Assert.AreEqual(1, value.GetBit(3));
            Assert.AreEqual(1, value.GetBit(4));
            Assert.AreEqual(1, value.GetBit(5));
            Assert.AreEqual(1, value.GetBit(6));
            Assert.AreEqual(1, value.GetBit(7));
            Assert.AreEqual(1, value.GetBit(8));
            Assert.AreEqual(new Bit[] { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, value.GetBits());

            // test overflow
            value = (Int10)700;
            Assert.AreEqual(188, value);
            Assert.AreEqual(false, value._sign);
            Assert.AreEqual(0, value.GetBit(0));
            Assert.AreEqual(0, value.GetBit(1));
            Assert.AreEqual(1, value.GetBit(2));
            Assert.AreEqual(1, value.GetBit(3));
            Assert.AreEqual(1, value.GetBit(4));
            Assert.AreEqual(1, value.GetBit(5));
            Assert.AreEqual(0, value.GetBit(6));
            Assert.AreEqual(1, value.GetBit(7));
            Assert.AreEqual(0, value.GetBit(8));
            Assert.AreEqual(new Bit[] { 0, 0, 1, 1, 1, 1, 0, 1, 0, 0 }, value.GetBits());
        }