Changeset View
Changeset View
Standalone View
Standalone View
autotests/kcompressiondevicetest.cpp
Show First 20 Lines • Show All 186 Lines • ▼ Show 20 Line(s) | 176 | { | |||
---|---|---|---|---|---|
187 | 187 | | |||
188 | // WHEN | 188 | // WHEN | ||
189 | dev.close(); // I want a QVERIFY here... https://bugreports.qt.io/browse/QTBUG-70033 | 189 | dev.close(); // I want a QVERIFY here... https://bugreports.qt.io/browse/QTBUG-70033 | ||
190 | 190 | | |||
191 | // THEN | 191 | // THEN | ||
192 | QCOMPARE(int(dev.error()), int(QFileDevice::WriteError)); | 192 | QCOMPARE(int(dev.error()), int(QFileDevice::WriteError)); | ||
193 | } | 193 | } | ||
194 | 194 | | |||
195 | void KCompressionDeviceTest::testSeekReadUncompressedBuffer_data() | ||||
196 | { | ||||
197 | QTest::addColumn<int>("dataSize"); | ||||
198 | QTest::addColumn<int>("realDataPos"); | ||||
199 | QTest::newRow("1.5buffer") << BUFFER_SIZE + BUFFER_SIZE / 2 << BUFFER_SIZE; | ||||
200 | QTest::newRow("5seekbuffer") << 5 * SEEK_BUFFER_SIZE << 4 * SEEK_BUFFER_SIZE; | ||||
201 | } | ||||
202 | | ||||
195 | void KCompressionDeviceTest::testSeekReadUncompressedBuffer() | 203 | void KCompressionDeviceTest::testSeekReadUncompressedBuffer() | ||
196 | { | 204 | { | ||
197 | const int dataSize = BUFFER_SIZE + BUFFER_SIZE / 2; | 205 | QFETCH(int, dataSize); | ||
206 | QFETCH(int, realDataPos); | ||||
207 | | ||||
198 | QByteArray ba(dataSize, 0); | 208 | QByteArray ba(dataSize, 0); | ||
199 | 209 | | |||
200 | // all data is zero except after BUFFER_SIZE that it's 0 to 9 | 210 | // all data is zero except after realDataPos that it's 0 to 9 | ||
201 | for (int i = 0; i < 10; ++i) { | 211 | for (int i = 0; i < 10; ++i) { | ||
202 | ba[BUFFER_SIZE + i] = i; | 212 | ba[realDataPos + i] = i; | ||
203 | } | 213 | } | ||
204 | 214 | | |||
205 | QBuffer b; | 215 | QBuffer b; | ||
206 | b.setData(ba); | 216 | b.setData(ba); | ||
207 | QVERIFY(b.open(QIODevice::ReadOnly)); | 217 | QVERIFY(b.open(QIODevice::ReadOnly)); | ||
208 | 218 | | |||
209 | KCompressionDevice kcd(&b, false, KCompressionDevice::GZip); | 219 | KCompressionDevice kcd(&b, false, KCompressionDevice::GZip); | ||
210 | QVERIFY(kcd.open(QIODevice::ReadOnly)); | 220 | QVERIFY(kcd.open(QIODevice::ReadOnly)); | ||
211 | QVERIFY(kcd.seek(BUFFER_SIZE)); | 221 | QVERIFY(kcd.seek(realDataPos)); | ||
212 | 222 | | |||
213 | // the 10 bytes after BUFFER_SIZE should be 0 to 9 | 223 | // the 10 bytes after realDataPos should be 0 to 9 | ||
214 | const QByteArray kcdData = kcd.read(10); | 224 | const QByteArray kcdData = kcd.read(10); | ||
215 | QCOMPARE(kcdData.size(), 10); | 225 | QCOMPARE(kcdData.size(), 10); | ||
216 | for (int i = 0; i < kcdData.size(); ++i) { | 226 | for (int i = 0; i < kcdData.size(); ++i) { | ||
217 | QCOMPARE(kcdData[i], i); | 227 | QCOMPARE(kcdData[i], i); | ||
218 | } | 228 | } | ||
219 | } | 229 | } |