예제 #1
0
        public void CloneIsDeep()
        {
            var metaData             = new ImageFrameMetadata();
            ImageFrameMetadata clone = metaData.DeepClone();

            Assert.False(metaData.GetGifMetadata().Equals(clone.GetGifMetadata()));
        }
        public void CloneIsDeep()
        {
            var metaData             = new ImageFrameMetadata();
            ImageFrameMetadata clone = metaData.DeepClone();

            Assert.False(metaData.GetFormatMetadata(GifFormat.Instance).Equals(clone.GetFormatMetadata(GifFormat.Instance)));
        }
        public void CloneIsDeep()
        {
            // arrange
            var exifProfile = new ExifProfile();

            exifProfile.SetValue(ExifTag.Software, "UnitTest");
            exifProfile.SetValue(ExifTag.Artist, "UnitTest");
            var xmpProfile = new XmpProfile(new byte[0]);
            var iccProfile = new IccProfile()
            {
                Header = new IccProfileHeader()
                {
                    CmmType = "Unittest"
                }
            };
            var iptcProfile = new ImageSharp.Metadata.Profiles.Iptc.IptcProfile();
            var metaData    = new ImageFrameMetadata()
            {
                XmpProfile  = xmpProfile,
                ExifProfile = exifProfile,
                IccProfile  = iccProfile,
                IptcProfile = iptcProfile
            };

            // act
            ImageFrameMetadata clone = metaData.DeepClone();

            // assert
            Assert.NotNull(clone);
            Assert.NotNull(clone.ExifProfile);
            Assert.NotNull(clone.XmpProfile);
            Assert.NotNull(clone.IccProfile);
            Assert.NotNull(clone.IptcProfile);
            Assert.False(metaData.ExifProfile.Equals(clone.ExifProfile));
            Assert.True(metaData.ExifProfile.Values.Count == clone.ExifProfile.Values.Count);
            Assert.False(ReferenceEquals(metaData.XmpProfile, clone.XmpProfile));
            Assert.True(metaData.XmpProfile.Data.Equals(clone.XmpProfile.Data));
            Assert.False(metaData.GetGifMetadata().Equals(clone.GetGifMetadata()));
            Assert.False(metaData.IccProfile.Equals(clone.IccProfile));
            Assert.False(metaData.IptcProfile.Equals(clone.IptcProfile));
        }