Browse Source

DebugTools: don't try to use system plugin dirs in CompareImage test.

Due to that, all the tests got skipped on the CI and moreover when ABI
was broken, tests were failing hard due to ABI mismatches with system
installed plugins. No good.

Some variants still need to access the system plugin dir (such as checks
for compressed data), but those are minimal. Sanitized them nevertheless
so a broken system-installed plugin doesn't break the test.
audio-import
Vladimír Vondruš 7 years ago
parent
commit
8357442ad7
  1. 267
      src/Magnum/DebugTools/Test/CompareImageTest.cpp

267
src/Magnum/DebugTools/Test/CompareImageTest.cpp

@ -77,8 +77,6 @@ struct CompareImageTest: TestSuite::Tester {
void imageError(); void imageError();
void imageFile(); void imageFile();
void imageFileError(); void imageFileError();
void imageFileExternalPluginManager();
void imageFileExternalPluginManagerError();
void imageFilePluginLoadFailed(); void imageFilePluginLoadFailed();
void imageFileActualLoadFailed(); void imageFileActualLoadFailed();
void imageFileExpectedLoadFailed(); void imageFileExpectedLoadFailed();
@ -86,15 +84,11 @@ struct CompareImageTest: TestSuite::Tester {
void imageFileExpectedIsCompressed(); void imageFileExpectedIsCompressed();
void imageToFile(); void imageToFile();
void imageToFileError(); void imageToFileError();
void imageToFileExternalPluginManager();
void imageToFileExternalPluginManagerError();
void imageToFilePluginLoadFailed(); void imageToFilePluginLoadFailed();
void imageToFileExpectedLoadFailed(); void imageToFileExpectedLoadFailed();
void imageToFileExpectedIsCompressed(); void imageToFileExpectedIsCompressed();
void fileToImage(); void fileToImage();
void fileToImageError(); void fileToImageError();
void fileToImageExternalPluginManager();
void fileToImageExternalPluginManagerError();
void fileToImagePluginLoadFailed(); void fileToImagePluginLoadFailed();
void fileToImageActualLoadFailed(); void fileToImageActualLoadFailed();
void fileToImageActualIsCompressed(); void fileToImageActualIsCompressed();
@ -129,42 +123,48 @@ CompareImageTest::CompareImageTest() {
&CompareImageTest::compareAboveMeanThreshold, &CompareImageTest::compareAboveMeanThreshold,
&CompareImageTest::image, &CompareImageTest::image,
&CompareImageTest::imageError, &CompareImageTest::imageError});
&CompareImageTest::imageFile,
&CompareImageTest::imageFileError});
addTests({&CompareImageTest::imageFileExternalPluginManager, addTests({&CompareImageTest::imageFile,
&CompareImageTest::imageFileExternalPluginManagerError}, &CompareImageTest::imageFileError},
&CompareImageTest::setupExternalPluginManager, &CompareImageTest::setupExternalPluginManager,
&CompareImageTest::teardownExternalPluginManager); &CompareImageTest::teardownExternalPluginManager);
addTests({&CompareImageTest::imageFilePluginLoadFailed, addTests({&CompareImageTest::imageFilePluginLoadFailed});
&CompareImageTest::imageFileActualLoadFailed,
&CompareImageTest::imageFileExpectedLoadFailed,
&CompareImageTest::imageFileActualIsCompressed,
&CompareImageTest::imageFileExpectedIsCompressed,
&CompareImageTest::imageToFile,
&CompareImageTest::imageToFileError});
addTests({&CompareImageTest::imageToFileExternalPluginManager, addTests({&CompareImageTest::imageFileActualLoadFailed,
&CompareImageTest::imageToFileExternalPluginManagerError}, &CompareImageTest::imageFileExpectedLoadFailed},
&CompareImageTest::setupExternalPluginManager, &CompareImageTest::setupExternalPluginManager,
&CompareImageTest::teardownExternalPluginManager); &CompareImageTest::teardownExternalPluginManager);
addTests({&CompareImageTest::imageToFilePluginLoadFailed, addTests({&CompareImageTest::imageFileActualIsCompressed,
&CompareImageTest::imageToFileExpectedLoadFailed, &CompareImageTest::imageFileExpectedIsCompressed});
&CompareImageTest::imageToFileExpectedIsCompressed,
&CompareImageTest::fileToImage,
&CompareImageTest::fileToImageError});
addTests({&CompareImageTest::fileToImageExternalPluginManager, addTests({&CompareImageTest::imageToFile,
&CompareImageTest::fileToImageExternalPluginManagerError}, &CompareImageTest::imageToFileError},
&CompareImageTest::setupExternalPluginManager, &CompareImageTest::setupExternalPluginManager,
&CompareImageTest::teardownExternalPluginManager); &CompareImageTest::teardownExternalPluginManager);
addTests({&CompareImageTest::fileToImagePluginLoadFailed, addTests({&CompareImageTest::imageToFilePluginLoadFailed});
&CompareImageTest::fileToImageActualLoadFailed,
&CompareImageTest::fileToImageActualIsCompressed}); addTests({&CompareImageTest::imageToFileExpectedLoadFailed},
&CompareImageTest::setupExternalPluginManager,
&CompareImageTest::teardownExternalPluginManager);
addTests({&CompareImageTest::imageToFileExpectedIsCompressed});
addTests({&CompareImageTest::fileToImage,
&CompareImageTest::fileToImageError},
&CompareImageTest::setupExternalPluginManager,
&CompareImageTest::teardownExternalPluginManager);
addTests({&CompareImageTest::fileToImagePluginLoadFailed});
addTests({&CompareImageTest::fileToImageActualLoadFailed},
&CompareImageTest::setupExternalPluginManager,
&CompareImageTest::teardownExternalPluginManager);
addTests({&CompareImageTest::fileToImageActualIsCompressed});
} }
const Float ActualRedData[] = { const Float ActualRedData[] = {
@ -474,7 +474,7 @@ void CompareImageTest::compareAboveMeanThreshold() {
} }
void CompareImageTest::setupExternalPluginManager() { void CompareImageTest::setupExternalPluginManager() {
_manager.emplace(); _manager.emplace("nonexistent");
/* Load the plugin directly from the build tree. Otherwise it's either /* Load the plugin directly from the build tree. Otherwise it's either
static and already loaded or not present in the build tree */ static and already loaded or not present in the build tree */
#if defined(ANYIMAGEIMPORTER_PLUGIN_FILENAME) && defined(TGAIMPORTER_PLUGIN_FILENAME) #if defined(ANYIMAGEIMPORTER_PLUGIN_FILENAME) && defined(TGAIMPORTER_PLUGIN_FILENAME)
@ -513,42 +513,6 @@ void CompareImageTest::imageError() {
} }
void CompareImageTest::imageFile() { void CompareImageTest::imageFile() {
{
PluginManager::Manager<Trade::AbstractImporter> manager;
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
manager.loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
}
CORRADE_COMPARE_WITH(
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageActual.tga"),
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageExpected.tga"),
(CompareImageFile{40.0f, 20.0f}));
}
void CompareImageTest::imageFileError() {
{
PluginManager::Manager<Trade::AbstractImporter> manager;
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
manager.loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
}
std::stringstream out;
{
TestSuite::Comparator<CompareImageFile> compare{nullptr, 20.0f, 10.0f};
CORRADE_VERIFY(!compare(
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageActual.tga"),
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageExpected.tga")));
Debug d{&out, Debug::Flag::DisableColors};
compare.printErrorMessage(d, "a", "b");
}
CORRADE_COMPARE(out.str(), ImageCompareError);
}
void CompareImageTest::imageFileExternalPluginManager() {
if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
_manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound) _manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found."); CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
@ -559,7 +523,7 @@ void CompareImageTest::imageFileExternalPluginManager() {
(CompareImageFile{*_manager, 40.0f, 20.0f})); (CompareImageFile{*_manager, 40.0f, 20.0f}));
} }
void CompareImageTest::imageFileExternalPluginManagerError() { void CompareImageTest::imageFileError() {
if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
_manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound) _manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found."); CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
@ -598,17 +562,14 @@ void CompareImageTest::imageFilePluginLoadFailed() {
} }
void CompareImageTest::imageFileActualLoadFailed() { void CompareImageTest::imageFileActualLoadFailed() {
{ if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
PluginManager::Manager<Trade::AbstractImporter> manager; _manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound)
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
manager.loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
}
std::stringstream out; std::stringstream out;
{ {
TestSuite::Comparator<CompareImageFile> compare{nullptr, 20.0f, 10.0f}; TestSuite::Comparator<CompareImageFile> compare{&*_manager, 20.0f, 10.0f};
CORRADE_VERIFY(!compare("nonexistent.tga", CORRADE_VERIFY(!compare("nonexistent.tga",
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageExpected.tga"))); Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageExpected.tga")));
Debug d{&out, Debug::Flag::DisableColors}; Debug d{&out, Debug::Flag::DisableColors};
@ -619,17 +580,14 @@ void CompareImageTest::imageFileActualLoadFailed() {
} }
void CompareImageTest::imageFileExpectedLoadFailed() { void CompareImageTest::imageFileExpectedLoadFailed() {
{ if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
PluginManager::Manager<Trade::AbstractImporter> manager; _manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound)
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
manager.loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
}
std::stringstream out; std::stringstream out;
{ {
TestSuite::Comparator<CompareImageFile> compare{nullptr, 20.0f, 10.0f}; TestSuite::Comparator<CompareImageFile> compare{&*_manager, 20.0f, 10.0f};
CORRADE_VERIFY(!compare( CORRADE_VERIFY(!compare(
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageActual.tga"), Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageActual.tga"),
"nonexistent.tga")); "nonexistent.tga"));
@ -641,17 +599,15 @@ void CompareImageTest::imageFileExpectedLoadFailed() {
} }
void CompareImageTest::imageFileActualIsCompressed() { void CompareImageTest::imageFileActualIsCompressed() {
{ PluginManager::Manager<Trade::AbstractImporter> manager;
PluginManager::Manager<Trade::AbstractImporter> manager; if(manager.load("AnyImageImporter") < PluginManager::LoadState::Loaded ||
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || manager.load("DdsImporter") < PluginManager::LoadState::Loaded)
manager.loadState("DdsImporter") == PluginManager::LoadState::NotFound) CORRADE_SKIP("AnyImageImporter or DdsImporter plugins can't be loaded.");
CORRADE_SKIP("AnyImageImporter or DdsImporter plugins not found.");
}
std::stringstream out; std::stringstream out;
{ {
TestSuite::Comparator<CompareImageFile> compare{nullptr, 20.0f, 10.0f}; TestSuite::Comparator<CompareImageFile> compare{&manager, 20.0f, 10.0f};
CORRADE_VERIFY(!compare( CORRADE_VERIFY(!compare(
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageCompressed.dds"), Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageCompressed.dds"),
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageExpected.tga"))); Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageExpected.tga")));
@ -663,17 +619,15 @@ void CompareImageTest::imageFileActualIsCompressed() {
} }
void CompareImageTest::imageFileExpectedIsCompressed() { void CompareImageTest::imageFileExpectedIsCompressed() {
{ PluginManager::Manager<Trade::AbstractImporter> manager;
PluginManager::Manager<Trade::AbstractImporter> manager; if(manager.load("AnyImageImporter") < PluginManager::LoadState::Loaded ||
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || manager.load("DdsImporter") < PluginManager::LoadState::Loaded)
manager.loadState("DdsImporter") == PluginManager::LoadState::NotFound) CORRADE_SKIP("AnyImageImporter or DdsImporter plugins can't be loaded.");
CORRADE_SKIP("AnyImageImporter or DdsImporter plugins not found.");
}
std::stringstream out; std::stringstream out;
{ {
TestSuite::Comparator<CompareImageFile> compare{nullptr, 20.0f, 10.0f}; TestSuite::Comparator<CompareImageFile> compare{&manager, 20.0f, 10.0f};
CORRADE_VERIFY(!compare( CORRADE_VERIFY(!compare(
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageActual.tga"), Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageActual.tga"),
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageCompressed.dds"))); Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageCompressed.dds")));
@ -686,50 +640,17 @@ void CompareImageTest::imageFileExpectedIsCompressed() {
} }
void CompareImageTest::imageToFile() { void CompareImageTest::imageToFile() {
{
PluginManager::Manager<Trade::AbstractImporter> manager;
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
manager.loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
}
CORRADE_COMPARE_WITH(ActualRgb,
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageExpected.tga"),
(CompareImageToFile{40.0f, 20.0f}));
}
void CompareImageTest::imageToFileError() {
{
PluginManager::Manager<Trade::AbstractImporter> manager;
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
manager.loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
}
std::stringstream out;
{
TestSuite::Comparator<CompareImageToFile> compare{nullptr, 20.0f, 10.0f};
CORRADE_VERIFY(!compare(ActualRgb,
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageExpected.tga")));
Debug d{&out, Debug::Flag::DisableColors};
compare.printErrorMessage(d, "a", "b");
}
CORRADE_COMPARE(out.str(), ImageCompareError);
}
void CompareImageTest::imageToFileExternalPluginManager() {
if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
_manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound) _manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found."); CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
CORRADE_COMPARE_WITH(ActualRgb, CORRADE_COMPARE_WITH(ActualRgb,
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageExpected.tga"), Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageExpected.tga"),
(CompareImageToFile{*_manager, 40.0f, 20.0f})); (CompareImageToFile{*_manager, 40.0f, 20.0f}));
} }
void CompareImageTest::imageToFileExternalPluginManagerError() { void CompareImageTest::imageToFileError() {
if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
_manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound) _manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found."); CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
@ -766,17 +687,14 @@ void CompareImageTest::imageToFilePluginLoadFailed() {
} }
void CompareImageTest::imageToFileExpectedLoadFailed() { void CompareImageTest::imageToFileExpectedLoadFailed() {
{ if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
PluginManager::Manager<Trade::AbstractImporter> manager; _manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound)
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
manager.loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
}
std::stringstream out; std::stringstream out;
{ {
TestSuite::Comparator<CompareImageToFile> compare{nullptr, 20.0f, 10.0f}; TestSuite::Comparator<CompareImageToFile> compare{&*_manager, 20.0f, 10.0f};
CORRADE_VERIFY(!compare(ActualRgb, "nonexistent.tga")); CORRADE_VERIFY(!compare(ActualRgb, "nonexistent.tga"));
Debug d{&out, Debug::Flag::DisableColors}; Debug d{&out, Debug::Flag::DisableColors};
compare.printErrorMessage(d, "a", "b"); compare.printErrorMessage(d, "a", "b");
@ -786,17 +704,15 @@ void CompareImageTest::imageToFileExpectedLoadFailed() {
} }
void CompareImageTest::imageToFileExpectedIsCompressed() { void CompareImageTest::imageToFileExpectedIsCompressed() {
{ PluginManager::Manager<Trade::AbstractImporter> manager;
PluginManager::Manager<Trade::AbstractImporter> manager; if(manager.load("AnyImageImporter") < PluginManager::LoadState::Loaded ||
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || manager.load("DdsImporter") < PluginManager::LoadState::Loaded)
manager.loadState("DdsImporter") == PluginManager::LoadState::NotFound) CORRADE_SKIP("AnyImageImporter or DdsImporter plugins can't be loaded.");
CORRADE_SKIP("AnyImageImporter or DdsImporter plugins not found.");
}
std::stringstream out; std::stringstream out;
{ {
TestSuite::Comparator<CompareImageToFile> compare{nullptr, 20.0f, 10.0f}; TestSuite::Comparator<CompareImageToFile> compare{&manager, 20.0f, 10.0f};
CORRADE_VERIFY(!compare(ActualRgb, Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageCompressed.dds"))); CORRADE_VERIFY(!compare(ActualRgb, Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageCompressed.dds")));
Debug d{&out, Debug::Flag::DisableColors}; Debug d{&out, Debug::Flag::DisableColors};
compare.printErrorMessage(d, "a", "b"); compare.printErrorMessage(d, "a", "b");
@ -807,42 +723,6 @@ void CompareImageTest::imageToFileExpectedIsCompressed() {
} }
void CompareImageTest::fileToImage() { void CompareImageTest::fileToImage() {
{
PluginManager::Manager<Trade::AbstractImporter> manager;
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
manager.loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
}
CORRADE_COMPARE_WITH(
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageActual.tga"),
ExpectedRgb,
(CompareFileToImage{40.0f, 20.0f}));
}
void CompareImageTest::fileToImageError() {
{
PluginManager::Manager<Trade::AbstractImporter> manager;
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
manager.loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
}
std::stringstream out;
{
TestSuite::Comparator<CompareFileToImage> compare{nullptr, 20.0f, 10.0f};
CORRADE_VERIFY(!compare(
Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageActual.tga"),
ExpectedRgb));
Debug d{&out, Debug::Flag::DisableColors};
compare.printErrorMessage(d, "a", "b");
}
CORRADE_COMPARE(out.str(), ImageCompareError);
}
void CompareImageTest::fileToImageExternalPluginManager() {
if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
_manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound) _manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found."); CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
@ -853,7 +733,7 @@ void CompareImageTest::fileToImageExternalPluginManager() {
(CompareFileToImage{*_manager, 40.0f, 20.0f})); (CompareFileToImage{*_manager, 40.0f, 20.0f}));
} }
void CompareImageTest::fileToImageExternalPluginManagerError() { void CompareImageTest::fileToImageError() {
if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
_manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound) _manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found."); CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
@ -892,17 +772,14 @@ void CompareImageTest::fileToImagePluginLoadFailed() {
} }
void CompareImageTest::fileToImageActualLoadFailed() { void CompareImageTest::fileToImageActualLoadFailed() {
{ if(_manager->loadState("AnyImageImporter") == PluginManager::LoadState::NotFound ||
PluginManager::Manager<Trade::AbstractImporter> manager; _manager->loadState("TgaImporter") == PluginManager::LoadState::NotFound)
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
manager.loadState("TgaImporter") == PluginManager::LoadState::NotFound)
CORRADE_SKIP("AnyImageImporter or TgaImporter plugins not found.");
}
std::stringstream out; std::stringstream out;
{ {
TestSuite::Comparator<CompareFileToImage> compare{nullptr, 20.0f, 10.0f}; TestSuite::Comparator<CompareFileToImage> compare{&*_manager, 20.0f, 10.0f};
CORRADE_VERIFY(!compare("nonexistent.tga", ExpectedRgb)); CORRADE_VERIFY(!compare("nonexistent.tga", ExpectedRgb));
Debug d{&out, Debug::Flag::DisableColors}; Debug d{&out, Debug::Flag::DisableColors};
compare.printErrorMessage(d, "a", "b"); compare.printErrorMessage(d, "a", "b");
@ -912,17 +789,15 @@ void CompareImageTest::fileToImageActualLoadFailed() {
} }
void CompareImageTest::fileToImageActualIsCompressed() { void CompareImageTest::fileToImageActualIsCompressed() {
{ PluginManager::Manager<Trade::AbstractImporter> manager;
PluginManager::Manager<Trade::AbstractImporter> manager; if(manager.load("AnyImageImporter") < PluginManager::LoadState::Loaded ||
if(manager.loadState("AnyImageImporter") == PluginManager::LoadState::NotFound || manager.load("DdsImporter") < PluginManager::LoadState::Loaded)
manager.loadState("DdsImporter") == PluginManager::LoadState::NotFound) CORRADE_SKIP("AnyImageImporter or DdsImporter plugins can't be loaded.");
CORRADE_SKIP("AnyImageImporter or DdsImporter plugins not found.");
}
std::stringstream out; std::stringstream out;
{ {
TestSuite::Comparator<CompareFileToImage> compare{nullptr, 20.0f, 10.0f}; TestSuite::Comparator<CompareFileToImage> compare{&manager, 20.0f, 10.0f};
CORRADE_VERIFY(!compare(Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageCompressed.dds"), ExpectedRgb)); CORRADE_VERIFY(!compare(Utility::Directory::join(DEBUGTOOLS_TEST_DIR, "CompareImageCompressed.dds"), ExpectedRgb));
Debug d{&out, Debug::Flag::DisableColors}; Debug d{&out, Debug::Flag::DisableColors};
compare.printErrorMessage(d, "a", "b"); compare.printErrorMessage(d, "a", "b");

Loading…
Cancel
Save