Run POD_Firebird tests on AppVeyor CI

We also fix gh8626.phpt for the firebird driver by allowing negative
status codes as well.  We mark the other two test cases as xfail for
the firebird driver for now.

Closes GH-8666.
This commit is contained in:
Christoph M. Becker 2022-06-10 10:39:31 +02:00
parent 13e46a0cb1
commit e86acb1861
No known key found for this signature in database
GPG Key ID: D66C9593118BCCB6
4 changed files with 18 additions and 2 deletions

View File

@ -46,6 +46,20 @@ set ODBC_TEST_PASS=Password12!
set ODBC_TEST_DSN=Driver={ODBC Driver 13 for SQL Server};Server=(local)\SQL2017;Database=master;uid=%ODBC_TEST_USER%;pwd=%ODBC_TEST_PASS%
set PDOTEST_DSN=odbc:%ODBC_TEST_DSN%
rem setup Firebird related exts
curl -sLo Firebird.zip https://github.com/FirebirdSQL/firebird/releases/download/v3.0.9/Firebird-3.0.9.33560-0_x64.zip
7z x -oC:\Firebird Firebird.zip
set PDO_FIREBIRD_TEST_DATABASE=C:\test.fdb
set PDO_FIREBIRD_TEST_DSN=firebird:dbname=%PDO_FIREBIRD_TEST_DATABASE%
set PDO_FIREBIRD_TEST_USER=SYSDBA
set PDO_FIREBIRD_TEST_PASS=phpfi
echo create database '%PDO_FIREBIRD_TEST_DATABASE%' user '%PDO_FIREBIRD_TEST_USER%' password '%PDO_FIREBIRD_TEST_PASS%';> C:\Firebird\setup.sql
C:\Firebird\instsvc.exe install -n TestInstance
C:\Firebird\isql -q -i C:\Firebird\setup.sql
C:\Firebird\instsvc.exe start -n TestInstance
if %errorlevel% neq 0 exit /b 3
path C:\Firebird;%PATH%
rem prepare for ext/openssl
if "%APPVEYOR%" equ "True" rmdir /s /q C:\OpenSSL-Win32 >NUL 2>NUL
if "%APPVEYOR%" equ "True" rmdir /s /q C:\OpenSSL-Win64 >NUL 2>NUL
@ -111,7 +125,7 @@ rem work-around for some spawned PHP processes requiring OpenSSL
echo extension=php_openssl.dll >> %PHP_BUILD_DIR%\php.ini
rem remove ext dlls for which tests are not supported
for %%i in (ldap oci8_12c pdo_firebird pdo_oci) do (
for %%i in (ldap oci8_12c pdo_oci) do (
del %PHP_BUILD_DIR%\php_%%i.dll
)

View File

@ -6,6 +6,7 @@ pdo
<?php
$dir = getenv('REDIR_TEST_DIR');
if (false == $dir) die('skip no driver');
if (str_starts_with(getenv('PDOTEST_DSN'), "firebird")) die('xfail firebird driver does not behave as expected');
require_once $dir . 'pdo_test.inc';
PDOTest::skip();
?>

View File

@ -41,7 +41,7 @@ array(3) {
[0]=>
string(%d) "%s"
[1]=>
int(%d)
int(%i)
[2]=>
string(%d) "%s%w%S"
}

View File

@ -6,6 +6,7 @@ pdo
<?php
$dir = getenv('REDIR_TEST_DIR');
if (false == $dir) die('skip no driver');
if (str_starts_with(getenv('PDOTEST_DSN'), "firebird")) die('xfail firebird driver does not behave as expected');
require_once $dir . 'pdo_test.inc';
PDOTest::skip();
?>