git repos / SagoImageBrowser

commit 35c3554c

Poul Sander · 2026-06-07 13:09
35c3554c8d9d1679e74d5ef994daaff887e0dda5 patch · browse files
parent a686d839847368c34f7129584beafd15318939fe

Add test file

Changed files

M CMakeLists.txt before
A test/test_exifreader.cpp
diff --git a/CMakeLists.txt b/CMakeLists.txt index b544184..ba8f1c8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt
@@ -41,7 +41,7 @@ qt_add_resources(SagoImageBrowser "icons" PREFIX "/icons" FILES extra/icons/sago
target_include_directories(SagoImageBrowser PRIVATE ${EXIV2_INCLUDE_DIRS})
target_link_libraries(SagoImageBrowser PRIVATE Qt6::Widgets ${EXIV2_LIBRARIES})
-add_executable(test_exifreader test_exifreader.cpp src/exifreader.cpp)
+add_executable(test_exifreader test/test_exifreader.cpp src/exifreader.cpp)
target_include_directories(test_exifreader PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src ${EXIV2_INCLUDE_DIRS})
target_link_libraries(test_exifreader PRIVATE Qt6::Widgets ${EXIV2_LIBRARIES})
diff --git a/test/test_exifreader.cpp b/test/test_exifreader.cpp new file mode 100644 index 0000000..a135a68 --- /dev/null +++ b/test/test_exifreader.cpp
@@ -0,0 +1,35 @@
+#include <QCoreApplication>
+#include <QDebug>
+#include <cassert>
+#include "exifreader.h"
+
+int main(int argc, char *argv[]) {
+ QCoreApplication app(argc, argv);
+
+ qDebug() << "Running ExifReader test...";
+
+ // Test ExifData::isEmpty()
+ ExifData data;
+ assert(data.isEmpty());
+ qDebug() << "ExifData::isEmpty() passed for empty data.";
+
+ data.filename = "test.jpg";
+ assert(!data.isEmpty());
+ qDebug() << "ExifData::isEmpty() passed for non-empty data.";
+
+ // Test ExifData::toList()
+ data.fileSize = "1.2 MiB";
+ auto list = data.toList();
+ bool foundFilename = false;
+ bool foundSize = false;
+ for (const auto &pair : list) {
+ if (pair.first == "Filename" && pair.second == "test.jpg") foundFilename = true;
+ if (pair.first == "File Size" && pair.second == "1.2 MiB") foundSize = true;
+ }
+ assert(foundFilename);
+ assert(foundSize);
+ qDebug() << "ExifData::toList() passed.";
+
+ qDebug() << "All ExifReader tests passed!";
+ return 0;
+}