mirror of
https://github.com/taglib/taglib.git
synced 2025-07-18 21:14:23 -04:00
Try to read track also from TRACKNUM and year from YEAR.
Patch by David Bishop BUG:144396 git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@994811 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
This commit is contained in:
@ -10,6 +10,7 @@ INCLUDE_DIRECTORIES(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../taglib/mpeg
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../taglib/mp4
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../taglib/trueaudio
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../taglib/ogg
|
||||
)
|
||||
|
||||
SET(test_runner_SRCS
|
||||
@ -24,6 +25,7 @@ SET(test_runner_SRCS
|
||||
test_fileref.cpp
|
||||
test_id3v1.cpp
|
||||
test_id3v2.cpp
|
||||
test_xiphcomment.cpp
|
||||
)
|
||||
IF(WITH_MP4)
|
||||
SET(test_runner_SRCS ${test_runner_SRCS} test_mp4.cpp)
|
||||
|
64
tests/test_xiphcomment.cpp
Normal file
64
tests/test_xiphcomment.cpp
Normal file
@ -0,0 +1,64 @@
|
||||
#include <cppunit/extensions/HelperMacros.h>
|
||||
#include <string>
|
||||
#include <stdio.h>
|
||||
#include <xiphcomment.h>
|
||||
#include <tdebug.h>
|
||||
#include "utils.h"
|
||||
|
||||
using namespace std;
|
||||
using namespace TagLib;
|
||||
|
||||
class TestXiphComment : public CppUnit::TestFixture
|
||||
{
|
||||
CPPUNIT_TEST_SUITE(TestXiphComment);
|
||||
CPPUNIT_TEST(testYear);
|
||||
CPPUNIT_TEST(testSetYear);
|
||||
CPPUNIT_TEST(testTrack);
|
||||
CPPUNIT_TEST(testSetTrack);
|
||||
CPPUNIT_TEST_SUITE_END();
|
||||
|
||||
public:
|
||||
|
||||
void testYear()
|
||||
{
|
||||
Ogg::XiphComment cmt;
|
||||
CPPUNIT_ASSERT_EQUAL(TagLib::uint(0), cmt.year());
|
||||
cmt.addField("YEAR", "2009");
|
||||
CPPUNIT_ASSERT_EQUAL(TagLib::uint(2009), cmt.year());
|
||||
cmt.addField("DATE", "2008");
|
||||
CPPUNIT_ASSERT_EQUAL(TagLib::uint(2008), cmt.year());
|
||||
}
|
||||
|
||||
void testSetYear()
|
||||
{
|
||||
Ogg::XiphComment cmt;
|
||||
cmt.addField("YEAR", "2009");
|
||||
cmt.addField("DATE", "2008");
|
||||
cmt.setYear(1995);
|
||||
CPPUNIT_ASSERT(cmt.fieldListMap()["YEAR"].isEmpty());
|
||||
CPPUNIT_ASSERT_EQUAL(String("1995"), cmt.fieldListMap()["DATE"].front());
|
||||
}
|
||||
|
||||
void testTrack()
|
||||
{
|
||||
Ogg::XiphComment cmt;
|
||||
CPPUNIT_ASSERT_EQUAL(TagLib::uint(0), cmt.track());
|
||||
cmt.addField("TRACKNUM", "7");
|
||||
CPPUNIT_ASSERT_EQUAL(TagLib::uint(7), cmt.track());
|
||||
cmt.addField("TRACKNUMBER", "8");
|
||||
CPPUNIT_ASSERT_EQUAL(TagLib::uint(8), cmt.track());
|
||||
}
|
||||
|
||||
void testSetTrack()
|
||||
{
|
||||
Ogg::XiphComment cmt;
|
||||
cmt.addField("TRACKNUM", "7");
|
||||
cmt.addField("TRACKNUMBER", "8");
|
||||
cmt.setTrack(3);
|
||||
CPPUNIT_ASSERT(cmt.fieldListMap()["TRACKNUM"].isEmpty());
|
||||
CPPUNIT_ASSERT_EQUAL(String("3"), cmt.fieldListMap()["TRACKNUMBER"].front());
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
CPPUNIT_TEST_SUITE_REGISTRATION(TestXiphComment);
|
Reference in New Issue
Block a user