File indexing completed on 2025-04-27 04:24:02
0001 // SPDX-FileCopyrightText: Lukas Sommer <sommerluk@gmail.com> 0002 // SPDX-License-Identifier: BSD-2-Clause OR MIT 0003 0004 // First included header is the public header of the class we are testing; 0005 // this forces the header to be self-contained. 0006 #include "asyncimagerendercallback.h" 0007 0008 #include <qglobal.h> 0009 #include <qobject.h> 0010 #include <qtest.h> 0011 #include <qvariant.h> 0012 0013 #if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)) 0014 #include <qtmetamacros.h> 0015 #else 0016 #include <qobjectdefs.h> 0017 #include <qstring.h> 0018 #endif 0019 0020 class QImage; 0021 0022 namespace PerceptualColor 0023 { 0024 class Mockup : public AsyncImageRenderCallback 0025 { 0026 public: 0027 virtual bool shouldAbort() const override; 0028 virtual void deliverInterlacingPass(const QImage &image, const QVariant ¶meters, const InterlacingState state) override; 0029 }; 0030 0031 bool Mockup::shouldAbort() const 0032 { 0033 return false; 0034 } 0035 0036 void Mockup::deliverInterlacingPass(const QImage &image, const QVariant ¶meters, const InterlacingState state) 0037 { 0038 Q_UNUSED(image) 0039 Q_UNUSED(parameters) 0040 Q_UNUSED(state) 0041 } 0042 0043 class TestAsyncImageRenderCallback : public QObject 0044 { 0045 Q_OBJECT 0046 0047 public: 0048 explicit TestAsyncImageRenderCallback(QObject *parent = nullptr) 0049 : QObject(parent) 0050 { 0051 } 0052 0053 private Q_SLOTS: 0054 void initTestCase() 0055 { 0056 // Called before the first test function is executed 0057 } 0058 0059 void cleanupTestCase() 0060 { 0061 // Called after the last test function was executed 0062 } 0063 0064 void init() 0065 { 0066 // Called before each test function is executed 0067 } 0068 0069 void cleanup() 0070 { 0071 // Called after every test function 0072 } 0073 0074 void testConstructorDestructor() 0075 { 0076 Mockup test; 0077 } 0078 }; 0079 0080 } // namespace PerceptualColor 0081 0082 QTEST_MAIN(PerceptualColor::TestAsyncImageRenderCallback) 0083 0084 // The following “include” is necessary because we do not use a header file: 0085 #include "testasyncimagerendercallback.moc"