Пример #1
0
        public void Execute_ValueAndFunction_CorrectValue()
        {
            var args     = new FunctionScalarResolverArgs(new LiteralScalarResolver <string>("abcd"), new[] { new TextToUpper() });
            var resolver = new FunctionScalarResolver <string>(args);

            Assert.That(resolver.Execute(), Is.EqualTo("ABCD"));
        }
Пример #2
0
        public void Instantiate_FunctionArgs_FunctionResolver()
        {
            var args = new FunctionScalarResolverArgs(new LiteralScalarResolver <string>("myVar"), new INativeTransformation[] { });

            var factory  = new ScalarResolverFactory(null);
            var resolver = factory.Instantiate <object>(args);

            Assert.That(resolver, Is.TypeOf <FunctionScalarResolver <object> >());
        }
Пример #3
0
        public void Execute_ValueAndTwoFunctions_CorrectValue()
        {
            var args = new FunctionScalarResolverArgs(
                new LiteralScalarResolver <string>(" abcd   ")
                , new INativeTransformation[] { new TextToTrim(), new TextToLength() }
                );
            var resolver = new FunctionScalarResolver <int>(args);

            Assert.That(resolver.Execute(), Is.EqualTo(4));
        }
Пример #4
0
        public void Execute_FunctionPrecededByFormat_CorrectValue()
        {
            var variables = new Dictionary <string, ITestVariable>()
            {
                { "myVar", new GlobalVariable(new CSharpScalarResolver <object>(new CSharpScalarResolverArgs("10*10"))) },
            };

            var args = new FunctionScalarResolverArgs(
                new FormatScalarResolver(new FormatScalarResolverArgs(" V={@myVar:##.00}  ", variables), new ServiceLocator())
                , new INativeTransformation[] { new TextToTrim(), new TextToLength() }
                );
            var resolver = new FunctionScalarResolver <int>(args);

            Assert.That(resolver.Execute(), Is.EqualTo(8));
        }