Example #1
0
        public void Execute_TokenCount_Valid(object value, int expected)
        {
            var code     = "text-to-token-count";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #2
0
        public void Execute_AnyToAny_Any(object value)
        {
            var code     = "any-to-any";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo("(any)"));
        }
Example #3
0
        public void Execute_EmptyToNull_Null(string value)
        {
            var code     = "empty-to-null";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo("(null)"));
        }
Example #4
0
        public void Execute_NumericToClip_Valid(object value, object min, object max, decimal expected)
        {
            var code     = $"numeric-to-clip({min}, {max})";
            var provider = new NativeTransformer <decimal>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #5
0
        public void Execute_Whitespace_Valid(object value, string expected)
        {
            var code     = "text-to-without-whitespaces";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #6
0
        public void Execute_LocalToUtcWithCityName_Valid(object value, DateTime expected)
        {
            var code     = "local-to-utc(Brussels)";
            var provider = new NativeTransformer <DateTime>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #7
0
        public void Execute_ChainingTransformationsStartingByValue_Valid(object value, decimal expected)
        {
            var code     = "value | null-to-empty | text-to-length";
            var provider = new NativeTransformer <string>(new ServiceLocator(), null);

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #8
0
        public void Execute_NullToZero_Valid(object value, decimal expected)
        {
            var code     = "null-to-zero";
            var provider = new NativeTransformer <decimal>(new ServiceLocator(), null);

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #9
0
        public void Execute_DateTimeToAddTimeSpanWithoutTimes_Valid()
        {
            var code     = $"dateTime-to-add(04:00:00)";
            var provider = new NativeTransformer <DateTime>(new ServiceLocator(), null);

            provider.Initialize(code);

            var result = provider.Execute(new DateTime(2017, 12, 31, 21, 0, 0));

            Assert.That(result, Is.EqualTo(new DateTime(2018, 01, 01, 01, 0, 0)));
        }
Example #10
0
        public void Execute_NullToDate_Valid(object value, DateTime expected)
        {
            var code     = "null-to-date(2001-01-01)";
            var provider = new NativeTransformer <DateTime>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #11
0
        public void Execute_DateTimeToClip_Valid(object value, DateTime expected)
        {
            var code     = $"dateTime-to-clip(2019-03-01, 2019-03-31)";
            var provider = new NativeTransformer <DateTime>(new ServiceLocator(), null);

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #12
0
        public void Execute_NumericToMultiply_Valid(object value, object multiplicator, decimal expected)
        {
            var code     = $"numeric-to-multiply({multiplicator})";
            var provider = new NativeTransformer <decimal>(new ServiceLocator(), null);

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #13
0
        public void Execute_NumericToAddTimes_Valid(object value, object additional, object times, decimal expected)
        {
            var code     = $"numeric-to-add({additional}, {times})";
            var provider = new NativeTransformer <decimal>(new ServiceLocator(), null);

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #14
0
        public void Execute_DateTimeToDate_Valid(object value)
        {
            var code     = "dateTime-to-date";
            var provider = new NativeTransformer <DateTime>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(new DateTime(2018, 2, 1)));
        }
Example #15
0
        public void Execute_NumericToRound_Valid(object value, decimal expected)
        {
            var code     = "numeric-to-round(2)";
            var provider = new NativeTransformer <decimal>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #16
0
        public void Execute_NullToValue_NotValue(object value)
        {
            var code     = "null-to-value";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.Not.EqualTo("(value)"));
        }
Example #17
0
        public void Execute_BlankToEmpty_NotEmpty(string value)
        {
            var code     = "blank-to-empty";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.Not.EqualTo("(empty)"));
        }
Example #18
0
        public void Execute_Diacritics_Valid(object value)
        {
            var code     = "text-to-without-diacritics";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo("Cedric"));
        }
Example #19
0
        public void Execute_UtcToLocalWithStandardName_Valid(object value, DateTime expected)
        {
            var code     = "utc-to-local(Romance Standard Time)";
            var provider = new NativeTransformer <DateTime>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(expected));
        }
Example #20
0
        public void Execute_DateToAge_Min38(int month, int day, int age)
        {
            var code     = "date-to-age";
            var provider = new NativeTransformer <DateTime>();

            provider.Initialize(code);

            var result = provider.Execute(new DateTime(1978, month, day));

            Assert.That(result, Is.AtLeast(age));
        }
Example #21
0
        public void Execute_HtmlToText_Valid(object value)
        {
            var code     = "html-to-text";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo("Cédric"));
        }
Example #22
0
        public void Execute_TextToHtml_Valid(object value)
        {
            var code     = "text-to-html";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo("C&#233;dric"));
        }
Example #23
0
        public void Execute_Length_5(object value)
        {
            var code     = "text-to-length";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(5));
        }
Example #24
0
        public void Execute_LowerCase_abc(object value)
        {
            var code     = "text-to-lower";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.EqualTo(" abc "));
        }
Example #25
0
        public void Execute_Trim_NotABC(object value)
        {
            var code     = "text-to-trim";
            var provider = new NativeTransformer <string>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            Assert.That(result, Is.Not.EqualTo("ABC"));
        }
Example #26
0
        public void Execute_TextToLastCharsWithVariable_Valid()
        {
            var variables = new Dictionary <string, ITestVariable>()
            {
                { "length", new GlobalVariable(new LiteralScalarResolver <int>(6)) }
            };
            var code     = "text-to-last-chars(@length)";
            var provider = new NativeTransformer <string>(new ServiceLocator(), new Context(variables));

            provider.Initialize(code);

            var result = provider.Execute("123456789");

            Assert.That(result, Is.EqualTo("456789"));
        }
Example #27
0
        public void Execute_NumericToCeiling_Valid(object value, decimal expected)
        {
            var code     = "numeric-to-ceiling";
            var provider = new NativeTransformer <decimal>(new ServiceLocator(), null);

            provider.Initialize(code);

            var result = provider.Execute(value);

            if (expected == 0)
            {
                Assert.That(result, Is.Null);
            }
            else
            {
                Assert.That(result, Is.EqualTo(expected));
            }
        }
Example #28
0
        public void Execute_DateTimeToLastOfYear_Valid(object value, DateTime expected)
        {
            var code     = "dateTime-to-last-of-year";
            var provider = new NativeTransformer <DateTime>();

            provider.Initialize(code);

            var result = provider.Execute(value);

            if (expected == new DateTime(1, 1, 1))
            {
                Assert.That(result, Is.Null);
            }
            else
            {
                Assert.That(result, Is.EqualTo(expected));
            }
        }
Example #29
0
        public void Execute_MultipleChains_Valid()
        {
            var code1     = $"path-to-filename-without-extension | text-to-dateTime(yyyyMMdd_HHmmss) | local-to-utc(Brussels)";
            var provider1 = new NativeTransformer <string>(new ServiceLocator(), null);

            provider1.Initialize(code1);

            var result1 = provider1.Execute("20191001_141542.xml");

            Assert.That(result1, Is.EqualTo(new DateTime(2019, 10, 01, 12, 15, 42)));

            var code2     = $"dateTime-to-floor-minute | dateTime-to-add(00:30:00, -1)";
            var provider2 = new NativeTransformer <DateTime>(new ServiceLocator(), null);

            provider2.Initialize(code2);

            var result2 = provider2.Execute(result1);

            Assert.That(result2, Is.EqualTo(new DateTime(2019, 10, 01, 11, 45, 00)));
        }
Example #30
0
        public void Execute_DateTime_TwoElements()
        {
            var resolvers = new List <IScalarResolver>()
            {
                new LiteralScalarResolver <string>("2014-01-01"),
                new LiteralScalarResolver <string>("2015-01-01"),
                new LiteralScalarResolver <string>("2016-01-01"),
                new LiteralScalarResolver <string>("2017-01-01"),
            };
            var innerArgs      = new ListSequenceResolverArgs(resolvers);
            var innerResolver  = new ListSequenceResolver <DateTime>(innerArgs);
            var predicate      = new DateTimeMoreThan(false, new LiteralScalarResolver <DateTime>("2015-06-01"));
            var transformation = new NativeTransformer <DateTime>(new ServiceLocator(), null, new DateTimeToNextYear());
            var args           = new FilterSequenceResolverArgs(innerResolver, predicate, transformation);

            var resolver = new FilterSequenceResolver <DateTime>(args);
            var elements = resolver.Execute();

            Assert.That(elements.Count(), Is.EqualTo(3));
            Assert.That(elements, Has.Member(new DateTime(2015, 1, 1)));
            Assert.That(elements, Has.Member(new DateTime(2016, 1, 1)));
            Assert.That(elements, Has.Member(new DateTime(2017, 1, 1)));
        }