Example #1
0
        public void CustomSymmetricCryptoProviderNodeTest()
        {
            Type   type = typeof(CustomSymmetricCryptoProviderNodeFixture);
            string name = "some name";
            NameValueCollection attributes = new NameValueCollection();

            attributes.Add("Test", "Value");

            CustomSymmetricCryptoProviderNode node = new CustomSymmetricCryptoProviderNode();

            ApplicationNode.AddNode(node);
            Assert.AreEqual("Custom Symmetric Cryptography Provider", node.Name);

            node.Name = name;
            node.Type = type.AssemblyQualifiedName;
            node.Attributes.Add(new EditableKeyValue(attributes.GetKey(0), attributes[attributes.GetKey(0)]));

            Assert.AreEqual(attributes[0], node.Attributes[0].Value);
            Assert.AreEqual(name, node.Name);
            Assert.AreEqual(type.AssemblyQualifiedName, node.Type);

            CustomSymmetricCryptoProviderData data = (CustomSymmetricCryptoProviderData)node.SymmetricCryptoProviderData;

            Assert.AreEqual(name, data.Name);
            Assert.AreEqual(type, data.Type);
            Assert.AreEqual(attributes.AllKeys[0], data.Attributes.AllKeys[0]);
            Assert.AreEqual(attributes.Get(0), data.Attributes.Get(0));
        }
 public void SetUp()
 {
     provider = new CustomSymmetricCryptoProviderDataManageabilityProvider();
     machineKey = new MockRegistryKey(true);
     userKey = new MockRegistryKey(true);
     configurationObject = new CustomSymmetricCryptoProviderData();
 }
Example #3
0
        public void CanCreateDefaultCustomSymmetricEncryptionProvider()
        {
            CustomSymmetricCryptoProviderData data1
                = new CustomSymmetricCryptoProviderData("provider1", typeof(MockCustomSymmetricProvider).AssemblyQualifiedName);

            data1.Attributes.Add(MockCustomSymmetricProvider.AttributeKey, "value1");
            settings.SymmetricCryptoProviders.Add(data1);

            CustomSymmetricCryptoProviderData data2
                = new CustomSymmetricCryptoProviderData("provider2", typeof(MockCustomSymmetricProvider).AssemblyQualifiedName);

            data2.Attributes.Add(MockCustomSymmetricProvider.AttributeKey, "value2");
            settings.SymmetricCryptoProviders.Add(data2);

            settings.DefaultSymmetricCryptoProviderName = "provider1";

            using (var container = CreateContainer())
            {
                ISymmetricCryptoProvider provider = container.Resolve <ISymmetricCryptoProvider>();

                Assert.IsNotNull(provider);
                Assert.IsInstanceOfType(provider, typeof(MockCustomSymmetricProvider));
                Assert.AreEqual("value1", ((MockCustomSymmetricProvider)provider).customValue);
            }
        }
Example #4
0
 public void SetUp()
 {
     provider            = new CustomSymmetricCryptoProviderDataManageabilityProvider();
     machineKey          = new MockRegistryKey(true);
     userKey             = new MockRegistryKey(true);
     configurationObject = new CustomSymmetricCryptoProviderData();
 }
Example #5
0
 public void SetUp()
 {
     provider            = new ConfigurationElementManageabilityProviderWrapper(new CustomSymmetricCryptoProviderDataManageabilityProvider());
     machineKey          = new MockRegistryKey(true);
     userKey             = new MockRegistryKey(true);
     wmiSettings         = new List <ConfigurationSetting>();
     configurationObject = new CustomSymmetricCryptoProviderData();
 }
 public void Given()
 {
     cryptographySettings = new CryptographySettings();
     customSymmetricCryptoProviderData =
         new CustomSymmetricCryptoProviderData("custom", typeof(MockCustomSymmetricProvider));
     customSymmetricCryptoProviderData.Attributes["foo"] = "bar";
     cryptographySettings.SymmetricCryptoProviders.Add(customSymmetricCryptoProviderData);
 }
Example #7
0
            public EncryptUsingCustomSymmetricProviderNamedBuilder(IConfigureCryptography context, string customSymmetricCryptoProviderName, Type customSymmetricCryptoProviderType, NameValueCollection attributes)
                : base(context)
            {
                customSymmetricProviderData = new CustomSymmetricCryptoProviderData(customSymmetricCryptoProviderName, customSymmetricCryptoProviderType);
                customSymmetricProviderData.Attributes.Add(attributes);

                base.CryptographySettings.SymmetricCryptoProviders.Add(customSymmetricProviderData);
            }
 public void Attributes()
 {
     CustomSymmetricCryptoProviderData data = new CustomSymmetricCryptoProviderData();
     data.Extensions.Add(new NameValueItem("key", "value"));
     string value = data.Extensions["key"];
     Assert.AreEqual("value", value);
     Assert.AreEqual(1, data.Extensions.Count);
 }
