summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorGravatar Stefan Fuchs <sfuchs@gmx.de>2017-05-06 15:36:29 +0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2017-05-06 10:31:09 -0700
commit67fbf6009a36233d6621e4f40002fc016a464404 (patch)
treee7e16400b3325f6d74b49f1da5e749cb69e259b9 /tests
parent462797396b082f31060df6706bfce416aebce037 (diff)
downloadsubsurface-67fbf6009a36233d6621e4f40002fc016a464404.tar.gz
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 <miika.turkia@gmail.com> Signed-off-by: Stefan Fuchs <sfuchs@gmx.de> Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
Diffstat (limited to 'tests')
-rw-r--r--tests/CMakeLists.txt1
-rw-r--r--tests/testpicture.cpp40
2 files changed, 24 insertions, 17 deletions
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");
}