diff options
Diffstat (limited to 'src/tests/sloppy_comparison')
10 files changed, 186 insertions, 0 deletions
diff --git a/src/tests/sloppy_comparison/config/sloppy_comparison.ini b/src/tests/sloppy_comparison/config/sloppy_comparison.ini new file mode 100644 index 0000000..ab2d32a --- /dev/null +++ b/src/tests/sloppy_comparison/config/sloppy_comparison.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.sloppy_comparison.enable(); | |||
diff --git a/src/tests/sloppy_comparison/sloppy_comparison.phpt b/src/tests/sloppy_comparison/sloppy_comparison.phpt new file mode 100644 index 0000000..da28e3d --- /dev/null +++ b/src/tests/sloppy_comparison/sloppy_comparison.phpt | |||
| @@ -0,0 +1,30 @@ | |||
| 1 | --TEST-- | ||
| 2 | Sloppy comparison | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sloppy_comparison.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | $qwe = "abc"; | ||
| 10 | if ($qwe == 0) { | ||
| 11 | echo "failed"; | ||
| 12 | } | ||
| 13 | $qwe = "0e123"; | ||
| 14 | if ("0e432" == $qwe) { | ||
| 15 | echo "failed"; | ||
| 16 | } | ||
| 17 | $qwe = []; | ||
| 18 | $test = false; | ||
| 19 | if ($test != $qwe) { | ||
| 20 | echo "lol"; | ||
| 21 | } | ||
| 22 | eval(" | ||
| 23 | \$asd = 'qwe'; | ||
| 24 | if (\$asd == 0) { | ||
| 25 | echo 'oops'; | ||
| 26 | } | ||
| 27 | "); | ||
| 28 | ?> | ||
| 29 | --EXPECT-- | ||
| 30 | lol | ||
diff --git a/src/tests/sloppy_comparison/sloppy_comparison_array.phpt b/src/tests/sloppy_comparison/sloppy_comparison_array.phpt new file mode 100644 index 0000000..79f9ed6 --- /dev/null +++ b/src/tests/sloppy_comparison/sloppy_comparison_array.phpt | |||
| @@ -0,0 +1,15 @@ | |||
| 1 | --TEST-- | ||
| 2 | Sloppy comparison in_array | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sloppy_comparison.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | $qwe = array(rand(1,2), "qwe"); | ||
| 10 | var_dump(in_array(0, $qwe)); | ||
| 11 | var_dump(in_array(0, $qwe, 0)); | ||
| 12 | ?> | ||
| 13 | --EXPECT-- | ||
| 14 | bool(false) | ||
| 15 | bool(false) | ||
diff --git a/src/tests/sloppy_comparison/sloppy_comparison_array_disabled.phpt b/src/tests/sloppy_comparison/sloppy_comparison_array_disabled.phpt new file mode 100644 index 0000000..e8cd77b --- /dev/null +++ b/src/tests/sloppy_comparison/sloppy_comparison_array_disabled.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Sloppy comparison in_array disabled | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.allow_broken_configuration=On | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | $qwe = array(rand(1,2), "qwe"); | ||
| 10 | var_dump(in_array(0, $qwe)); | ||
| 11 | var_dump(in_array(0, $qwe, 0)); | ||
| 12 | var_dump(in_array(0, $qwe, 1)); | ||
| 13 | ?> | ||
| 14 | --EXPECT-- | ||
| 15 | bool(true) | ||
| 16 | bool(true) | ||
| 17 | bool(false) | ||
diff --git a/src/tests/sloppy_comparison/sloppy_comparison_array_keys.phpt b/src/tests/sloppy_comparison/sloppy_comparison_array_keys.phpt new file mode 100644 index 0000000..934f3ba --- /dev/null +++ b/src/tests/sloppy_comparison/sloppy_comparison_array_keys.phpt | |||
| @@ -0,0 +1,37 @@ | |||
| 1 | --TEST-- | ||
| 2 | Sloppy comparison array_keys | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sloppy_comparison.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | $qwe = array(rand(1,2), "qwe"); | ||
| 10 | var_dump(array_keys($qwe, 0)); | ||
| 11 | var_dump(array_keys($qwe, 0, 0)); | ||
| 12 | var_dump(array_keys($qwe, 0, 1)); | ||
| 13 | |||
| 14 | $toto = [ | ||
| 15 | "toto" => 1, | ||
| 16 | "titi" => 2, | ||
| 17 | "tata" => 3, | ||
| 18 | ]; | ||
| 19 | |||
| 20 | var_dump(array_keys($toto)); | ||
| 21 | |||
| 22 | ?> | ||
| 23 | --EXPECT-- | ||
| 24 | array(0) { | ||
| 25 | } | ||
| 26 | array(0) { | ||
| 27 | } | ||
| 28 | array(0) { | ||
| 29 | } | ||
| 30 | array(3) { | ||
| 31 | [0]=> | ||
| 32 | string(4) "toto" | ||
| 33 | [1]=> | ||
| 34 | string(4) "titi" | ||
| 35 | [2]=> | ||
| 36 | string(4) "tata" | ||
| 37 | } | ||
diff --git a/src/tests/sloppy_comparison/sloppy_comparison_array_keys_disabled.phpt b/src/tests/sloppy_comparison/sloppy_comparison_array_keys_disabled.phpt new file mode 100644 index 0000000..8841b4c --- /dev/null +++ b/src/tests/sloppy_comparison/sloppy_comparison_array_keys_disabled.phpt | |||
| @@ -0,0 +1,24 @@ | |||
| 1 | --TEST-- | ||
| 2 | Sloppy comparison array_keys disabled | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.allow_broken_configuration=On | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | $qwe = array(rand(1,2), "qwe"); | ||
| 10 | var_dump(array_keys($qwe, 0)); | ||
| 11 | var_dump(array_keys($qwe, 0, 0)); | ||
| 12 | var_dump(array_keys($qwe, 0, 1)); | ||
| 13 | ?> | ||
| 14 | --EXPECT-- | ||
| 15 | array(1) { | ||
| 16 | [0]=> | ||
| 17 | int(1) | ||
| 18 | } | ||
| 19 | array(1) { | ||
| 20 | [0]=> | ||
| 21 | int(1) | ||
| 22 | } | ||
| 23 | array(0) { | ||
| 24 | } | ||
diff --git a/src/tests/sloppy_comparison/sloppy_comparison_array_search.phpt b/src/tests/sloppy_comparison/sloppy_comparison_array_search.phpt new file mode 100644 index 0000000..60d11d1 --- /dev/null +++ b/src/tests/sloppy_comparison/sloppy_comparison_array_search.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Sloppy comparison array_search | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sloppy_comparison.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | $qwe = array(rand(1,2), "qwe"); | ||
| 10 | var_dump(array_search(0, $qwe)); | ||
| 11 | var_dump(array_search(0, $qwe, 0)); | ||
| 12 | var_dump(array_search(0, $qwe, 1)); | ||
| 13 | ?> | ||
| 14 | --EXPECT-- | ||
| 15 | bool(false) | ||
| 16 | bool(false) | ||
| 17 | bool(false) | ||
diff --git a/src/tests/sloppy_comparison/sloppy_comparison_array_search_disabled.phpt b/src/tests/sloppy_comparison/sloppy_comparison_array_search_disabled.phpt new file mode 100644 index 0000000..bee3752 --- /dev/null +++ b/src/tests/sloppy_comparison/sloppy_comparison_array_search_disabled.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Sloppy comparison array_search disabled | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.allow_broken_configuration=On | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | $qwe = array(rand(1,2), "qwe"); | ||
| 10 | var_dump(array_search(0, $qwe)); | ||
| 11 | var_dump(array_search(0, $qwe, 0)); | ||
| 12 | var_dump(array_search(0, $qwe, 1)); | ||
| 13 | ?> | ||
| 14 | --EXPECT-- | ||
| 15 | int(1) | ||
| 16 | int(1) | ||
| 17 | bool(false) | ||
diff --git a/src/tests/sloppy_comparison/sloppy_comparison_array_search_keys.phpt b/src/tests/sloppy_comparison/sloppy_comparison_array_search_keys.phpt new file mode 100644 index 0000000..031708b --- /dev/null +++ b/src/tests/sloppy_comparison/sloppy_comparison_array_search_keys.phpt | |||
| @@ -0,0 +1,13 @@ | |||
| 1 | --TEST-- | ||
| 2 | Sloppy comparison array_search with keys | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/sloppy_comparison.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | $array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red'); | ||
| 10 | var_dump(array_search('green', $array)); | ||
| 11 | ?> | ||
| 12 | --EXPECT-- | ||
| 13 | int(2) | ||
diff --git a/src/tests/sloppy_comparison/sloppy_comparison_disable.phpt b/src/tests/sloppy_comparison/sloppy_comparison_disable.phpt new file mode 100644 index 0000000..e42c919 --- /dev/null +++ b/src/tests/sloppy_comparison/sloppy_comparison_disable.phpt | |||
| @@ -0,0 +1,15 @@ | |||
| 1 | --TEST-- | ||
| 2 | Sloppy comparison | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.allow_broken_configuration=On | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | $qwe = "abc"; | ||
| 10 | if ($qwe == 0) { | ||
| 11 | echo "OK"; | ||
| 12 | } | ||
| 13 | ?> | ||
| 14 | --EXPECT-- | ||
| 15 | OK | ||