Example #9
0
 /// <summary>
 /// Constructs a new instance
 /// with the corresponding runtime configuration data.
 /// </summary>
 /// <param name="customSymmetricCryptoProviderData">The corresponding runtime configuration data.</param>
 public CustomSymmetricCryptoProviderNode(CustomSymmetricCryptoProviderData customSymmetricCryptoProviderData) : base(customSymmetricCryptoProviderData)
 {
     Rename(customSymmetricCryptoProviderData.Name);
     foreach (string key in customSymmetricCryptoProviderData.Attributes)
     {
         editableAttributes.Add(new EditableKeyValue(key, customSymmetricCryptoProviderData.Attributes[key]));
     }
     this.typeName = customSymmetricCryptoProviderData.TypeName;
 }
        public void Attributes()
        {
            CustomSymmetricCryptoProviderData data = new CustomSymmetricCryptoProviderData();

            data.Extensions.Add(new NameValueItem("key", "value"));
            string value = data.Extensions["key"];

            Assert.AreEqual("value", value);
            Assert.AreEqual(1, data.Extensions.Count);
        }
        public void CustomSymmetricCryptoProviderDataTest()
        {
            Type type = typeof(CustomSymmetricCryptoProviderNodeFixture);
            string name = "some name";
            NameValueCollection attributes = new NameValueCollection();
            attributes.Add("test", "value");

            CustomSymmetricCryptoProviderData data = new CustomSymmetricCryptoProviderData();
            data.Name = name;
            data.Type = type;
            data.Attributes.Add(attributes.GetKey(0), attributes[attributes.GetKey(0)]);

            CustomSymmetricCryptoProviderNode node = new CustomSymmetricCryptoProviderNode(data);
            Assert.AreEqual(name, node.Name);
            Assert.AreEqual(type, node.Type);
            Assert.AreEqual(attributes.AllKeys[0], node.Attributes[0].Key);
            Assert.AreEqual(attributes.Get(0), node.Attributes[0].Value);
        }
Example #12
0
        public void CustomSymmetricCryptoProviderDataTest()
        {
            Type   type = typeof(CustomSymmetricCryptoProviderNodeFixture);
            string name = "some name";
            NameValueCollection attributes = new NameValueCollection();

            attributes.Add("test", "value");

            CustomSymmetricCryptoProviderData data = new CustomSymmetricCryptoProviderData();

            data.Name = name;
            data.Type = type;
            data.Attributes.Add(attributes.GetKey(0), attributes[attributes.GetKey(0)]);

            CustomSymmetricCryptoProviderNode node = new CustomSymmetricCryptoProviderNode(data);

            Assert.AreEqual(name, node.Name);
            Assert.AreEqual(type.AssemblyQualifiedName, node.Type);
            Assert.AreEqual(attributes.AllKeys[0], node.Attributes[0].Key);
            Assert.AreEqual(attributes.Get(0), node.Attributes[0].Value);
        }
Example #13
0
        public void CanBuildCustomSymmetricProviderFromGivenConfiguration()
        {
            CustomSymmetricCryptoProviderData customData
                = new CustomSymmetricCryptoProviderData("custom", typeof(MockCustomSymmetricProvider));

            customData.SetAttributeValue(MockCustomProviderBase.AttributeKey, "value1");
            CryptographySettings settings = new CryptographySettings();

            settings.SymmetricCryptoProviders.Add(customData);

            DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource();

            configurationSource.Add(CryptographyConfigurationView.SectionName, settings);

            ISymmetricCryptoProvider custom
                = EnterpriseLibraryFactory.BuildUp <ISymmetricCryptoProvider>("custom", configurationSource);

            Assert.IsNotNull(custom);
            Assert.AreSame(typeof(MockCustomSymmetricProvider), custom.GetType());
            Assert.AreEqual("value1", ((MockCustomSymmetricProvider)custom).customValue);
        }
Example #14
0
        public void CanBuildCustomSymmetricProviderFromSavedConfiguration()
        {
            CustomSymmetricCryptoProviderData customData
                = new CustomSymmetricCryptoProviderData("custom", typeof(MockCustomSymmetricProvider));

            customData.SetAttributeValue(MockCustomProviderBase.AttributeKey, "value1");
            CryptographySettings settings = new CryptographySettings();

            settings.SymmetricCryptoProviders.Add(customData);

            IDictionary <string, ConfigurationSection> sections = new Dictionary <string, ConfigurationSection>(1);

            sections[CryptographyConfigurationView.SectionName] = settings;
            IConfigurationSource configurationSource
                = ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

            ISymmetricCryptoProvider custom
                = EnterpriseLibraryFactory.BuildUp <ISymmetricCryptoProvider>("custom", configurationSource);

            Assert.IsNotNull(custom);
            Assert.AreSame(typeof(MockCustomSymmetricProvider), custom.GetType());
            Assert.AreEqual("value1", ((MockCustomSymmetricProvider)custom).customValue);
        }
Example #15
0
 /// <summary>
 /// Constructs a new instance
 /// with the corresponding runtime configuration data.
 /// </summary>
 /// <param name="customSymmetricCryptoProviderData">The corresponding runtime configuration data.</param>
 public CustomSymmetricCryptoProviderNode(CustomSymmetricCryptoProviderData customSymmetricCryptoProviderData) : base(customSymmetricCryptoProviderData)
 {
     this.customSymmetricCryptoProviderData = customSymmetricCryptoProviderData;
 }
 /// <summary>
 /// Constructs a new instance 
 /// with the corresponding runtime configuration data.
 /// </summary>
 /// <param name="customSymmetricCryptoProviderData">The corresponding runtime configuration data.</param>
 public CustomSymmetricCryptoProviderNode(CustomSymmetricCryptoProviderData customSymmetricCryptoProviderData)
     : base(customSymmetricCryptoProviderData)
 {
     this.customSymmetricCryptoProviderData = customSymmetricCryptoProviderData;
 }