diff --git a/autotests/filemetadatawidgettest.h b/autotests/filemetadatawidgettest.h --- a/autotests/filemetadatawidgettest.h +++ b/autotests/filemetadatawidgettest.h @@ -37,6 +37,7 @@ void shouldSignalOnceFiles(); void shouldShowProperties(); void shouldShowCommonProperties(); + void shouldShowMultiValueProperties(); private: Baloo::FileMetaDataWidget* m_widget; diff --git a/autotests/filemetadatawidgettest.cpp b/autotests/filemetadatawidgettest.cpp --- a/autotests/filemetadatawidgettest.cpp +++ b/autotests/filemetadatawidgettest.cpp @@ -192,3 +192,18 @@ // QCOMPARE( map->value("Album Artist:"), QLatin1String("Bill Laswell")); } +void FileMetadataWidgetTest::shouldShowMultiValueProperties() +{ + QSignalSpy spy(m_widget, &Baloo::FileMetaDataWidget::metaDataRequestFinished); + m_widget->setItems(KFileItemList() + << QUrl::fromLocalFile(QFINDTESTDATA("samplefiles/test_multivalue.ogg")) + ); + QVERIFY(spy.wait()); + QCOMPARE(spy.count(), 1); + auto artistWidget = m_widget->findChild(QStringLiteral("artist")); + QVERIFY2(artistWidget, "artist not found"); + QCOMPARE(artistWidget->text(), "Artist1 and Artist2"); + auto genreWidget = m_widget->findChild(QStringLiteral("genre")); + QVERIFY2(genreWidget, "genre not found"); + QCOMPARE(genreWidget->text(), "Genre1, Genre2, and Genre3"); +} diff --git a/autotests/samplefiles/test_multivalue.ogg b/autotests/samplefiles/test_multivalue.ogg new file mode 100644 index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 GIT binary patch literal 0 Hc$@