Changeset View
Changeset View
Standalone View
Standalone View
autotests/embeddedimagedatatest.cpp
Show All 19 Lines | |||||
20 | */ | 20 | */ | ||
21 | 21 | | |||
22 | #include "embeddedimagedatatest.h" | 22 | #include "embeddedimagedatatest.h" | ||
23 | #include "embeddedimagedata.h" | 23 | #include "embeddedimagedata.h" | ||
24 | #include "indexerextractortestsconfig.h" | 24 | #include "indexerextractortestsconfig.h" | ||
25 | 25 | | |||
26 | #include <QMimeDatabase> | 26 | #include <QMimeDatabase> | ||
27 | #include <QTest> | 27 | #include <QTest> | ||
28 | #include <QByteArray> | ||||
28 | 29 | | |||
29 | using namespace KFileMetaData; | 30 | using namespace KFileMetaData; | ||
30 | 31 | | |||
31 | QString EmbeddedImageDataTest::testFilePath(const QString& fileName) const | 32 | QString EmbeddedImageDataTest::testFilePath(const QString& fileName) const | ||
32 | { | 33 | { | ||
33 | return QLatin1String(INDEXER_TESTS_SAMPLE_FILES_PATH) + QLatin1Char('/') + fileName; | 34 | return QLatin1String(INDEXER_TESTS_SAMPLE_FILES_PATH) + QLatin1Char('/') + fileName; | ||
34 | } | 35 | } | ||
35 | 36 | | |||
▲ Show 20 Lines • Show All 63 Lines • ▼ Show 20 Line(s) | 99 | QTest::addRow("wavpack") | |||
99 | << QStringLiteral("test.wv") | 100 | << QStringLiteral("test.wv") | ||
100 | ; | 101 | ; | ||
101 | 102 | | |||
102 | QTest::addRow("wma") | 103 | QTest::addRow("wma") | ||
103 | << QStringLiteral("test.wma") | 104 | << QStringLiteral("test.wma") | ||
104 | ; | 105 | ; | ||
105 | } | 106 | } | ||
106 | 107 | | |||
108 | void EmbeddedImageDataTest::testWrite() | ||||
109 | { | ||||
110 | QFETCH(QString, fileName); | ||||
111 | EmbeddedImageData imageData; | ||||
112 | | ||||
113 | QString testFileName = testFilePath(QStringLiteral("writer") + fileName); | ||||
114 | | ||||
115 | QFile::copy(testFilePath(fileName), testFileName); | ||||
116 | | ||||
117 | QFile testFile(testFilePath("test.jpg")); | ||||
118 | testFile.open(QIODevice::ReadOnly); | ||||
119 | | ||||
120 | QMap<EmbeddedImageData::ImageType, QByteArray> writeImages; | ||||
121 | QMap<EmbeddedImageData::ImageType, QByteArray> readImages; | ||||
122 | | ||||
123 | writeImages.insert(EmbeddedImageData::ImageType::FrontCover, testFile.readAll()); | ||||
124 | imageData.writeImageData(testFileName, writeImages); | ||||
125 | readImages = imageData.imageData(testFileName); | ||||
126 | | ||||
127 | QCOMPARE(readImages.value(EmbeddedImageData::FrontCover), writeImages.value(EmbeddedImageData::FrontCover)); | ||||
128 | | ||||
129 | QFile::remove(testFileName); | ||||
130 | } | ||||
131 | | ||||
132 | void EmbeddedImageDataTest::testWrite_data() | ||||
133 | { | ||||
134 | QTest::addColumn<QString>("fileName"); | ||||
135 | | ||||
136 | QTest::addRow("aiff") | ||||
137 | << QStringLiteral("test.aif") | ||||
138 | ; | ||||
139 | | ||||
140 | QTest::addRow("ape") | ||||
141 | << QStringLiteral("test.ape") | ||||
142 | ; | ||||
143 | | ||||
144 | QTest::addRow("opus") | ||||
145 | << QStringLiteral("test.opus") | ||||
146 | ; | ||||
147 | | ||||
148 | QTest::addRow("ogg") | ||||
149 | << QStringLiteral("test.ogg") | ||||
150 | ; | ||||
151 | | ||||
152 | QTest::addRow("flac") | ||||
153 | << QStringLiteral("test.flac") | ||||
154 | ; | ||||
155 | | ||||
156 | QTest::addRow("mp3") | ||||
157 | << QStringLiteral("test.mp3") | ||||
158 | ; | ||||
159 | | ||||
160 | QTest::addRow("m4a") | ||||
161 | << QStringLiteral("test.m4a") | ||||
162 | ; | ||||
163 | | ||||
164 | QTest::addRow("mpc") | ||||
165 | << QStringLiteral("test.mpc") | ||||
166 | ; | ||||
167 | | ||||
168 | QTest::addRow("speex") | ||||
169 | << QStringLiteral("test.spx") | ||||
170 | ; | ||||
171 | | ||||
172 | QTest::addRow("wav") | ||||
173 | << QStringLiteral("test.wav") | ||||
174 | ; | ||||
175 | | ||||
176 | QTest::addRow("wavpack") | ||||
177 | << QStringLiteral("test.wv") | ||||
178 | ; | ||||
179 | | ||||
180 | QTest::addRow("wma") | ||||
181 | << QStringLiteral("test.wma") | ||||
182 | ; | ||||
183 | } | ||||
184 | | ||||
107 | QTEST_GUILESS_MAIN(EmbeddedImageDataTest) | 185 | QTEST_GUILESS_MAIN(EmbeddedImageDataTest) |