gnu: libopenshot: Fix tests on other architectures.

* gnu/packages/video.scm (libopenshot)[source]: Add patch.
* gnu/packages/patches/libopenshot-fixup-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
This commit is contained in:
Efraim Flashner 2019-03-03 17:29:56 +02:00
parent d2f555f59b
commit 4f889375f2
No known key found for this signature in database
GPG key ID: 41AAE7DCCA3D8351
3 changed files with 151 additions and 1 deletions

View file

@ -976,6 +976,7 @@ dist_patch_DATA = \
%D%/packages/patches/libffi-3.2.1-complex-alpha.patch \
%D%/packages/patches/libjxr-fix-function-signature.patch \
%D%/packages/patches/libjxr-fix-typos.patch \
%D%/packages/patches/libopenshot-fixup-tests.patch \
%D%/packages/patches/libopenshot-tests-with-system-libs.patch \
%D%/packages/patches/libotr-test-auth-fix.patch \
%D%/packages/patches/libmad-armv7-thumb-pt1.patch \

View file

@ -0,0 +1,148 @@
From 691536f2f8a9ed7322fedb24d489db08c70705b9 Mon Sep 17 00:00:00 2001
From: "Dr. Tobias Quathamer" <toddy@debian.org>
Date: Sat, 18 Nov 2017 13:54:22 +0100
Subject: [PATCH] This the combination of two patches:
https://sources.debian.org/data/main/libo/libopenshot/0.2.2+dfsg1-1/debian/patches/0003-Fix-failing-tests-by-using-a-fault-tolerance.patch
https://sources.debian.org/data/main/libo/libopenshot/0.2.2+dfsg1-1/debian/patches/0004-Add-some-more-fault-tolerance-for-arm64.patch
Together they should fix the test suite on all architectures
---
tests/FFmpegReader_Tests.cpp | 9 ++++-----
tests/ImageWriter_Tests.cpp | 8 ++++----
tests/Timeline_Tests.cpp | 28 ++++++++++++++--------------
3 files changed, 22 insertions(+), 23 deletions(-)
diff --git a/tests/FFmpegReader_Tests.cpp b/tests/FFmpegReader_Tests.cpp
index 53563ca..07fc41e 100644
--- a/tests/FFmpegReader_Tests.cpp
+++ b/tests/FFmpegReader_Tests.cpp
@@ -95,8 +95,8 @@ TEST(FFmpegReader_Check_Video_File)
int pixel_index = 112 * 4; // pixel 112 (4 bytes per pixel)
// Check image properties on scanline 10, pixel 112
- CHECK_EQUAL(21, (int)pixels[pixel_index]);
- CHECK_EQUAL(191, (int)pixels[pixel_index + 1]);
+ CHECK_CLOSE(21, (int)pixels[pixel_index], 1);
+ CHECK_CLOSE(191, (int)pixels[pixel_index + 1], 2);
CHECK_EQUAL(0, (int)pixels[pixel_index + 2]);
CHECK_EQUAL(255, (int)pixels[pixel_index + 3]);
@@ -109,8 +109,8 @@ TEST(FFmpegReader_Check_Video_File)
// Check image properties on scanline 10, pixel 112
CHECK_EQUAL(0, (int)pixels[pixel_index]);
- CHECK_EQUAL(96, (int)pixels[pixel_index + 1]);
- CHECK_EQUAL(188, (int)pixels[pixel_index + 2]);
+ CHECK_CLOSE(96, (int)pixels[pixel_index + 1], 1);
+ CHECK_CLOSE(188, (int)pixels[pixel_index + 2], 1);
CHECK_EQUAL(255, (int)pixels[pixel_index + 3]);
// Close reader
@@ -209,4 +209,3 @@ TEST(FFmpegReader_Multiple_Open_and_Close)
// Close reader
r.Close();
}
-
diff --git a/tests/ImageWriter_Tests.cpp b/tests/ImageWriter_Tests.cpp
index 107ee39..d10c8bd 100644
--- a/tests/ImageWriter_Tests.cpp
+++ b/tests/ImageWriter_Tests.cpp
@@ -73,9 +73,9 @@ TEST(ImageWriter_Test_Gif)
int pixel_index = 230 * 4; // pixel 230 (4 bytes per pixel)
// Check image properties
- CHECK_EQUAL(20, (int)pixels[pixel_index]);
- CHECK_EQUAL(18, (int)pixels[pixel_index + 1]);
- CHECK_EQUAL(11, (int)pixels[pixel_index + 2]);
+ CHECK_CLOSE(20, (int)pixels[pixel_index], 5);
+ CHECK_CLOSE(18, (int)pixels[pixel_index + 1], 2);
+ CHECK_CLOSE(11, (int)pixels[pixel_index + 2], 2);
CHECK_EQUAL(255, (int)pixels[pixel_index + 3]);
}
-#endif
\ No newline at end of file
+#endif
diff --git a/tests/Timeline_Tests.cpp b/tests/Timeline_Tests.cpp
index 8c81579..4d861a6 100644
--- a/tests/Timeline_Tests.cpp
+++ b/tests/Timeline_Tests.cpp
@@ -119,8 +119,8 @@ TEST(Timeline_Check_Two_Track_Video)
int pixel_index = 230 * 4; // pixel 230 (4 bytes per pixel)
// Check image properties
- CHECK_EQUAL(21, (int)f->GetPixels(pixel_row)[pixel_index]);
- CHECK_EQUAL(191, (int)f->GetPixels(pixel_row)[pixel_index + 1]);
+ CHECK_CLOSE(21, (int)f->GetPixels(pixel_row)[pixel_index], 2);
+ CHECK_CLOSE(191, (int)f->GetPixels(pixel_row)[pixel_index + 1], 2);
CHECK_EQUAL(0, (int)f->GetPixels(pixel_row)[pixel_index + 2]);
CHECK_EQUAL(255, (int)f->GetPixels(pixel_row)[pixel_index + 3]);
@@ -128,17 +128,17 @@ TEST(Timeline_Check_Two_Track_Video)
f = t.GetFrame(2);
// Check image properties
- CHECK_EQUAL(176, (int)f->GetPixels(pixel_row)[pixel_index]);
+ CHECK_CLOSE(176, (int)f->GetPixels(pixel_row)[pixel_index], 1);
CHECK_EQUAL(0, (int)f->GetPixels(pixel_row)[pixel_index + 1]);
- CHECK_EQUAL(186, (int)f->GetPixels(pixel_row)[pixel_index + 2]);
+ CHECK_CLOSE(186, (int)f->GetPixels(pixel_row)[pixel_index + 2], 1);
CHECK_EQUAL(255, (int)f->GetPixels(pixel_row)[pixel_index + 3]);
// Get frame
f = t.GetFrame(3);
// Check image properties
- CHECK_EQUAL(23, (int)f->GetPixels(pixel_row)[pixel_index]);
- CHECK_EQUAL(190, (int)f->GetPixels(pixel_row)[pixel_index + 1]);
+ CHECK_CLOSE(23, (int)f->GetPixels(pixel_row)[pixel_index], 1);
+ CHECK_CLOSE(190, (int)f->GetPixels(pixel_row)[pixel_index + 1], 2);
CHECK_EQUAL(0, (int)f->GetPixels(pixel_row)[pixel_index + 2]);
CHECK_EQUAL(255, (int)f->GetPixels(pixel_row)[pixel_index + 3]);
@@ -146,8 +146,8 @@ TEST(Timeline_Check_Two_Track_Video)
f = t.GetFrame(24);
// Check image properties
- CHECK_EQUAL(186, (int)f->GetPixels(pixel_row)[pixel_index]);
- CHECK_EQUAL(106, (int)f->GetPixels(pixel_row)[pixel_index + 1]);
+ CHECK_CLOSE(186, (int)f->GetPixels(pixel_row)[pixel_index], 1);
+ CHECK_CLOSE(106, (int)f->GetPixels(pixel_row)[pixel_index + 1], 1);
CHECK_EQUAL(0, (int)f->GetPixels(pixel_row)[pixel_index + 2]);
CHECK_EQUAL(255, (int)f->GetPixels(pixel_row)[pixel_index + 3]);
@@ -155,8 +155,8 @@ TEST(Timeline_Check_Two_Track_Video)
f = t.GetFrame(5);
// Check image properties
- CHECK_EQUAL(23, (int)f->GetPixels(pixel_row)[pixel_index]);
- CHECK_EQUAL(190, (int)f->GetPixels(pixel_row)[pixel_index + 1]);
+ CHECK_CLOSE(23, (int)f->GetPixels(pixel_row)[pixel_index], 1);
+ CHECK_CLOSE(190, (int)f->GetPixels(pixel_row)[pixel_index + 1], 2);
CHECK_EQUAL(0, (int)f->GetPixels(pixel_row)[pixel_index + 2]);
CHECK_EQUAL(255, (int)f->GetPixels(pixel_row)[pixel_index + 3]);
@@ -165,17 +165,17 @@ TEST(Timeline_Check_Two_Track_Video)
// Check image properties
CHECK_EQUAL(0, (int)f->GetPixels(pixel_row)[pixel_index]);
- CHECK_EQUAL(94, (int)f->GetPixels(pixel_row)[pixel_index + 1]);
- CHECK_EQUAL(186, (int)f->GetPixels(pixel_row)[pixel_index + 2]);
+ CHECK_CLOSE(94, (int)f->GetPixels(pixel_row)[pixel_index + 1], 1);
+ CHECK_CLOSE(186, (int)f->GetPixels(pixel_row)[pixel_index + 2], 1);
CHECK_EQUAL(255, (int)f->GetPixels(pixel_row)[pixel_index + 3]);
// Get frame
f = t.GetFrame(4);
// Check image properties
- CHECK_EQUAL(176, (int)f->GetPixels(pixel_row)[pixel_index]);
+ CHECK_CLOSE(176, (int)f->GetPixels(pixel_row)[pixel_index], 1);
CHECK_EQUAL(0, (int)f->GetPixels(pixel_row)[pixel_index + 1]);
- CHECK_EQUAL(186, (int)f->GetPixels(pixel_row)[pixel_index + 2]);
+ CHECK_CLOSE(186, (int)f->GetPixels(pixel_row)[pixel_index + 2], 1);
CHECK_EQUAL(255, (int)f->GetPixels(pixel_row)[pixel_index + 3]);
// Close reader
--
2.21.0

View file

@ -3222,7 +3222,8 @@ (define-public libopenshot
(string-append set " CACHE PATH "
"\"Python bindings directory\")")))
#t))
(patches (search-patches "libopenshot-tests-with-system-libs.patch"))))
(patches (search-patches "libopenshot-fixup-tests.patch"
"libopenshot-tests-with-system-libs.patch"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)