示例#1
0
        public void IdGeneratorElement_Property_Setters()
        {
            // We create an IdGeneratorElement from code and compare it to an IdGeneratorElement from config.
            var target = new IdGeneratorElement()
            {
                Name            = "newfoo",
                Id              = 123,
                Epoch           = new DateTime(2016, 1, 2, 12, 34, 56, DateTimeKind.Utc),
                TimestampBits   = 39,
                GeneratorIdBits = 11,
                SequenceBits    = 13,
                TickDuration    = TimeSpan.FromMilliseconds(50)
            };
            var expected = IdGenerator.GetFromConfig("foo");

            Assert.AreEqual(expected.Id, target.Id);
            Assert.AreEqual(expected.Epoch, target.Epoch);
            Assert.AreEqual(expected.MaskConfig.TimestampBits, target.TimestampBits);
            Assert.AreEqual(expected.MaskConfig.GeneratorIdBits, target.GeneratorIdBits);
            Assert.AreEqual(expected.MaskConfig.SequenceBits, target.SequenceBits);
            Assert.AreEqual(expected.TimeSource.TickDuration, target.TickDuration);
        }
示例#2
0
        public void IdGeneratorElement_Property_Setters()
        {
            // We create an IdGeneratorElement from code and compare it to an IdGeneratorElement from config.
            var target = new IdGeneratorElement()
            {
                Name                     = "newfoo",
                Id                       = 123,
                Epoch                    = new DateTime(2016, 1, 2, 12, 34, 56, DateTimeKind.Utc),
                TimestampBits            = 39,
                GeneratorIdBits          = 11,
                SequenceBits             = 13,
                TickDuration             = TimeSpan.FromMilliseconds(50),
                SequenceOverflowStrategy = SequenceOverflowStrategy.Throw
            };
            var expected = AppConfigFactory.GetFromConfig("foo");

            Assert.AreEqual(expected.Id, target.Id);
            Assert.AreEqual(expected.Options.TimeSource.Epoch, target.Epoch);
            Assert.AreEqual(expected.Options.IdStructure.TimestampBits, target.TimestampBits);
            Assert.AreEqual(expected.Options.IdStructure.GeneratorIdBits, target.GeneratorIdBits);
            Assert.AreEqual(expected.Options.IdStructure.SequenceBits, target.SequenceBits);
            Assert.AreEqual(expected.Options.TimeSource.TickDuration, target.TickDuration);
            Assert.AreEqual(expected.Options.SequenceOverflowStrategy, target.SequenceOverflowStrategy);
        }