From 3fd5a734aefa321caeac18fc578ffb0aa93a5dfc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Sun, 4 Oct 2020 19:26:48 +0200 Subject: [PATCH] Trade: I'm too old for this much needless code duplication. --- .../Trade/Test/AbstractImageConverterTest.cpp | 44 ++++++++++++------- .../Trade/Test/AbstractSceneConverterTest.cpp | 23 ++++++---- 2 files changed, 44 insertions(+), 23 deletions(-) diff --git a/src/Magnum/Trade/Test/AbstractImageConverterTest.cpp b/src/Magnum/Trade/Test/AbstractImageConverterTest.cpp index 84758790e..a1c73d4fe 100644 --- a/src/Magnum/Trade/Test/AbstractImageConverterTest.cpp +++ b/src/Magnum/Trade/Test/AbstractImageConverterTest.cpp @@ -437,11 +437,14 @@ void AbstractImageConverterTest::exportToFile() { } } converter; - /* Remove previous file */ - Utility::Directory::rm(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out")); + const std::string filename = Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"); - CORRADE_VERIFY(converter.exportToFile(ImageView2D{PixelFormat::RGBA8Unorm, {0xf0, 0x0d}, {nullptr, 0xf0*0x0d*4}}, Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"))); - CORRADE_COMPARE_AS(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"), + /* Remove previous file, if any */ + Utility::Directory::rm(filename); + CORRADE_VERIFY(!Utility::Directory::exists(filename)); + + CORRADE_VERIFY(converter.exportToFile(ImageView2D{PixelFormat::RGBA8Unorm, {0xf0, 0x0d}, {nullptr, 0xf0*0x0d*4}}, filename)); + CORRADE_COMPARE_AS(filename, "\xf0\x0d", TestSuite::Compare::FileToString); } @@ -454,13 +457,15 @@ void AbstractImageConverterTest::exportToFileThroughData() { }; } converter; - /* Remove previous file */ - Utility::Directory::rm(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out")); + const std::string filename = Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"); + + /* Remove previous file, if any */ + Utility::Directory::rm(filename); + CORRADE_VERIFY(!Utility::Directory::exists(filename)); /* doExportToFile() should call doExportToData() */ - ImageView2D image(PixelFormat::RGBA8Unorm, {0xfe, 0xed}, {nullptr, 0xfe*0xed*4}); - CORRADE_VERIFY(converter.exportToFile(image, Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"))); - CORRADE_COMPARE_AS(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"), + CORRADE_VERIFY(converter.exportToFile(ImageView2D(PixelFormat::RGBA8Unorm, {0xfe, 0xed}, {nullptr, 0xfe*0xed*4}), filename)); + CORRADE_COMPARE_AS(filename, "\xfe\xed", TestSuite::Compare::FileToString); } @@ -505,8 +510,14 @@ void AbstractImageConverterTest::exportCompressedToFile() { } } converter; - CORRADE_VERIFY(converter.exportToFile(CompressedImageView2D{CompressedPixelFormat::Bc1RGBAUnorm, {0xd0, 0x0d}, {nullptr, 64}}, Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"))); - CORRADE_COMPARE_AS(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"), + const std::string filename = Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"); + + /* Remove previous file, if any */ + Utility::Directory::rm(filename); + CORRADE_VERIFY(!Utility::Directory::exists(filename)); + + CORRADE_VERIFY(converter.exportToFile(CompressedImageView2D{CompressedPixelFormat::Bc1RGBAUnorm, {0xd0, 0x0d}, {nullptr, 64}}, filename)); + CORRADE_COMPARE_AS(filename, "\xd0\x0d", TestSuite::Compare::FileToString); } @@ -519,12 +530,15 @@ void AbstractImageConverterTest::exportCompressedToFileThroughData() { }; } converter; - /* Remove previous file */ - Utility::Directory::rm(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out")); + const std::string filename = Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"); + + /* Remove previous file, if any */ + Utility::Directory::rm(filename); + CORRADE_VERIFY(!Utility::Directory::exists(filename)); /* doExportToFile() should call doExportToData() */ - CORRADE_VERIFY(converter.exportToFile(CompressedImageView2D{CompressedPixelFormat::Bc1RGBAUnorm, {0xb0, 0xd9}, {nullptr, 64}}, Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"))); - CORRADE_COMPARE_AS(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "image.out"), + CORRADE_VERIFY(converter.exportToFile(CompressedImageView2D{CompressedPixelFormat::Bc1RGBAUnorm, {0xb0, 0xd9}, {nullptr, 64}}, filename)); + CORRADE_COMPARE_AS(filename, "\xb0\xd9", TestSuite::Compare::FileToString); } diff --git a/src/Magnum/Trade/Test/AbstractSceneConverterTest.cpp b/src/Magnum/Trade/Test/AbstractSceneConverterTest.cpp index ff32e3603..2f69c0ce3 100644 --- a/src/Magnum/Trade/Test/AbstractSceneConverterTest.cpp +++ b/src/Magnum/Trade/Test/AbstractSceneConverterTest.cpp @@ -434,11 +434,14 @@ void AbstractSceneConverterTest::convertMeshToFile() { } } converter; - /* Remove previous file */ - Utility::Directory::rm(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "mesh.out")); + const std::string filename = Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "mesh.out"); - CORRADE_VERIFY(converter.convertToFile(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "mesh.out"), MeshData{MeshPrimitive::Triangles, 0xef})); - CORRADE_COMPARE_AS(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "mesh.out"), + /* Remove previous file, if any */ + Utility::Directory::rm(filename); + CORRADE_VERIFY(!Utility::Directory::exists(filename)); + + CORRADE_VERIFY(converter.convertToFile(filename, MeshData{MeshPrimitive::Triangles, 0xef})); + CORRADE_COMPARE_AS(filename, "\xef", TestSuite::Compare::FileToString); } @@ -451,11 +454,15 @@ void AbstractSceneConverterTest::convertMeshToFileThroughData() { } } converter; - /* Remove previous file */ - Utility::Directory::rm(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "mesh.out")); + const std::string filename = Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "mesh.out"); + + /* Remove previous file, if any */ + Utility::Directory::rm(filename); + CORRADE_VERIFY(!Utility::Directory::exists(filename)); - CORRADE_VERIFY(converter.convertToFile(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "mesh.out"), MeshData{MeshPrimitive::Triangles, 0xef})); - CORRADE_COMPARE_AS(Utility::Directory::join(TRADE_TEST_OUTPUT_DIR, "mesh.out"), + /* doConvertToFile() should call doConvertToData() */ + CORRADE_VERIFY(converter.convertToFile(filename, MeshData{MeshPrimitive::Triangles, 0xef})); + CORRADE_COMPARE_AS(filename, "\xef", TestSuite::Compare::FileToString); }