Exemplo n.º 1
0
        public void WhenNoMessage_DefaultAttributeMessageIsSet_UmbracoValidators(Type type)
        {
            // arrange
            var mockService = new Mock <IValidationMessageService>();

            mockService.Setup(ms => ms.GetValue(It.IsAny <string>(), It.IsAny <string>())).Returns(string.Empty);
            DependencyResolverHelper.SetValidationMessageServiceIntoResolver(mockService);

            var testInstance    = AttributeGeneratorHelper.IntialiseAttribute(type);
            var controlInstance = AttributeGeneratorHelper.IntialiseAttribute(type);

            // act
            testInstance.Initialise("asdf", "asefasdf", string.Empty); // can be any validation attribute

            // assert
            Assert.AreEqual(controlInstance.ErrorMessage, testInstance.ErrorMessage);
        }
Exemplo n.º 2
0
        private void GenerateDataContractAttribute(Type sourceType)
        {
            string dataContractNamespace, dataContractName;

            AttributeGeneratorHelper.GetContractNameAndNamespace(sourceType, out dataContractNamespace, out dataContractName);

            this.Write("[System.Runtime.Serialization.DataContract(Namespace = \"");

            this.Write(this.ToStringHelper.ToStringWithCulture(dataContractNamespace));

            this.Write("\"");


            if (!string.IsNullOrEmpty(dataContractName))
            {
                this.Write(", Name = \" ");

                this.Write(this.ToStringHelper.ToStringWithCulture(dataContractName));

                this.Write("\"");
            }

            this.Write(")]\r\n");
        }
Exemplo n.º 3
0
        /// <summary>
        /// Generates attribute declarations in C#.
        /// </summary>
        /// <param name="attributes">The attributes to be generated.</param>
        /// <param name="forcePropagation">Causes the attributes to be generated even if the attribute verification fails.</param>
        protected virtual void GenerateAttributes(IEnumerable <Attribute> attributes, bool forcePropagation)
        {
            foreach (Attribute attribute in attributes.OrderBy(a => a.GetType().Name))
            {
                AttributeDeclaration attributeDeclaration = AttributeGeneratorHelper.GetAttributeDeclaration(attribute, this.ClientCodeGenerator, forcePropagation);
                if (attributeDeclaration == null || attributeDeclaration.HasErrors)
                {
                    continue;
                }

                string attributeTypeName = CodeGenUtilities.GetTypeName(attributeDeclaration.AttributeType);

                this.Write("[");

                this.Write(this.ToStringHelper.ToStringWithCulture(attributeTypeName));

                this.Write("(");


                if (attributeDeclaration.ConstructorArguments.Count > 0)
                {
                    for (int i = 0; i < attributeDeclaration.ConstructorArguments.Count; i++)
                    {
                        object value       = attributeDeclaration.ConstructorArguments[i];
                        string stringValue = AttributeGeneratorHelper.ConvertValueToCode(value, true);

                        this.Write(this.ToStringHelper.ToStringWithCulture(stringValue));


                        if (i + 1 < attributeDeclaration.ConstructorArguments.Count)
                        {
                            this.Write(", ");
                        }
                    }
                }
                if (attributeDeclaration.NamedParameters.Count > 0)
                {
                    if (attributeDeclaration.ConstructorArguments.Count > 0)
                    {
                        this.Write(", ");
                    }

                    for (int i = 0; i < attributeDeclaration.NamedParameters.Count; i++)
                    {
                        KeyValuePair <string, object> pair = attributeDeclaration.NamedParameters.ElementAt(i);
                        string stringValue = AttributeGeneratorHelper.ConvertValueToCode(pair.Value, true);

                        this.Write(this.ToStringHelper.ToStringWithCulture(pair.Key));

                        this.Write("=");

                        this.Write(this.ToStringHelper.ToStringWithCulture(stringValue));


                        if (i + 1 < attributeDeclaration.NamedParameters.Count)
                        {
                            this.Write(",");
                        }
                    }
                }

                this.Write(")]\r\n");
            }
        }
