Merge pull request #269897 from mfrischknecht/skip-sqlite-test-on-i686-linux

Skip `sqlite3_bind_bug68849.phpt` php unit test on i686 linux
This commit is contained in:
Silvan Mosberger 2023-11-25 18:40:09 +01:00 committed by GitHub
commit a877470da8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 84 additions and 1 deletions

View file

@ -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)
-}

View file

@ -600,7 +600,15 @@ lib.makeScope pkgs.newScope (self: with self; {
doCheck = false;
}
{ name = "sodium"; buildInputs = [ libsodium ]; }
{ name = "sqlite3"; buildInputs = [ sqlite ]; }
{
name = "sqlite3";
buildInputs = [ sqlite ];
# The `sqlite3_bind_bug68849.phpt` test is currently broken for i686 Linux systems since sqlite 3.43, cf.:
# - https://github.com/php/php-src/issues/12076
# - https://www.sqlite.org/forum/forumpost/abbb95376ec6cd5f
patches = lib.optional (stdenv.isi686 && stdenv.isLinux) ../development/interpreters/php/skip-sqlite3_bind_bug68849.phpt.patch;
}
{ name = "sysvmsg"; }
{ name = "sysvsem"; }
{ name = "sysvshm"; }