Bari.Core.Test.Build.Dependencies.ObjectPropertiesFingerprintTest.SerializeAndReadBack C# (CSharp) Method

SerializeAndReadBack() private method

private SerializeAndReadBack ( ) : void
return void
        public void SerializeAndReadBack()
        {
            var registry = new DependencyFingerprintProtocolRegistry();
            registry.Register<ObjectPropertiesProtocol>();

            var ser = new BinarySerializer(registry);
            var obj = new
            {
                A = "hello",
                B = 10,
                C = 12.2,
                D = new TimeSpan(2, 10, 25)
            };
            var fp1 = new ObjectPropertiesFingerprint(obj, new[] { "A", "B", "C", "D" });

            byte[] data;
            using (var ms = new MemoryStream())
            {
                fp1.Save(ser, ms);
                data = ms.ToArray();
            }

            ObjectPropertiesFingerprint fp2;
            using (var ms = new MemoryStream(data))
            {
                fp2 = new ObjectPropertiesFingerprint(ser, ms);
            }

            fp1.Should().Be(fp2);
        }