Inheritance: BaseBuildParameter
        public void TestStringParameterWithEmptyDefault()
        {
            var xml = @"<parameterDefinition>
                        <defaultParameterValue>
                        <value />
                        </defaultParameterValue>
                        <description>Enter a string</description>
                        <name>STRING.1</name>
                        <type>StringParameterDefinition</type>
                        </parameterDefinition>";

            var xDoc = XDocument.Parse(xml).Descendants().First();
            var str = new StringParameter(xDoc);

            Assert.AreEqual(str.Name, "STRING.1");
            Assert.AreEqual(str.Description, "Enter a string");
            Assert.AreEqual(str.ParameterType, BuildParameterType.StringParameterDefinition);
            Assert.AreEqual(str.DefaultValue, String.Empty);
        }
Exemplo n.º 2
0
        private List<ParameterBase> GetBuildParameters(XDocument xDoc)
        {
            // Construct the build parameters
            var buildParameters = new List<ParameterBase>();
            var parametersNodes = xDoc.Descendants("action").Elements("parameterDefinition");
            var supportedTypes = Enum.GetNames(typeof(BuildParameterType));
            foreach (var parameterNode in parametersNodes)
            {
                var type = (string)parameterNode.Element("type");
                if (!supportedTypes.Contains(type)) continue;

                switch ((BuildParameterType)Enum.Parse(typeof(BuildParameterType), type))
                {
                    case BuildParameterType.BooleanParameterDefinition:
                        var booleanBuildParamter = new BuildParameters.BooleanParameter(parameterNode);
                        buildParameters.Add(booleanBuildParamter.ToParameterBase());
                        break;

                    case BuildParameterType.ChoiceParameterDefinition:
                        var choiceBuildParameter = new ChoiceParameter(parameterNode);
                        buildParameters.Add(choiceBuildParameter.ToParameterBase());
                        break;

                    case BuildParameterType.StringParameterDefinition:
                        var stringBuildParameter = new StringParameter(parameterNode);
                        buildParameters.Add(stringBuildParameter.ToParameterBase());
                        break;
                }
            }

            return buildParameters;
        }