Skip to content

Commit

Permalink
Add tests for stream_vt100_support function
Browse files Browse the repository at this point in the history
  • Loading branch information
mlocati committed Aug 30, 2016
1 parent 35bf19a commit d9b1c99
Show file tree
Hide file tree
Showing 6 changed files with 146 additions and 0 deletions.
21 changes: 21 additions & 0 deletions tests/output/vt100_support_posix_redirected_stderr.phpt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
--TEST--
Test stream_vt100_support on POSIX with redirected STDERR
--SKIPIF--
<?php
if (!function_exists('posix_isatty')) {
echo "skip Only for POSIX systems";
}
?>
--CAPTURE_STDIO--
STDERR
--FILE--
<?php
ob_start();
var_dump(stream_vt100_support(STDOUT));
var_dump(stream_vt100_support(STDERR));
$content = ob_get_clean();
fwrite(STDERR, $content);
?>
--EXPECT--
bool(true)
bool(false)
18 changes: 18 additions & 0 deletions tests/output/vt100_support_posix_redirected_stdout.phpt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
--TEST--
Test stream_vt100_support on POSIX with redirected STDOUT
--SKIPIF--
<?php
if (!function_exists('posix_isatty')) {
echo "skip Only for POSIX systems";
}
?>
--CAPTURE_STDIO--
STDOUT
--FILE--
<?php
var_dump(stream_vt100_support(STDOUT));
var_dump(stream_vt100_support(STDERR));
?>
--EXPECT--
bool(false)
bool(true)
25 changes: 25 additions & 0 deletions tests/output/vt100_support_win_supported_redirected.phpt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
--TEST--
Test stream_vt100_support on newer Windows versions with redirected STDIO/STDERR
--SKIPIF--
<?php
if (stripos(PHP_OS, 'WIN') !== 0) {
echo "skip Only for Windows systems";
} elseif (version_compare(
PHP_WINDOWS_VERSION_MAJOR.'.'.PHP_WINDOWS_VERSION_MINOR.'.'.PHP_WINDOWS_VERSION_BUILD,
'10.0.10586'
) < 0) {
echo "skip Only for Windows systems >= 10.0.10586";
}
?>
--CAPTURE_STDIO--
STDOUT, STDERR
--FILE--
<?php
var_dump(stream_vt100_support(STDOUT, true));
var_dump(stream_vt100_support(STDERR, true));
stream_vt100_support(STDOUT, false);
stream_vt100_support(STDERR, false);
?>
--EXPECT--
bool(false)
bool(false)
27 changes: 27 additions & 0 deletions tests/output/vt100_support_win_supported_stderr.phpt
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
--TEST--
Test stream_vt100_support for STDERR on newer Windows versions
--SKIPIF--
<?php
if (stripos(PHP_OS, 'WIN') !== 0) {
echo "skip Only for Windows systems";
} elseif (version_compare(
PHP_WINDOWS_VERSION_MAJOR.'.'.PHP_WINDOWS_VERSION_MINOR.'.'.PHP_WINDOWS_VERSION_BUILD,
'10.0.10586'
) < 0) {
echo "skip Only for Windows systems >= 10.0.10586";
}
?>
--CAPTURE_STDIO--
STDOUT
--FILE--
<?php
var_dump(stream_vt100_support(STDERR, true));
var_dump(stream_vt100_support(STDERR));
var_dump(stream_vt100_support(STDERR, false));
var_dump(stream_vt100_support(STDERR));
?>
--EXPECT--
bool(true)
bool(true)
bool(true)
bool(false)
30 changes: 30 additions & 0 deletions tests/output/vt100_support_win_supported_stdout.phpt
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
--TEST--
Test stream_vt100_support for STDOUT on newer Windows versions
--SKIPIF--
<?php
if (stripos(PHP_OS, 'WIN') !== 0) {
echo "skip Only for Windows systems";
} elseif (version_compare(
PHP_WINDOWS_VERSION_MAJOR.'.'.PHP_WINDOWS_VERSION_MINOR.'.'.PHP_WINDOWS_VERSION_BUILD,
'10.0.10586'
) < 0) {
echo "skip Only for Windows systems >= 10.0.10586";
}
?>
--CAPTURE_STDIO--
STDERR
--FILE--
<?php
ob_start();
var_dump(stream_vt100_support(STDOUT, true));
var_dump(stream_vt100_support(STDOUT));
var_dump(stream_vt100_support(STDOUT, false));
var_dump(stream_vt100_support(STDOUT));
$content = ob_get_clean();
fwrite(STDERR, $content);
?>
--EXPECT--
bool(true)
bool(true)
bool(true)
bool(false)
25 changes: 25 additions & 0 deletions tests/output/vt100_support_win_unsupported.phpt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
--TEST--
Test stream_vt100_support for older Windows versions
--SKIPIF--
<?php
if (stripos(PHP_OS, 'WIN') !== 0) {
echo "skip Only for Windows systems";
} elseif (version_compare(
PHP_WINDOWS_VERSION_MAJOR.'.'.PHP_WINDOWS_VERSION_MINOR.'.'.PHP_WINDOWS_VERSION_BUILD,
'10.0.10586'
) >= 0) {
echo "skip Only for Windows systems < 10.0.10586";
}
?>
--CAPTURE_STDIO--
STDOUT
--FILE--
<?php
var_dump(stream_vt100_support(STDERR));
var_dump(stream_vt100_support(STDERR, true));
var_dump(stream_vt100_support(STDERR, false));
?>
--EXPECT--
bool(false)
bool(false)
bool(false)

0 comments on commit d9b1c99

Please sign in to comment.