1
- @ echo off
1
+ @ echo on
2
2
3
3
set NO_INTERACTION = 1
4
4
set REPORT_EXIT_STATUS = 1
@@ -17,43 +17,50 @@ if not exist "%DEPS_DIR%" (
17
17
exit /b 3
18
18
)
19
19
20
- rem setup MySQL related exts
21
- set MYSQL_PWD = Password12!
22
- set MYSQL_TEST_PASSWD = %MYSQL_PWD%
23
- set MYSQL_TEST_USER = root
24
- set MYSQL_TEST_HOST = 127.0.0.1
25
- set MYSQL_TEST_PORT = 3306
26
- set PDO_MYSQL_TEST_USER = %MYSQL_TEST_USER%
27
- set PDO_MYSQL_TEST_PASS = %MYSQL_PWD%
28
- set PDO_MYSQL_TEST_HOST = %MYSQL_TEST_HOST%
29
- set PDO_MYSQL_TEST_PORT = %MYSQL_TEST_PORT%
30
- set PDO_MYSQL_TEST_DSN = mysql:host=%PDO_MYSQL_TEST_HOST% ;port=%PDO_MYSQL_TEST_PORT% ;dbname=test
31
- " C:\Program Files\MySql\MySQL Server 5.7\bin\mysql.exe" --user=%MYSQL_TEST_USER% -e " CREATE DATABASE IF NOT EXISTS test"
32
- if %errorlevel% neq 0 exit /b 3
20
+ if /i " %APPVEYOR% " equ " True" (
21
+ rem setup MySQL related exts
22
+ set MYSQL_PWD = Password12!
23
+ set MYSQL_TEST_PASSWD = %MYSQL_PWD%
24
+ set MYSQL_TEST_USER = root
25
+ set MYSQL_TEST_HOST = 127.0.0.1
26
+ set MYSQL_TEST_PORT = 3306
27
+ set PDO_MYSQL_TEST_USER = %MYSQL_TEST_USER%
28
+ set PDO_MYSQL_TEST_PASS = %MYSQL_PWD%
29
+ set PDO_MYSQL_TEST_HOST = %MYSQL_TEST_HOST%
30
+ set PDO_MYSQL_TEST_PORT = %MYSQL_TEST_PORT%
31
+ set PDO_MYSQL_TEST_DSN = mysql:host=%PDO_MYSQL_TEST_HOST% ;port=%PDO_MYSQL_TEST_PORT% ;dbname=test
32
+ " C:\Program Files\MySql\MySQL Server 5.7\bin\mysql.exe" --user=%MYSQL_TEST_USER% -e " CREATE DATABASE IF NOT EXISTS test"
33
+ if %errorlevel% neq 0 exit /b 3
33
34
34
- rem setup PostgreSQL related exts
35
- set PGUSER = postgres
36
- set PGPASSWORD = Password12!
37
- rem set PGSQL_TEST_CONNSTR=host=127.0.0.1 dbname=test port=5432 user=postgres password=Password12!
38
- echo ^ < ?php $conn_str = " host=127.0.0.1 dbname=test port=5432 user=%PGUSER% password=%PGPASSWORD% " ; ?^ > >> " ./ ext/ pgsql/ tests/ config.inc"
39
- set PDO_PGSQL_TEST_DSN = pgsql:host=127.0.0.1 port=5432 dbname=test user=%PGUSER% password=%PGPASSWORD%
40
- " C:\Program Files\PostgreSQL\10\bin\createdb.exe" test
41
- if %errorlevel% neq 0 exit /b 3
35
+ rem setup PostgreSQL related exts
36
+ set PGUSER = postgres
37
+ set PGPASSWORD = Password12!
38
+ rem set PGSQL_TEST_CONNSTR=host=127.0.0.1 dbname=test port=5432 user=postgres password=Password12!
39
+ echo ^ < ?php $conn_str = " host=127.0.0.1 dbname=test port=5432 user=%PGUSER% password=%PGPASSWORD% " ; ?^ > >> ext\ pgsql\ tests\ config.inc
40
+ set PDO_PGSQL_TEST_DSN = pgsql:host=127.0.0.1 port=5432 dbname=test user=%PGUSER% password=%PGPASSWORD%
41
+ " C:\Program Files\PostgreSQL\10\bin\createdb.exe" test
42
+ if %errorlevel% neq 0 exit /b 3
42
43
43
- rem setup ODBC related exts
44
- set ODBC_TEST_USER = sa
45
- set ODBC_TEST_PASS = Password12!
46
- set ODBC_TEST_DSN = Driver={ODBC Driver 13 for SQL Server};Server=(local)\SQL2017;Database=master;uid=%ODBC_TEST_USER% ;pwd=%ODBC_TEST_PASS%
47
- set PDOTEST_DSN = odbc:%ODBC_TEST_DSN%
44
+ rem setup ODBC related exts
45
+ set ODBC_TEST_USER = sa
46
+ set ODBC_TEST_PASS = Password12!
47
+ set ODBC_TEST_DSN = Driver={ODBC Driver 13 for SQL Server};Server=^ (local^ )\SQL2017;Database=master;uid=%ODBC_TEST_USER% ;pwd=%ODBC_TEST_PASS%
48
+ set PDOTEST_DSN = odbc:%ODBC_TEST_DSN%
49
+ )
48
50
49
51
rem prepare for ext/openssl
50
- if " %APPVEYOR% " equ " True" rmdir /s /q C:\OpenSSL-Win32 > NUL 2 > NUL
51
- if " %APPVEYOR% " equ " True" rmdir /s /q C:\OpenSSL-Win64 > NUL 2 > NUL
52
+ if /i " %APPVEYOR%%GITHUB_ACTIONS% " equ " True" (
53
+ rmdir /s /q C:\OpenSSL-Win32 > NUL 2 > NUL
54
+ rmdir /s /q C:\OpenSSL-Win64 > NUL 2 > NUL
55
+ )
52
56
if " %PLATFORM% " == " x64" (
53
57
set OPENSSLDIR = " C:\Program Files\Common Files\SSL"
54
58
) else (
55
59
set OPENSSLDIR = " C:\Program Files (x86)\Common Files\SSL"
56
60
)
61
+ if /i " %GITHUB_ACTIONS% " equ " True" (
62
+ rmdir /s /q %OPENSSLDIR% > NUL 2 > NUL
63
+ )
57
64
mkdir %OPENSSLDIR%
58
65
if %errorlevel% neq 0 exit /b 3
59
66
copy %DEPS_DIR% \template\ssl\openssl.cnf %OPENSSLDIR%
@@ -62,7 +69,7 @@ rem set OPENSSL_CONF=%OPENSSLDIR%\openssl.cnf
62
69
set OPENSSL_CONF =
63
70
rem set SSLEAY_CONF=
64
71
65
- rem prepare for Opcache
72
+ rem prepare for OPcache
66
73
if " %OPCACHE% " equ " 1" set OPCACHE_OPTS = -d opcache.enable=1 -d opcache.enable_cli=1 -d opcache.protect_memory=1 -d opcache.jit_buffer_size=16M
67
74
68
75
rem prepare for enchant
@@ -89,19 +96,30 @@ if not exist "%PHP_BUILD_CACHE_ENCHANT_DICT_DIR%\en_US.aff" (
89
96
mkdir %LOCALAPPDATA% \enchant\hunspell
90
97
copy %PHP_BUILD_CACHE_ENCHANT_DICT_DIR% \* %LOCALAPPDATA% \enchant\hunspell
91
98
92
- set TEST_PHPDBG_EXECUTABLE = %PHP_BUILD_OBJ_DIR% \Release
93
- if " %THREAD_SAFE% " equ " 1" set TEST_PHPDBG_EXECUTABLE = %TEST_PHPDBG_EXECUTABLE% _TS
94
- set TEST_PHPDBG_EXECUTABLE = %TEST_PHPDBG_EXECUTABLE% \phpdbg.exe
99
+ set PHP_BUILD_DIR = %PHP_BUILD_OBJ_DIR% \Release
100
+ if " %THREAD_SAFE% " equ " 1" set PHP_BUILD_DIR = %PHP_BUILD_DIR% _TS
101
+
102
+ mkdir %PHP_BUILD_DIR% \test_file_cache
103
+ rem generate php.ini
104
+ echo extension_dir=%PHP_BUILD_DIR% > %PHP_BUILD_DIR% \php.ini
105
+ echo opcache.file_cache=%PHP_BUILD_DIR% \test_file_cache >> %PHP_BUILD_DIR% \php.ini
106
+ if " %OPCACHE% " equ " 1" echo zend_extension=php_opcache.dll >> %PHP_BUILD_DIR% \php.ini
107
+ rem work-around for some spawned PHP processes requiring OpenSSL
108
+ echo extension=php_openssl.dll >> %PHP_BUILD_DIR% \php.ini
109
+
110
+ rem remove ext dlls for which tests are not supported
111
+ for %%i in (imap ldap oci8_12c pdo_firebird pdo_oci snmp) do (
112
+ del %PHP_BUILD_DIR% \php_%%i .dll
113
+ )
114
+
115
+ set TEST_PHPDBG_EXECUTABLE = %PHP_BUILD_DIR% \phpdbg.exe
95
116
96
117
mkdir c:\tests_tmp
97
118
98
119
set TEST_PHP_JUNIT = c:\junit.out.xml
99
120
100
121
cd " %APPVEYOR_BUILD_FOLDER% "
101
- nmake test TESTS=" %OPCACHE_OPTS% -q --offline --show-diff --show-slow 1000 --set-timeout 120 --temp-source c:\tests_tmp --temp-target c:\tests_tmp %PARALLEL% "
102
-
103
- set EXIT_CODE = %errorlevel%
104
-
105
- appveyor PushArtifact %TEST_PHP_JUNIT%
122
+ nmake test TESTS=" %OPCACHE_OPTS% -q -g FAIL,XFAIL,BORK,WARN,LEAK,XLEAK,SKIP --color --offline --show-diff --show-slow 1000 --set-timeout 120 --temp-source c:\tests_tmp --temp-target c:\tests_tmp %PARALLEL% "
123
+ if %errorlevel% neq 0 exit /b 3
106
124
107
- exit /b %EXIT_CODE%
125
+ exit /b 0
0 commit comments