about summary refs log tree commit diff
path: root/pkgs/development/interpreters/php
diff options
context:
space:
mode:
authorManuel Frischknecht <manuel.frischknecht@gmail.com>2023-11-25 13:42:02 +0100
committerManuel Frischknecht <manuel.frischknecht@gmail.com>2023-11-25 13:57:15 +0100
commitfb1cc4af9c3ff397b0732ddfdeafd826ad54119b (patch)
treeb5dbac9201941e2e3761efd449bdf3631fb88da0 /pkgs/development/interpreters/php
parent1fb123914bf5f632bb3fe00f854a643de36895cf (diff)
Skip `sqlite3_bind_bug68849.phpt` php unit test on i686 linux
PHP unit tests are broken with SQLite >= 3.43 [1].
If I understand the discussion in the SQLite forums [2]
on the issue correctly, the trigger for this should not
be a problem with SQLite itself but the test itself
(and thus using a current SQLite version shouldn't
generally be a problem for actual PHP code).

[1]: https://github.com/php/php-src/issues/12076
[2]: https://www.sqlite.org/forum/forumpost/abbb95376ec6cd5f
Diffstat (limited to 'pkgs/development/interpreters/php')
-rw-r--r--pkgs/development/interpreters/php/skip-sqlite3_bind_bug68849.phpt.patch75
1 files changed, 75 insertions, 0 deletions
diff --git a/pkgs/development/interpreters/php/skip-sqlite3_bind_bug68849.phpt.patch b/pkgs/development/interpreters/php/skip-sqlite3_bind_bug68849.phpt.patch
new file mode 100644
index 0000000000000..8e208e52dbabd
--- /dev/null
+++ b/pkgs/development/interpreters/php/skip-sqlite3_bind_bug68849.phpt.patch
@@ -0,0 +1,75 @@
+diff --git a/ext/sqlite3/tests/sqlite3_bind_bug68849.phpt b/ext/sqlite3/tests/sqlite3_bind_bug68849.phpt
+deleted file mode 100644
+index 6324d079..00000000
+--- a/ext/sqlite3/tests/sqlite3_bind_bug68849.phpt
++++ /dev/null
+@@ -1,69 +0,0 @@
+---TEST--
+-Bug #68849 bindValue is not using the right data type
+---EXTENSIONS--
+-sqlite3
+---FILE--
+-<?php
+-
+-$db = new SQLite3(':memory:');
+-
+-$db->exec("CREATE TABLE test (a INTEGER, b TEXT, c REAL);" .
+-        "INSERT INTO test VALUES (1, 'hello', 3.14);" .
+-        "INSERT INTO test VALUES (3, 'world', 3.15);" .
+-        "INSERT INTO test VALUES (0, '42', 0.42);"
+-);
+-
+-$s = $db->prepare('SELECT * FROM test WHERE (a+2) = ?;');
+-$s->bindValue(1, 3);
+-$r = $s->execute();
+-var_dump($r->fetchArray(SQLITE3_ASSOC));
+-
+-$s = $db->prepare('SELECT * FROM test WHERE a = ?;');
+-$s->bindValue(1, true);
+-$r = $s->execute();
+-var_dump($r->fetchArray(SQLITE3_ASSOC));
+-
+-$s = $db->prepare('SELECT * FROM test WHERE a = ?;');
+-$s->bindValue(1, false);
+-$r = $s->execute();
+-var_dump($r->fetchArray(SQLITE3_ASSOC));
+-
+-$s = $db->prepare('SELECT * FROM test WHERE c = ?;');
+-$s->bindValue(1, 3.15);
+-$r = $s->execute();
+-var_dump($r->fetchArray(SQLITE3_ASSOC));
+-
+-?>
+---EXPECT--
+-array(3) {
+-  ["a"]=>
+-  int(1)
+-  ["b"]=>
+-  string(5) "hello"
+-  ["c"]=>
+-  float(3.14)
+-}
+-array(3) {
+-  ["a"]=>
+-  int(1)
+-  ["b"]=>
+-  string(5) "hello"
+-  ["c"]=>
+-  float(3.14)
+-}
+-array(3) {
+-  ["a"]=>
+-  int(0)
+-  ["b"]=>
+-  string(2) "42"
+-  ["c"]=>
+-  float(0.42)
+-}
+-array(3) {
+-  ["a"]=>
+-  int(3)
+-  ["b"]=>
+-  string(5) "world"
+-  ["c"]=>
+-  float(3.15)
+-}