Exemplo n.º 1
0
        private static void TestTagUtilsWriteRawBiggerQuantize()
        {
            string fileName = VirtualDrive.VirtualFileName("TestTagUtilsWriteRawBiggerQuantize\\t1.mp3");

            TestTags.WriteDemoMp3(fileName, TestTags.demoTag2_3);

            FileInfo fileInfo = new FileInfo(fileName);

            TagUtils.WriteTagV2(TestTags.demoTag2_4, fileInfo, Rewriter.Strategy.Quantize);
            UnitTest.Test(TagUtils.TagSize(fileInfo) % Rewriter.BlockSize == 0);
            TagUtils.StripTagV2(fileInfo, 0);
            UnitTest.Test(ArrayUtils.IsEqual(VirtualDrive.Load(fileName), TestTags.mpegDummy));
        }
Exemplo n.º 2
0
        private static void TestSetTagSizeRawV2()
        {
            int inc = 10;

            byte[] raw0 = (byte[])TestTags.demoTag2_3.Clone();

            int size0 = TagUtils.TagSize(raw0);
            int size1 = size0 + inc;

            byte[] raw1 = TagUtils.RecreateTagWithNewTagSize(raw0, size1);

            UnitTest.Test(raw1.Length == raw0.Length + inc);
            UnitTest.Test(TagUtils.TagSize(raw1) == size1);
        }
Exemplo n.º 3
0
        private static void TestTagUtilsWriteTagSmallerQuantize()
        {
            Tag   tag = TagUtils.RawToTag(TestTags.demoTag2_3);
            Frame f   = new Frame(tag.DescriptionMap, "MCDI");

            (f.Content as FrameContentBinary).Content = new byte[2048];
            tag.Add(f);

            int len = TagUtils.TagSize(tag);

            string fileName = VirtualDrive.VirtualFileName("TestTagUtilsWriteTagSmallerNeverShrink\\t1.mp3");

            TestTags.WriteDemoMp3(fileName, TagUtils.TagToRaw(tag));

            tag.Remove(f);
            FileInfo fileInfo = new FileInfo(fileName);

            TagUtils.WriteTagV2(tag, fileInfo, Rewriter.Strategy.Quantize);
            UnitTest.Test(VirtualDrive.FileLength(fileName) == 1024 + TestTags.mpegDummy.Length);
            TagUtils.StripTagV2(fileInfo, 0);
            UnitTest.Test(ArrayUtils.IsEqual(VirtualDrive.Load(fileName), TestTags.mpegDummy));
        }