Exemplo n.º 4
0
        private void GenerateDataContractAttribute(Type sourceType)
        {
            string dataContractNamespace, dataContractName;

            AttributeGeneratorHelper.GetContractNameAndNamespace(sourceType, out dataContractNamespace, out dataContractName);


        #line default
        #line hidden

        #line 69 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
            this.Write("[System.Runtime.Serialization.DataContract(Namespace = \"");


        #line default
        #line hidden

        #line 70 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
            this.Write(this.ToStringHelper.ToStringWithCulture(dataContractNamespace));


        #line default
        #line hidden

        #line 70 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
            this.Write("\"");


        #line default
        #line hidden

        #line 70 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"

            if (!string.IsNullOrEmpty(dataContractName))
            {
        #line default
        #line hidden

        #line 73 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                this.Write(", Name = \" ");


        #line default
        #line hidden

        #line 73 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                this.Write(this.ToStringHelper.ToStringWithCulture(dataContractName));


        #line default
        #line hidden

        #line 73 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                this.Write("\"");


        #line default
        #line hidden

        #line 73 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
            }


        #line default
        #line hidden

        #line 75 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
            this.Write(")]\r\n");


        #line default
        #line hidden

        #line 76 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
        }
Exemplo n.º 5
0
        /// <summary>
        /// Generates attribute declarations in C#.
        /// </summary>
        /// <param name="attributes">The attributes to be generated.</param>
        /// <param name="forcePropagation">Causes the attributes to be generated even if the attribute verification fails.</param>
        protected virtual void GenerateAttributes(IEnumerable <Attribute> attributes, bool forcePropagation)
        {
            foreach (Attribute attribute in attributes.OrderBy(a => a.GetType().Name))
            {
                AttributeDeclaration attributeDeclaration = AttributeGeneratorHelper.GetAttributeDeclaration(attribute, this.ClientCodeGenerator, forcePropagation);
                if (attributeDeclaration == null || attributeDeclaration.HasErrors)
                {
                    continue;
                }

                string attributeTypeName = CodeGenUtilities.GetTypeName(attributeDeclaration.AttributeType);


        #line default
        #line hidden

        #line 27 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                this.Write("[");


        #line default
        #line hidden

        #line 28 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                this.Write(this.ToStringHelper.ToStringWithCulture(attributeTypeName));


        #line default
        #line hidden

        #line 28 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                this.Write("(");


        #line default
        #line hidden

        #line 28 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"

                if (attributeDeclaration.ConstructorArguments.Count > 0)
                {
                    for (int i = 0; i < attributeDeclaration.ConstructorArguments.Count; i++)
                    {
                        object value       = attributeDeclaration.ConstructorArguments[i];
                        string stringValue = AttributeGeneratorHelper.ConvertValueToCode(value, true);


        #line default
        #line hidden

        #line 35 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                        this.Write(this.ToStringHelper.ToStringWithCulture(stringValue));


        #line default
        #line hidden

        #line 35 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"

                        if (i + 1 < attributeDeclaration.ConstructorArguments.Count)
                        {
        #line default
        #line hidden

        #line 38 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                            this.Write(", ");


        #line default
        #line hidden

        #line 38 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                        }
                    }
                }
                if (attributeDeclaration.NamedParameters.Count > 0)
                {
                    if (attributeDeclaration.ConstructorArguments.Count > 0)
                    {
        #line default
        #line hidden

        #line 46 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                        this.Write(", ");


        #line default
        #line hidden

        #line 46 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                    }

                    for (int i = 0; i < attributeDeclaration.NamedParameters.Count; i++)
                    {
                        KeyValuePair <string, object> pair = attributeDeclaration.NamedParameters.ElementAt(i);
                        string stringValue = AttributeGeneratorHelper.ConvertValueToCode(pair.Value, true);


        #line default
        #line hidden

        #line 53 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                        this.Write(this.ToStringHelper.ToStringWithCulture(pair.Key));


        #line default
        #line hidden

        #line 53 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                        this.Write("=");


        #line default
        #line hidden

        #line 53 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                        this.Write(this.ToStringHelper.ToStringWithCulture(stringValue));


        #line default
        #line hidden

        #line 53 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"

                        if (i + 1 < attributeDeclaration.NamedParameters.Count)
                        {
        #line default
        #line hidden

        #line 56 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                            this.Write(",");


        #line default
        #line hidden

        #line 56 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                        }
                    }
                }


        #line default
        #line hidden

        #line 60 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
                this.Write(")]\r\n");


        #line default
        #line hidden

        #line 61 "C:\Code\Repos\openriaservices\OpenRiaServices.DomainServices.Tools.TextTemplate\Framework\CSharpGenerators\Templates\AttributeGeneratorTemplate.ttinclude"
            }
        }