Пример #1
0
        public void PerformanceTest()
        {
            SubstringTransform transform = new SubstringTransform();

            transform.Length      = 3;
            transform.PaddingType = PadType.None;
            transform.Direction   = Direction.Left;

            int cycles = 200000;

            Stopwatch t = new Stopwatch();

            t.Start();

            for (int i = 0; i < cycles; i++)
            {
                Assert.AreEqual("abc", transform.TransformValue("abcdef").FirstOrDefault());
            }

            t.Stop();
            int objSec = (int)(cycles / t.Elapsed.TotalSeconds);

            if (objSec < 500000)
            {
                Assert.Fail("Perf test failed: {0} obj/sec", objSec);
            }
        }
Пример #2
0
        private static void LoadTestTransforms()
        {
            StringCaseTransform t1 = new StringCaseTransform();

            t1.ID         = "ToUpperCase";
            t1.StringCase = StringCaseType.Upper;
            ActiveConfig.XmlConfig.Transforms.Add(t1);

            StringCaseTransform t2 = new StringCaseTransform();

            t2.ID         = "ToLowerCase";
            t2.StringCase = StringCaseType.Lower;
            ActiveConfig.XmlConfig.Transforms.Add(t2);

            SubstringTransform t3 = new SubstringTransform();

            t3.ID     = "GetFirstCharacter";
            t3.Length = 1;
            ActiveConfig.XmlConfig.Transforms.Add(t3);

            DateConverterTransform t4 = new DateConverterTransform();

            t4.ID                      = "Add30Days";
            t4.InputDateType           = DateType.Ticks;
            t4.InputTimeZone           = TimeZoneInfo.Utc;
            t4.OutputDateType          = DateType.Ticks;
            t4.OutputTimeZone          = TimeZoneInfo.Utc;
            t4.CalculationOperator     = DateOperator.Add;
            t4.CalculationTimeSpanType = TimeSpanType.Days;
            t4.CalculationValue        = 30;
            ActiveConfig.XmlConfig.Transforms.Add(t4);
        }
Пример #3
0
        public void LeftStringTransformFirstCharacterPadding()
        {
            SubstringTransform transform = new SubstringTransform();

            transform.Length      = 4;
            transform.PaddingType = PadType.FirstCharacter;
            transform.Direction   = Direction.Left;
            this.ExecuteTestSubString(transform, "ma", "mamm");
        }
Пример #4
0
 public SubstringTransformViewModel(SubstringTransform model)
     : base(model)
 {
     this.model = model;
     this.model.PropertyChanged += model_PropertyChanged;
     this.ToolTips.AddItem("Length", "Specifies the number of characters to obtain starting from the left-hand side of the string");
     this.ToolTips.AddItem("PadCharacter", "When 'Padding Type' is set to 'SpecifiedValue', and the string is shorter than the specified length, this character is repeated at the end of the string to meet the length requirements specified");
     this.ToolTips.AddItem("PaddingType", "Specifies the action to take when the string is shorter than the specified number of characters. The first, last or character you specify can be appended to the string to make it the required length");
 }
Пример #5
0
        public void LeftStringTransformNoPadding()
        {
            SubstringTransform transform = new SubstringTransform();

            transform.Length      = 3;
            transform.PaddingType = PadType.None;
            transform.Direction   = Direction.Left;

            this.ExecuteTestSubString(transform, "newington", "new");
        }
Пример #6
0
        public void RightStringTransformLastCharacterPadding()
        {
            SubstringTransform transform = new SubstringTransform();

            transform.Length      = 4;
            transform.PaddingType = PadType.LastCharacter;
            transform.Direction   = Direction.Right;

            this.ExecuteTestSubString(transform, "ma", "aama");
        }
Пример #7
0
        public void SubStringTransformFirstCharacterPadding()
        {
            SubstringTransform transform = new SubstringTransform();

            transform.Length      = 4;
            transform.StartIndex  = 1;
            transform.PaddingType = PadType.FirstCharacter;
            transform.Direction   = Direction.Left;

            this.ExecuteTestSubString(transform, "mai", "aiaa");
        }
Пример #8
0
        public void ExecuteTestRightStringSpecifiedCharacterPadding()
        {
            SubstringTransform transform = new SubstringTransform();

            transform.Length       = 4;
            transform.PaddingType  = PadType.SpecifiedValue;
            transform.PadCharacter = "x";
            transform.Direction    = Direction.Right;

            this.ExecuteTestSubString(transform, "ma", "xxma");
        }
Пример #9
0
        public void SubStringTransformSpecifiedCharacterPadding()
        {
            SubstringTransform transform = new SubstringTransform();

            transform.Length       = 4;
            transform.StartIndex   = 1;
            transform.PaddingType  = PadType.SpecifiedValue;
            transform.PadCharacter = "x";
            transform.Direction    = Direction.Left;

            this.ExecuteTestSubString(transform, "mai", "aixx");
        }
Пример #10
0
        public void LeftStringTransformLastCharacterPaddingEmptyString()
        {
            SubstringTransform transform = new SubstringTransform();

            transform.Length      = 4;
            transform.PaddingType = PadType.LastCharacter;
            transform.Direction   = Direction.Left;

            try
            {
                this.ExecuteTestSubString(transform, "", "");
                Assert.Fail("The expected exception was not thrown");
            }
            catch (ArgumentNullException)
            {
            }
        }
Пример #11
0
        public void TestSerialization()
        {
            UniqueIDCache.ClearIdCache();
            SubstringTransform transformToSeralize = new SubstringTransform();

            transformToSeralize.ID           = "test001";
            transformToSeralize.Length       = 5;
            transformToSeralize.PadCharacter = "d";
            transformToSeralize.PaddingType  = PadType.LastCharacter;
            transformToSeralize.StartIndex   = 99;
            transformToSeralize.Direction    = Direction.Right;
            UniqueIDCache.ClearIdCache();

            SubstringTransform deserializedTransform = (SubstringTransform)UnitTestControl.XmlSerializeRoundTrip <Transform>(transformToSeralize);

            Assert.AreEqual(transformToSeralize.ID, deserializedTransform.ID);
            Assert.AreEqual(transformToSeralize.Length, deserializedTransform.Length);
            Assert.AreEqual(transformToSeralize.PadCharacter, deserializedTransform.PadCharacter);
            Assert.AreEqual(transformToSeralize.PaddingType, deserializedTransform.PaddingType);
            Assert.AreEqual(transformToSeralize.StartIndex, deserializedTransform.StartIndex);
            Assert.AreEqual(transformToSeralize.Direction, deserializedTransform.Direction);
        }
Пример #12
0
        private void ExecuteTestSubString(SubstringTransform transform, string sourceValue, string expectedValue)
        {
            string outValue = transform.TransformValue(sourceValue).FirstOrDefault() as string;

            Assert.AreEqual(expectedValue, outValue);
        }