void ut_load::testFileNotFound()
{
    QFile fooFile("/usr/share/quillimagefilter-tests/images/fooxxx.png");
    QVERIFY(!fooFile.exists());

    QImage fooImage(fooFile.fileName());
    QuillImageFilter *filter =
        QuillImageFilterFactory::createImageFilter("org.maemo.load");
    QVERIFY(filter);
    QCOMPARE(filter->name(), QString("com.meego.load"));
    QVERIFY(filter->supportsOption(QuillImageFilter::FileName));
    QVERIFY(filter->supportsOption(QuillImageFilter::FileFormat));
    QVERIFY(filter->supportsOption(QuillImageFilter::DisableUndo));
    QVERIFY(filter->supportsOption(QuillImageFilter::SizeAfter));

    filter->setOption(QuillImageFilter::FileName,
                      QVariant(fooFile.fileName()));
    filter->setOption(QuillImageFilter::MimeType,
                      QVariant("image/png"));

    filter->apply(fooImage);
    QCOMPARE(filter->error(),QuillImageFilter::FileNotFoundError);
    fooFile.close();
    delete filter;
}
void ut_load:: testInvalidData()
{
    QuillImageFilter *filter =
        QuillImageFilterFactory::createImageFilter("org.maemo.load");
    QFile invalidFile("/usr/share/quillimagefilter-tests/images/16_color_palette.xcf");
    QImage invalidImage(invalidFile.fileName());
    filter->setOption(QuillImageFilter::FileName,
                      QVariant( invalidFile.fileName()));
    filter->setOption(QuillImageFilter::MimeType,
                      QVariant("image/png"));
    filter->apply(invalidImage);
    QCOMPARE(filter->error(),QuillImageFilter::InvalidDataError);
    invalidFile.close();
    delete filter;
}
void ut_load::testUnsupportedFormat()
{
    QuillImageFilter *filter =
        QuillImageFilterFactory::createImageFilter("org.maemo.load");
    QFile unsupportedFile("/usr/share/quillimagefilter-tests/images/16_color_palette.xcf");
    QImage unsupportedImage(unsupportedFile.fileName());
    filter->setOption(QuillImageFilter::FileName,
                      QVariant( unsupportedFile.fileName()));
    filter->setOption(QuillImageFilter::FileFormat,
                      QVariant("xcf"));
    filter->apply(unsupportedImage);
    QCOMPARE(filter->error(),QuillImageFilter::UnsupportedFormatError);
    unsupportedFile.close();
    delete filter;
}
void ut_load::testLoadError()
{
    QuillImageFilter *filter =
        QuillImageFilterFactory::createImageFilter("org.maemo.load");

    QTemporaryFile testFile;
    testFile.open();

    filter->setOption(QuillImageFilter::FileName, testFile.fileName());
    filter->setOption(QuillImageFilter::FileFormat, QString("png"));

    QCOMPARE(filter->option(QuillImageFilter::FileFormat).toString(),
             QString("png"));

    QSize size = filter->newFullImageSize(QSize());
    QVERIFY(!size.isValid());

    QCOMPARE((int)filter->error(), (int)QuillImageFilter::InvalidDataError);

    delete filter;
}