Ejemplo n.º 1
0
        public void PropertiesTest1()
        {
            var projects = new Dictionary <string, RawText>()
            {
                ["{12B25935-229F-4128-B66B-7561A77ABC54}"] = new RawText(PrjSamplesResource.snet)
            };

            using (var sln = new Sln(SlnItems.EnvWithProjects, new RawText(SlnSamplesResource.regXwild), projects))
            {
                IXProject project = sln.Result.Env.Projects.FirstOrDefault();

                Assert.AreEqual(null, project.GetProperty("NOT_REAL_PROPERTY").name);
                Assert.AreEqual("MyProperty1", project.SetProperty("MyProperty1", "Value1").name);
                Assert.AreEqual("Value1", project.GetProperty("MyProperty1").evaluatedValue);

                Assert.AreEqual(false, project.RemoveProperty("NOT_REAL_PROPERTY_2"));
                Assert.AreEqual(true, project.RemoveProperty("MyProperty1"));
                Assert.AreEqual(null, project.GetProperty("MyProperty1").name);
            }
        }
Ejemplo n.º 2
0
        public void PropertiesTest3()
        {
            var projects = new Dictionary <string, RawText>()
            {
                ["{12B25935-229F-4128-B66B-7561A77ABC54}"] = new RawText(PrjSamplesResource.snet)
            };

            using (var sln = new Sln(SlnItems.EnvWithProjects, new RawText(SlnSamplesResource.regXwild), projects))
            {
                IXProject project = sln.Result.Env.Projects.FirstOrDefault();

                var prop = project.GetProperty("Platform", true);

                Assert.Null(prop.name);
                Assert.Null(prop.unevaluatedValue);
                Assert.Null(prop.evaluatedValue);
                Assert.Null(prop.parentProperty);
                Assert.NotNull(prop.parentProject);
            }
        }
Ejemplo n.º 3
0
 /// <summary>
 /// To get unevaluated property value with global scope by default.
 /// </summary>
 /// <param name="xp"></param>
 /// <param name="name">The name of the property.</param>
 /// <param name="localScope">If true, will return default value for any special and imported properties type.</param>
 /// <returns>The unevaluated property value, which is never null.</returns>
 public static string GetUnevaluatedPropertyValue(this IXProject xp, string name, bool localScope = false)
 {
     return(xp?.GetProperty(name, localScope).unevaluatedValue);
 }