Exemplo n.º 1
0
        public void CanIdentifyEnabledSocialFeatures()
        {
            var socialConfig = new SocialFeaturesElement
            {
                Enabled = true,
                TwitterId = "mytwitterid",
                GithubId = "mygithubid",
                FacebookId = "my.facebook",
                PinterestId = ""
            };

            var enabledFeatures = SocialFeatureList.CreateFrom(socialConfig);
            Assert.IsNotNull(enabledFeatures);
            Assert.AreEqual(3, enabledFeatures.Count);

            var twitter = enabledFeatures.SingleOrDefault(e => e.FeatureName == "TwitterId");
            Assert.IsNotNull(twitter);
            Assert.AreEqual("mytwitterid", twitter.FeatureValue);
            Assert.AreEqual("twitter", twitter.FeatureImagePart);

            var github = enabledFeatures.SingleOrDefault(e => e.FeatureName == "GithubId");
            Assert.IsNotNull(github);
            Assert.AreEqual("mygithubid", github.FeatureValue);
            Assert.AreEqual("github", github.FeatureImagePart);

            var facebook = enabledFeatures.SingleOrDefault(e => e.FeatureName == "FacebookId");
            Assert.IsNotNull(facebook);
            Assert.AreEqual("my.facebook", facebook.FeatureValue);
            Assert.AreEqual("facebook", facebook.FeatureImagePart);
        }
Exemplo n.º 2
0
 public static List<SocialFeature> CreateFrom(SocialFeaturesElement socialFeatures)
 {
     const BindingFlags bindingFlags = BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly;
     var properties = typeof(SocialFeaturesElement).GetProperties(bindingFlags).Where(p => p.Name != "Enabled").ToList();
     var featureList = properties.Select(p => new SocialFeature
         {
             FeatureName = p.Name,
             FeatureValue = (string)p.GetValue(socialFeatures, null),
             FeatureImagePart = GetImageValue(p.Name)
         });
     return featureList.Where(p => !string.IsNullOrEmpty(p.FeatureValue)).ToList();
 }