From: Michael Helmling Date: Mon, 23 Jul 2012 18:53:25 +0000 (+0200) Subject: add id3v2 frame delete test X-Git-Tag: v1.8~14^2~1 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fc3fc10f60488e97423ff7ef077c940a5acc0449;p=taglib add id3v2 frame delete test --- diff --git a/tests/test_id3v2.cpp b/tests/test_id3v2.cpp index 27533655..0dd033d5 100644 --- a/tests/test_id3v2.cpp +++ b/tests/test_id3v2.cpp @@ -71,6 +71,7 @@ class TestID3v2 : public CppUnit::TestFixture CPPUNIT_TEST(testCompressedFrameWithBrokenLength); CPPUNIT_TEST(testPropertyInterface); CPPUNIT_TEST(testPropertyInterface2); + CPPUNIT_TEST(testDeleteFrame); CPPUNIT_TEST(testSaveAndStripID3v1ShouldNotAddFrameFromID3v1ToId3v2); CPPUNIT_TEST_SUITE_END(); @@ -629,6 +630,21 @@ public: CPPUNIT_ASSERT(tag.frameList("TIPL").isEmpty()); } + void testDeleteFrame() + { + ScopedFileCopy copy("rare_frames", ".mp3"); + string newname = copy.fileName(); + MPEG::File f(newname.c_str()); + ID3v2::Tag *t = f.ID3v2Tag(); + ID3v2::Frame *frame = t->frameList("TCON")[0]; + CPPUNIT_ASSERT_EQUAL(1u, t->frameList("TCON").size()); + t->removeFrame(frame, true); + f.save(MPEG::File::ID3v2); + + MPEG::File f2(newname.c_str()); + t = f2.ID3v2Tag(); + CPPUNIT_ASSERT(t->frameList("TCON").isEmpty()); + } void testSaveAndStripID3v1ShouldNotAddFrameFromID3v1ToId3v2() { ScopedFileCopy copy("xing", ".mp3");