Example #1
0
        /// <summary>
        ///    Parse the unmodified file.
        /// </summary>
        TagLib.Image.File ParseUnmodifiedFile()
        {
            var file = ReadFile(ImageFile);

            InvariantValidator.ValidateMetadataInvariants(file);
            if (CompareImageData)
            {
                pre_hash = ReadImageData(file);
            }

            return(file);
        }
Example #2
0
        /// <summary>
        ///    Re-parse the modified file.
        /// </summary>
        void ParseModifiedFile()
        {
            var tmp = ReadFile(TempImageFile);

            InvariantValidator.ValidateMetadataInvariants(tmp);
            ModificationValidator.ValidatePostModification(tmp);
            if (CompareImageData)
            {
                post_hash = ReadImageData(tmp);
                ValidateImageData();
            }
        }
Example #3
0
        /// <summary>
        ///    Modify and save the file.
        /// </summary>
        void ModifyFile()
        {
            CreateTmpFile();
            var tmp = ReadFile(TempImageFile);

            InvariantValidator.ValidateMetadataInvariants(tmp);
            ModificationValidator.ValidatePreModification(tmp);
            ModificationValidator.ModifyMetadata(tmp);
            ModificationValidator.ValidatePostModification(tmp);
            Assert.IsTrue(tmp.Writeable, "File should be writeable");
            Assert.IsFalse(tmp.PossiblyCorrupt, "Corrupt files should never be written");
            tmp.Save();
        }