Show something useful for ChapterFrame::toString()

Closes #517
This commit is contained in:
Scott Wheeler 2015-05-18 19:51:18 +02:00
parent 34da0c0dab
commit d248f77ab9
2 changed files with 22 additions and 2 deletions

View File

@ -190,7 +190,25 @@ void ChapterFrame::removeEmbeddedFrames(const ByteVector &id)
String ChapterFrame::toString() const
{
return String::null;
String s = String(d->elementID) +
": start time: " + String::number(d->startTime) +
", end time: " + String::number(d->endTime);
if(d->startOffset != 0xFFFFFFFF)
s += ", start offset: " + String::number(d->startOffset);
if(d->endOffset != 0xFFFFFFFF)
s += ", start offset: " + String::number(d->endOffset);
if(!d->embeddedFrameList.isEmpty()) {
StringList frameIDs;
for(FrameList::ConstIterator it = d->embeddedFrameList.begin();
it != d->embeddedFrameList.end(); ++it)
frameIDs.append((*it)->frameID());
s += ", sub-frames: [ " + frameIDs.toString(", ") + " ]";
}
return s;
}
PropertyMap ChapterFrame::asProperties() const

View File

@ -986,12 +986,14 @@ public:
ID3v2::ChapterFrame f4("C", 3, 5, 2, 3, frames);
CPPUNIT_ASSERT_EQUAL(expected, f4.render());
CPPUNIT_ASSERT(!f4.toString().isEmpty());
ID3v2::ChapterFrame f5("C", 3, 5, 2, 3);
eF = new ID3v2::TextIdentificationFrame("TIT2");
eF->setText("CH1");
f5.addEmbeddedFrame(eF);
CPPUNIT_ASSERT_EQUAL(expected, f5.render());
}
}
void testParseTableOfContentsFrame()
{