public StandardPropertyValueAccumulator(LetterEncoder stringGenerator, IAttributeDecorator attributeDecorator)
        {
            StandardPropertyValueAccumulator.Logger.Debug("Entering contructor");

            this.stringGenerator = stringGenerator;
            this.attributeDecorator = attributeDecorator;

            StandardPropertyValueAccumulator.Logger.Debug("Exiting contructor");
        }
        public void OverflowException_Test()
        {
            ulong input = (ulong)Math.Pow(26, 2) + 2 * 26 + 3;
            const string stringValueOfInput = "ABCD";

            var generator = new LetterEncoder();

            Helpers.ExceptionTest(() => generator.Encode(input, maxStringLength: stringValueOfInput.Length - 1), typeof (OverflowException),
                string.Format(Messages.StringGeneratorOverflow, input, stringValueOfInput.Length - 1));
        }
        public void Decode_Test()
        {
            var expected = new LargeInteger(5204);

            var generator = new LetterEncoder();

            LargeInteger result = generator.Decode("HSE");

            Assert.AreEqual(expected, result);
        }
        public SqlWriterDictionary(LetterEncoder encoder, IWritePrimitives writePrimitives, SqlWriterCommandTextGenerator commandTextGenerator)
        {
            SqlWriterDictionary.Logger.Debug("Entering constructor");

            this.encoder = encoder;
            this.writePrimitives = writePrimitives;
            this.commandTextGenerator = commandTextGenerator;

            this.PopulateWriterDictionary();

            SqlWriterDictionary.Logger.Debug("Exiting constructor");
        }
        public void Encode_Test()
        {
            const int stringLength = 10;

            const string expected = "BCD";
            const ulong input = 26*26 + 2*26 + 3;

            var generator = new LetterEncoder();

            string result = generator.Encode(input, stringLength);

            Assert.AreEqual(expected, result);
        }