From 67fbf6009a36233d6621e4f40002fc016a464404 Mon Sep 17 00:00:00 2001 From: Stefan Fuchs Date: Sat, 6 May 2017 15:36:29 +0200 Subject: Test for adding a picture with data after JFIF EOI to a dive Add one more picture to the already existing test. This new picture is a JPEG and has data after JFIF EOI tag. Suggested-by: Miika Turkia Signed-off-by: Stefan Fuchs Signed-off-by: Stefan Fuchs --- dives/images/data_after_EOI.jpg | Bin 0 -> 715263 bytes dives/images/wreck.jpg | Bin 0 -> 116727 bytes tests/CMakeLists.txt | 1 - tests/testpicture.cpp | 40 ++++++++++++++++++++++++---------------- wreck.jpg | Bin 116727 -> 0 bytes 5 files changed, 24 insertions(+), 17 deletions(-) create mode 100755 dives/images/data_after_EOI.jpg create mode 100644 dives/images/wreck.jpg delete mode 100644 wreck.jpg diff --git a/dives/images/data_after_EOI.jpg b/dives/images/data_after_EOI.jpg new file mode 100755 index 000000000..62d6b152b Binary files /dev/null and b/dives/images/data_after_EOI.jpg differ diff --git a/dives/images/wreck.jpg b/dives/images/wreck.jpg new file mode 100644 index 000000000..1ebfde9f0 Binary files /dev/null and b/dives/images/wreck.jpg differ diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 294f26d05..2efacd706 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -27,7 +27,6 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows") # - test binaries dependencies (see TEST macro) set(WINDOWS_STAGING_TESTS ${CMAKE_BINARY_DIR}/staging_tests) install(DIRECTORY ${SUBSURFACE_SOURCE}/dives DESTINATION ${WINDOWS_STAGING_TESTS}) - install(FILES ${SUBSURFACE_SOURCE}/wreck.jpg DESTINATION ${WINDOWS_STAGING_TESTS}) # Check if we can run tests locally using wine # Add a fake test used to ensure data is deployed to WINDOWS_STAGING_TESTS before running diff --git a/tests/testpicture.cpp b/tests/testpicture.cpp index 3021ece46..38e8e3d5b 100644 --- a/tests/testpicture.cpp +++ b/tests/testpicture.cpp @@ -15,28 +15,36 @@ void TestPicture::initTestCase() void TestPicture::addPicture() { struct dive *dive; - struct picture *pic; + struct picture *pic1, *pic2; verbose = 1; QCOMPARE(parse_file(SUBSURFACE_TEST_DATA "/dives/test44.xml"), 0); dive = get_dive(0); QVERIFY(dive != NULL); - pic = dive->picture_list; + pic1 = dive->picture_list; // So far no picture in dive - QVERIFY(pic == NULL); - - dive_create_picture(dive, SUBSURFACE_TEST_DATA "/wreck.jpg", 0, false); - pic = dive->picture_list; - // Now there is a picture - QVERIFY(pic != NULL); - // Appearing at time 21:01 - QVERIFY(pic->offset.seconds == 1261); - QVERIFY(pic->latitude.udeg == 47934500); - QVERIFY(pic->longitude.udeg == 11334500); - - QVERIFY(pic->hash == NULL); - learnHash(pic, hashFile(localFilePath(pic->filename))); - QCOMPARE(pic->hash, "929ad9499b7ae7a9e39ef63eb6c239604ac2adfa"); + QVERIFY(pic1 == NULL); + + dive_create_picture(dive, SUBSURFACE_TEST_DATA "/dives/images/wreck.jpg", 0, false); + dive_create_picture(dive, SUBSURFACE_TEST_DATA "/dives/images/data_after_EOI.jpg", 0, false); + pic1 = dive->picture_list; + pic2 = pic1->next; + // Now there are two picture2 + QVERIFY(pic1 != NULL); + QVERIFY(pic2 != NULL); + // 1st appearing at time 21:01 + // 2nd appearing at time 22:01 + QVERIFY(pic1->offset.seconds == 1261); + QVERIFY(pic1->latitude.udeg == 47934500); + QVERIFY(pic1->longitude.udeg == 11334500); + QVERIFY(pic2->offset.seconds == 1321); + + QVERIFY(pic1->hash == NULL); + QVERIFY(pic2->hash == NULL); + learnHash(pic1, hashFile(localFilePath(pic1->filename))); + learnHash(pic2, hashFile(localFilePath(pic2->filename))); + QCOMPARE(pic1->hash, "929ad9499b7ae7a9e39ef63eb6c239604ac2adfa"); + QCOMPARE(pic2->hash, "fa8bd48f8f24017a81e1204f52300bd98b43d4a7"); } diff --git a/wreck.jpg b/wreck.jpg deleted file mode 100644 index 1ebfde9f0..000000000 Binary files a/wreck.jpg and /dev/null differ -- cgit v1.2.3-70-g09d2