mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-08-06 05:47:13 +02:00
92 lines
3.0 KiB
Diff
92 lines
3.0 KiB
Diff
Patch-Source: https://github.com/Imagick/imagick/commit/944b67fce68bcb5835999a149f917670555b6fcb.patch
|
|
--
|
|
From 944b67fce68bcb5835999a149f917670555b6fcb Mon Sep 17 00:00:00 2001
|
|
From: Danack <Danack@basereality.com>
|
|
Date: Fri, 9 Feb 2024 13:59:39 +0000
|
|
Subject: [PATCH] Improve test so that is passes.
|
|
|
|
The underlying maths for some statistics changed: https://github.com/ImageMagick/ImageMagick/issues/6924 so the tests need to pass on both before and after maths.
|
|
---
|
|
|
|
diff --git a/tests/316_Imagick_getImageKurtosis.phpt b/tests/316_Imagick_getImageKurtosis.phpt
|
|
index 2618924a..61370b57 100644
|
|
--- a/tests/316_Imagick_getImageKurtosis.phpt
|
|
+++ b/tests/316_Imagick_getImageKurtosis.phpt
|
|
@@ -14,8 +14,16 @@ function getImageKurtosis() {
|
|
$imagick = new \Imagick(__DIR__ . '/Biter_500.jpg');
|
|
$values = $imagick->getImageKurtosis();
|
|
|
|
- check_value($values, "kurtosis", -0.9379261035010518);
|
|
- check_value($values, "skewness", 0.4562517200972045);
|
|
+ check_value_posibilities(
|
|
+ $values,
|
|
+ "kurtosis",
|
|
+ [-0.9379261035010518, -0.70925995674921]
|
|
+ );
|
|
+ check_value_posibilities(
|
|
+ $values,
|
|
+ "skewness",
|
|
+ [0.4562517200972045, 0.56839010636614]
|
|
+ );
|
|
}
|
|
|
|
getImageKurtosis() ;
|
|
diff --git a/tests/functions.inc b/tests/functions.inc
|
|
index bbd60ac0..11012864 100644
|
|
--- a/tests/functions.inc
|
|
+++ b/tests/functions.inc
|
|
@@ -111,7 +111,10 @@ function setFontForImagickDraw(\ImagickDraw $imagickDraw)
|
|
$imagickDraw->setFont($font);
|
|
}
|
|
|
|
-
|
|
+/**
|
|
+ * Checks that a named value exists in an array and it matches
|
|
+ * an expected value.
|
|
+ */
|
|
function check_value(array $values, $name, $expected_value)
|
|
{
|
|
if (array_key_exists($name, $values) !== true) {
|
|
@@ -136,6 +139,41 @@ function check_value(array $values, $name, $expected_value)
|
|
}
|
|
|
|
|
|
+/**
|
|
+ * Checks that a named value exists in an array and it matches
|
|
+ * one of a number of expected values.
|
|
+ * This function exists because the expected values for Kurtosis can
|
|
+ * change when the underlying maths changes: https://github.com/ImageMagick/ImageMagick/issues/6924
|
|
+ */
|
|
+function check_value_posibilities(array $values, $name, array $expected_values)
|
|
+{
|
|
+ if (array_key_exists($name, $values) !== true) {
|
|
+
|
|
+ $message = "Expected key '$name' not set. Array contains:\n";
|
|
+ $message .= var_export($values, true);
|
|
+
|
|
+ throw new \Exception($message);
|
|
+ }
|
|
+
|
|
+
|
|
+ $value = $values[$name];
|
|
+
|
|
+ $epsilon = 0.01;
|
|
+
|
|
+ foreach ($expected_values as $expected_value) {
|
|
+ if (($value > $expected_value - $epsilon) && ($value < $expected_value + $epsilon)) {
|
|
+ echo "Value for '$name' is $value which is close enough to expected $expected_value\n";
|
|
+ return;
|
|
+ }
|
|
+ }
|
|
+
|
|
+ $expected_string = implode(", ", $expected_values);
|
|
+
|
|
+ $message = "Value for $name doesn't match expected possibilities. Expected one of: $expected_string, actual: $value";
|
|
+ throw new \Exception($message);
|
|
+}
|
|
+
|
|
+
|
|
function check_value_with_epsilon(array $values, $name, $expected_value, $epsilon)
|
|
{
|
|
if (array_key_exists($name, $values) !== true) {
|