Exemplo n.º 1
0
void ut_croppedthumbnail::testCroppedThumbnailAfterEdit()
{
    QTemporaryFile testFile;
    testFile.open();

    QuillImage image = Unittests::generatePaletteImage();
    image.save(testFile.fileName(), "png");

    Quill::setPreviewLevelCount(1);
    Quill::setPreviewSize(0, QSize(2, 2));
    Quill::setMinimumPreviewSize(0, QSize(2, 2));

    QuillFile *file = new QuillFile(testFile.fileName());
    QuillImageFilter *filter =
        QuillImageFilterFactory::createImageFilter(QuillImageFilter::Name_Crop);
    filter->setOption(QuillImageFilter::CropRectangle, QRect(0, 0, 4, 2));
    file->runFilter(filter);

    file->setDisplayLevel(1);

    Quill::releaseAndWait(); // load 0
    Quill::releaseAndWait(); // crop 0 - bad version
    Quill::releaseAndWait(); // load 1
    Quill::releaseAndWait(); // crop 1
    Quill::releaseAndWait(); // reform 0

    file->setDisplayLevel(0);
    QCOMPARE(file->allImageLevels().count(), 1);
    QCOMPARE(file->allImageLevels().first().size(), QSize(2, 2));
    QVERIFY(Unittests::compareImage(file->allImageLevels().first(),
                                    image.copy(1, 0, 2, 2)));

    delete file;
}
void ut_serialsaver::testSerialSaver()
{
    QTemporaryFile testFile;
    testFile.open();
    QByteArray metadata = QByteArray();
    QuillImage image =
        Unittests::generatePaletteImage().transformed(QTransform().rotate(90)).
        scaled(QSize(16, 64));

    SerialSaver serialSaver(testFile.fileName(), image.size(),metadata);

    QVERIFY(serialSaver.process(image.copy(0, 0, 16, 16)));
    QVERIFY(serialSaver.process(image.copy(0, 16, 16, 16)));
    QVERIFY(serialSaver.process(image.copy(0, 32, 16, 16)));
    QVERIFY(serialSaver.process(image.copy(0, 48, 16, 16)));

    QImage resultImage(testFile.fileName());

    Unittests::compareImage(resultImage, image);
}