chr
2026-04-05 fe750b791d5b517cc4e9bc8e99a9a75139a0cfba
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
using NUnit.Framework;
 
namespace OpenTap.Engine.UnitTests
{
    [TestFixture]
    public class SecureStringSerializerTest
    {
        public class SomeInstrument
        {
            public string UserName { get; set; } = "XYZ";
            public System.Security.SecureString Password { get; set; } = new System.Security.SecureString();
        }
 
        [Test]
        public void SerializationTest()
        {
            SomeInstrument inst = new SomeInstrument();
            char[] chars = new char[] { 's', 'e', 'c', 'r', 'e', 't' };
            foreach(char c in chars)
                inst.Password.AppendChar(c);
            
            string xml = new TapSerializer().SerializeToString(inst);
            var inst2 = (SomeInstrument)new TapSerializer().DeserializeFromString(xml, TypeData.GetTypeData(inst));
            Assert.AreEqual(inst.Password.ToString(), inst2.Password.ToString());
        }
    }
}