CreateFingerprint() protected method

Creates fingerprint of the dependencies represented by this object, which can later be compared to other fingerprints.
protected CreateFingerprint ( ) : IDependencyFingerprint
return IDependencyFingerprint
        public void CreatesSameFingerprintForSameState()
        {
            var dep = new ProjectPropertiesDependencies(project, "Type");
            var fp1 = dep.CreateFingerprint();
            var fp2 = dep.CreateFingerprint();

            fp1.Should().Be(fp2);
            fp2.Should().Be(fp1);
        }
        public void ChangingThePropertyChangesTheFingerprint()
        {
            var dep = new ProjectPropertiesDependencies(project, "Type");
            var fp1 = dep.CreateFingerprint();

            project.Type = ProjectType.Executable;

            var fp2 = dep.CreateFingerprint();

            fp1.Should().NotBe(fp2);
        }
        public void ConvertToProtocolAndBack()
        {
            var dep = new ProjectPropertiesDependencies(project, "Type");
            var fp1 = dep.CreateFingerprint();

            var proto = fp1.Protocol;
            var fp2 = proto.CreateFingerprint();

            fp1.Should().Be(fp2);
        }
        public void SerializeAndReadBack()
        {
            var ser = new BinarySerializer();
            var dep = new ProjectPropertiesDependencies(project, "Type");
            var fp1 = dep.CreateFingerprint();

            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);
        }