public void ConfigureEncrypt() { var configuration = new ConfigurationContainer(); Assert.Null(configuration.Root.Find <EncryptionExtension>()); configuration.UseEncryptionAlgorithm() .ConfigureType <TestClassWithEncryptedData>() .Member(p => p.Password, x => x.Encrypt()) .Member(p => p.Salary) .Encrypt(); var extension = configuration.Root.Find <EncryptionExtension>(); Assert.NotNull(extension); var type = configuration.GetTypeConfiguration(typeof(TestClassWithEncryptedData)); Assert.NotNull(type); var member = type.Member(nameof(TestClassWithEncryptedData.Salary)); var property = ((ISource <MemberInfo>)member).Get(); Assert.NotNull(property); Assert.Contains(property, extension.Registered); const int salary = 6776; var instance = new TestClassWithEncryptedData { Salary = salary }; var support = new SerializationSupport(configuration); var actual = support.Assert(instance, @"<?xml version=""1.0"" encoding=""utf-8""?><TestClassWithEncryptedData xmlns=""clr-namespace:ExtendedXmlSerializer.Tests.TestObject;assembly=ExtendedXmlSerializer.Tests""><Salary>Njc3Ng==</Salary></TestClassWithEncryptedData>"); Assert.Equal(salary, actual.Salary); }
public void SerializationRefernece() { TestClassWithEncryptedData obj = new TestClassWithEncryptedData(); obj.Name = "Name"; obj.Password = "******"; obj.Salary = 100000; CheckSerializationAndDeserialization("ExtendedXmlSerializerTest.Resources.TestClassWithEncryptedData.xml", obj); }