diff options
Diffstat (limited to 'src/tests/broken_configuration')
145 files changed, 1221 insertions, 0 deletions
diff --git a/src/tests/broken_configuration/broken_conf.phpt b/src/tests/broken_configuration/broken_conf.phpt new file mode 100644 index 0000000..209e1bd --- /dev/null +++ b/src/tests/broken_configuration/broken_conf.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf2.phpt b/src/tests/broken_configuration/broken_conf2.phpt new file mode 100644 index 0000000..47314d1 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf2.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf2.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration section 'sp.wrong' on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration section 'sp.wrong' on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_allow_broken_disabled.phpt b/src/tests/broken_configuration/broken_conf_allow_broken_disabled.phpt new file mode 100644 index 0000000..7aa0c82 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_allow_broken_disabled.phpt | |||
| @@ -0,0 +1,18 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration with allow broken turned off | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf.ini | ||
| 7 | sp.allow_broken_configuration=Off | ||
| 8 | --FILE-- | ||
| 9 | <?php | ||
| 10 | echo 1337; | ||
| 11 | ?> | ||
| 12 | --EXPECT-- | ||
| 13 | PHP Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 | ||
| 14 | |||
| 15 | Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 | ||
| 16 | |||
| 17 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 18 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_allow_broken_enabled.phpt b/src/tests/broken_configuration/broken_conf_allow_broken_enabled.phpt new file mode 100644 index 0000000..452595b --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_allow_broken_enabled.phpt | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration with allow broken turned on | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf.ini | ||
| 7 | sp.allow_broken_configuration=On | ||
| 8 | --FILE-- | ||
| 9 | <?php | ||
| 10 | echo 1337; | ||
| 11 | ?> | ||
| 12 | --EXPECT-- | ||
| 13 | PHP Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 | ||
| 14 | |||
| 15 | Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 | ||
| 16 | 1337 | ||
diff --git a/src/tests/broken_configuration/broken_conf_config_regexp.phpt b/src/tests/broken_configuration/broken_conf_config_regexp.phpt new file mode 100644 index 0000000..2977e3a --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_config_regexp.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_config_regexp.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECTF-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_config_regexp_no_closing_paren.phpt b/src/tests/broken_configuration/broken_conf_config_regexp_no_closing_paren.phpt new file mode 100644 index 0000000..77bb1b4 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_config_regexp_no_closing_paren.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration - regexp without a closing parenthesis | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_config_regexp_no_closing_paren.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"*."': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"*."': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_cookie_encryption_without_encryption_key.phpt b/src/tests/broken_configuration/broken_conf_cookie_encryption_without_encryption_key.phpt new file mode 100644 index 0000000..d0b7c0d --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_cookie_encryption_without_encryption_key.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Borken configuration - encrypted cookie without encryption key | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_cookie_encryption_without_encryption_key.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.encryption_key` option in`sp.global`: please set it first in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.encryption_key` option in`sp.global`: please set it first in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_cookie_encryption_without_env_var.phpt b/src/tests/broken_configuration/broken_conf_cookie_encryption_without_env_var.phpt new file mode 100644 index 0000000..af5d471 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_cookie_encryption_without_env_var.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Borken configuration - encrypted cookie with without cookie env var | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_cookie_encryption_without_env_var.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] You're trying to use the cookie encryption featureon line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_cookie_name_and_regexp.phpt b/src/tests/broken_configuration/broken_conf_cookie_name_and_regexp.phpt new file mode 100644 index 0000000..b1e1318 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_cookie_name_and_regexp.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Borken configuration - encrypted cookie with name and regexp | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_cookie_name_and_regexp.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] name and name_r are mutually exclusive on line 2 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] name and name_r are mutually exclusive on line 2 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_enable_disable.phpt b/src/tests/broken_configuration/broken_conf_enable_disable.phpt new file mode 100644 index 0000000..a836f44 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_enable_disable.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Global strict mode | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/borken_conf_enable_disable.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECTF-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_eval.phpt b/src/tests/broken_configuration/broken_conf_eval.phpt new file mode 100644 index 0000000..98da9c9 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_eval.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration for eval | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_eval.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"cos,sin': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"cos,sin': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_expecting_bool.phpt b/src/tests/broken_configuration/broken_conf_expecting_bool.phpt new file mode 100644 index 0000000..6770c7c --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_expecting_bool.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Bad boolean value in configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_expecting_bool.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Trailing chars '337);' at the end of '.enable(1337);' on line 5 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Trailing chars '337);' at the end of '.enable(1337);' on line 5 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_invalid_cidr.phpt b/src/tests/broken_configuration/broken_conf_invalid_cidr.phpt new file mode 100644 index 0000000..3e27050 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_invalid_cidr.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_invalid_cidr.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] '42' isn't a valid ipv4 mask. in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] '42' isn't a valid ipv4 mask. in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_invalid_cidr6.phpt b/src/tests/broken_configuration/broken_conf_invalid_cidr6.phpt new file mode 100644 index 0000000..8f96669 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_invalid_cidr6.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_invalid_cidr6.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] 'ZZZ' isn't a valid network mask. in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] 'ZZZ' isn't a valid network mask. in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_invalid_cidr6_no_slash.phpt b/src/tests/broken_configuration/broken_conf_invalid_cidr6_no_slash.phpt new file mode 100644 index 0000000..2d557ff --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_invalid_cidr6_no_slash.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration, invalid cidr for ipv6 because there is no `/` in it | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_invalid_cidr6_no_slash.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] '2001:0db8:0000:0000:0000:ff00:0042:8329' isn't a valid network mask, it seems that you forgot a '/'. in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] '2001:0db8:0000:0000:0000:ff00:0042:8329' isn't a valid network mask, it seems that you forgot a '/'. in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_invalid_cidr6_too_big.phpt b/src/tests/broken_configuration/broken_conf_invalid_cidr6_too_big.phpt new file mode 100644 index 0000000..47d4a5d --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_invalid_cidr6_too_big.phpt | |||
| @@ -0,0 +1,9 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration, cidr for ipv6 is too big, that will `mod` to 25. | ||
| 3 | (13337%128 = 25) | ||
| 4 | --SKIPIF-- | ||
| 5 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 6 | --INI-- | ||
| 7 | sp.configuration_file={PWD}/config/broken_conf_invalid_cidr6_too_big.ini | ||
| 8 | --FILE-- | ||
| 9 | --EXPECT-- | ||
diff --git a/src/tests/broken_configuration/broken_conf_invalid_cidr_value.phpt b/src/tests/broken_configuration/broken_conf_invalid_cidr_value.phpt new file mode 100644 index 0000000..ad60912 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_invalid_cidr_value.phpt | |||
| @@ -0,0 +1,18 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration, invalid cidr value | ||
| 3 | (13337%128 = 25) | ||
| 4 | --SKIPIF-- | ||
| 5 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 6 | --INI-- | ||
| 7 | sp.configuration_file={PWD}/config/broken_conf_invalid_cidr_value.ini | ||
| 8 | --FILE-- | ||
| 9 | --EXPECT-- | ||
| 10 | PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 | ||
| 11 | PHP Fatal error: [snuffleupagus][config] " doesn't contain a valid cidr on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 | ||
| 14 | |||
| 15 | Fatal error: [snuffleupagus][config] " doesn't contain a valid cidr on line 1 in Unknown on line 0 | ||
| 16 | |||
| 17 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 18 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_invalid_filename.phpt b/src/tests/broken_configuration/broken_conf_invalid_filename.phpt new file mode 100644 index 0000000..0ab138f --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_invalid_filename.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration filename without absolute path | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) die "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_invalid_filename.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECTF-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("sprintf").filename("wrong file name").drop();':'.filename' must be an absolute path or a phar archive on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("sprintf").filename("wrong file name").drop();':'.filename' must be an absolute path or a phar archive on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_invalid_type.phpt b/src/tests/broken_configuration/broken_conf_invalid_type.phpt new file mode 100644 index 0000000..b140c25 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_invalid_type.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken conf with wrong type | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) die "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_invalid_type.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECTF-- | ||
| 9 | PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"totally_wrong"_type")': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"totally_wrong"_type")': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_key_value.phpt b/src/tests/broken_configuration/broken_conf_key_value.phpt new file mode 100644 index 0000000..8c455f8 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_key_value.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_key_value.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").var("").value("").key("").drop();':`key` and `value` are mutually exclusive on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").var("").value("").key("").drop();':`key` and `value` are mutually exclusive on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_line_empty_string.phpt b/src/tests/broken_configuration/broken_conf_line_empty_string.phpt new file mode 100644 index 0000000..77bd46d --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_line_empty_string.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Configuration line with an empty string | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_line_empty_string.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_line_no_closing.phpt b/src/tests/broken_configuration/broken_conf_line_no_closing.phpt new file mode 100644 index 0000000..19dd081 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_line_no_closing.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Configuration line without closing parenthese | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_line_no_closing.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"123"': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"123"': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_1.phpt b/src/tests/broken_configuration/broken_conf_local_var_1.phpt new file mode 100644 index 0000000..52494d3 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_1.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_1.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value ']' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value ']' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_10.phpt b/src/tests/broken_configuration/broken_conf_local_var_10.phpt new file mode 100644 index 0000000..d184286 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_10.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_10.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]asd' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]asd' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_11.phpt b/src/tests/broken_configuration/broken_conf_local_var_11.phpt new file mode 100644 index 0000000..105ef24 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_11.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_11.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `::` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value 'asd::' for `param` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `::` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value 'asd::' for `param` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_12.phpt b/src/tests/broken_configuration/broken_conf_local_var_12.phpt new file mode 100644 index 0000000..bfa79e1 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_12.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_12.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Empty value in `var` on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Empty value in `var` on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_13.phpt b/src/tests/broken_configuration/broken_conf_local_var_13.phpt new file mode 100644 index 0000000..b4e8dee --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_13.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_13.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value 'asd->asd' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value 'asd->asd' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_14.phpt b/src/tests/broken_configuration/broken_conf_local_var_14.phpt new file mode 100644 index 0000000..3e21721 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_14.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_14.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid var name: $i+valid var name . in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value '$i+valid var name ' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid var name: $i+valid var name . in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value '$i+valid var name ' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_15.phpt b/src/tests/broken_configuration/broken_conf_local_var_15.phpt new file mode 100644 index 0000000..6c9c4c3 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_15.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_15.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid var name: $i$$!@#. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value '$i$$!@#->qwe' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid var name: $i$$!@#. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value '$i$$!@#->qwe' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_16.phpt b/src/tests/broken_configuration/broken_conf_local_var_16.phpt new file mode 100644 index 0000000..85c6627 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_16.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_16.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Missing a closing quote. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value '"' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Missing a closing quote. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value '"' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_2.phpt b/src/tests/broken_configuration/broken_conf_local_var_2.phpt new file mode 100644 index 0000000..7b0d36b --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_2.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_2.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value '""asd' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value '""asd' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_3.phpt b/src/tests/broken_configuration/broken_conf_local_var_3.phpt new file mode 100644 index 0000000..fb00c26 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_3.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_3.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value '$qwe->::' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value '$qwe->::' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_4.phpt b/src/tests/broken_configuration/broken_conf_local_var_4.phpt new file mode 100644 index 0000000..8d7e195 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_4.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_4.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value '"asd"asd[]' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value '"asd"asd[]' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_5.phpt b/src/tests/broken_configuration/broken_conf_local_var_5.phpt new file mode 100644 index 0000000..1c62e37 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_5.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_5.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value ''asd'asd[]' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value ''asd'asd[]' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_6.phpt b/src/tests/broken_configuration/broken_conf_local_var_6.phpt new file mode 100644 index 0000000..9a3fa02 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_6.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_6.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value '''asd' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value '''asd' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_7.phpt b/src/tests/broken_configuration/broken_conf_local_var_7.phpt new file mode 100644 index 0000000..9f2548b --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_7.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_7.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value 'asd-->' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value 'asd-->' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_8.phpt b/src/tests/broken_configuration/broken_conf_local_var_8.phpt new file mode 100644 index 0000000..d4d9d35 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_8.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_8.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]"asd"' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]"asd"' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_local_var_9.phpt b/src/tests/broken_configuration/broken_conf_local_var_9.phpt new file mode 100644 index 0000000..972e398 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_local_var_9.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_local_var_9.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]'asd'' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]'asd'' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_lots_of_quotes.phpt b/src/tests/broken_configuration/broken_conf_lots_of_quotes.phpt new file mode 100644 index 0000000..afed2f8 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_lots_of_quotes.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Configuration line with too many quotes | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_lots_of_quotes.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"this\"is a weird\"\"\"cookie\"name"");': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"this\"is a weird\"\"\"cookie\"name"");': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_missing_script.phpt b/src/tests/broken_configuration/broken_conf_missing_script.phpt new file mode 100644 index 0000000..70e508d --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_missing_script.phpt | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | --TEST-- | ||
| 2 | Invalid configuration file for upload | ||
| 3 | --INI-- | ||
| 4 | file_uploads=1 | ||
| 5 | sp.configuration_file={PWD}/config/broken_conf_missing_script.ini | ||
| 6 | --FILE-- | ||
| 7 | <?php | ||
| 8 | echo 1; | ||
| 9 | ?> | ||
| 10 | --EXPECTF-- | ||
| 11 | PHP Fatal error: [snuffleupagus][config] The `script` directive is mandatory in '.enable();' on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] The `script` directive is mandatory in '.enable();' on line 1 in Unknown on line 0 | ||
| 14 | |||
| 15 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 16 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive.phpt new file mode 100644 index 0000000..6cc9bd6 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive.phpt | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").value_r("^id$").drop();': '.value' and '.regexp' are mutually exclusive on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").value_r("^id$").drop();': '.value' and '.regexp' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive10.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive10.phpt new file mode 100644 index 0000000..0231c05 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive10.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration - enabled/disabled readonly | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive10.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive11.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive11.phpt new file mode 100644 index 0000000..507d7fa --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive11.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration - ret and var are mutually exclusives | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive11.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").var("hop");':`ret` and `var` are mutually exclusive on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").var("hop");':`ret` and `var` are mutually exclusive on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive12.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive12.phpt new file mode 100644 index 0000000..d823de9 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive12.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration - ret and value are mutually exclusive | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive12.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").value("hop");':`ret` and `value` are mutually exclusive on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("strcmp").drop().ret("hip").value("hop");':`ret` and `value` are mutually exclusive on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive2.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive2.phpt new file mode 100644 index 0000000..570b917 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive2.phpt | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive2.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").function_r("system").param("id").value("42").drop();': '.r_function' and '.function' are mutually exclusive on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").function_r("system").param("id").value("42").drop();': '.r_function' and '.function' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive3.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive3.phpt new file mode 100644 index 0000000..e7387eb --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive3.phpt | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive3.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").filename_r("^id$").filename("pouet.txt").drop();': '.r_filename' and '.filename' are mutually exclusive on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").filename_r("^id$").filename("pouet.txt").drop();': '.r_filename' and '.filename' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive4.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive4.phpt new file mode 100644 index 0000000..c979f56 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive4.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive4.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").param_r("^id$").drop();':'.r_param', '.param' and '.pos' are mutually exclusive on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").param_r("^id$").drop();':'.r_param', '.param' and '.pos' are mutually exclusive on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive5.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive5.phpt new file mode 100644 index 0000000..b23fba6 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive5.phpt | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive5.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().ret_r("^0$");': '.r_ret' and '.ret' are mutually exclusive on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().ret_r("^0$");': '.r_ret' and '.ret' are mutually exclusive on line 1 in Unknown on line 0 \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive6.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive6.phpt new file mode 100644 index 0000000..1c4686b --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive6.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive6.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").ret_r("^0$").drop();':`ret` and `param` are mutually exclusive on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").param("id").value("42").ret_r("^0$").drop();':`ret` and `param` are mutually exclusive on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive7.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive7.phpt new file mode 100644 index 0000000..22abf79 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive7.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive7.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().allow();': The rule must either be a `drop` or `allow` one on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.function("system").ret("0").drop().allow();': The rule must either be a `drop` or `allow` one on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive8.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive8.phpt new file mode 100644 index 0000000..6a95234 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive8.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive8.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.ret("0").drop();': must take a function name on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Invalid configuration line: 'sp.disabled_functions.ret("0").drop();': must take a function name on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_mutually_exclusive9.phpt b/src/tests/broken_configuration/broken_conf_mutually_exclusive9.phpt new file mode 100644 index 0000000..9436c24 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_mutually_exclusive9.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration - enabled/disabled unserialize | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive9.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_no_cookie_action.phpt b/src/tests/broken_configuration/broken_conf_no_cookie_action.phpt new file mode 100644 index 0000000..a354b8b --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_no_cookie_action.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Bad config, invalid action. | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_cookie_action.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] You must specify a at least one action to a cookie on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] You must specify a at least one action to a cookie on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_no_cookie_name.phpt b/src/tests/broken_configuration/broken_conf_no_cookie_name.phpt new file mode 100644 index 0000000..e769edb --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_no_cookie_name.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Borken configuration - encrypted cookie with no name | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/config_encrypted_cookies_noname.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] You must specify a cookie name/regexp on line 2 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] You must specify a cookie name/regexp on line 2 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_no_file_specified.phpt b/src/tests/broken_configuration/broken_conf_no_file_specified.phpt new file mode 100644 index 0000000..10314ec --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_no_file_specified.phpt | |||
| @@ -0,0 +1,10 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration - No configuration file specified | ||
| 3 | --INI-- | ||
| 4 | --SKIPIF-- | ||
| 5 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 6 | --FILE-- | ||
| 7 | <?php echo "1\n"; ?> | ||
| 8 | --EXPECT-- | ||
| 9 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 10 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_nonexisting_script.phpt b/src/tests/broken_configuration/broken_conf_nonexisting_script.phpt new file mode 100644 index 0000000..16583d3 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_nonexisting_script.phpt | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | --TEST-- | ||
| 2 | Invalid configuration file for upload | ||
| 3 | --INI-- | ||
| 4 | file_uploads=1 | ||
| 5 | sp.configuration_file={PWD}/config/broken_conf_nonexisting_script.ini | ||
| 6 | --FILE-- | ||
| 7 | <?php | ||
| 8 | echo 1; | ||
| 9 | ?> | ||
| 10 | --EXPECTF-- | ||
| 11 | PHP Fatal error: [snuffleupagus][config] The `script` (./non_existing_script.sh) doesn't exist on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] The `script` (./non_existing_script.sh) doesn't exist on line 1 in Unknown on line 0 | ||
| 14 | |||
| 15 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 16 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_quotes.phpt b/src/tests/broken_configuration/broken_conf_quotes.phpt new file mode 100644 index 0000000..845f7ee --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_quotes.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration - missing quote | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_quotes.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] You forgot to close a bracket. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value '_SERVER[PHP_SELF' for `var` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] You forgot to close a bracket. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value '_SERVER[PHP_SELF' for `var` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_readonly_exec.phpt b/src/tests/broken_configuration/broken_conf_readonly_exec.phpt new file mode 100644 index 0000000..cc5758f --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_readonly_exec.phpt | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | --TEST-- | ||
| 2 | Invalid configuration file for readonly_exec | ||
| 3 | --INI-- | ||
| 4 | file_uploads=1 | ||
| 5 | sp.configuration_file={PWD}/config/broken_conf_readonly_exec.ini | ||
| 6 | --FILE-- | ||
| 7 | <?php | ||
| 8 | echo 1; | ||
| 9 | ?> | ||
| 10 | --EXPECTF-- | ||
| 11 | PHP Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 | ||
| 14 | |||
| 15 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 16 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_samesite.phpt b/src/tests/broken_configuration/broken_conf_samesite.phpt new file mode 100644 index 0000000..99965d4 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_samesite.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Bad config, invalid samesite type. | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_cookie_samesite.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] nop is an invalid value to samesite (expected Lax or Strict) on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] nop is an invalid value to samesite (expected Lax or Strict) on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_session_encryption.phpt b/src/tests/broken_configuration/broken_conf_session_encryption.phpt new file mode 100644 index 0000000..b6a0ea7 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_session_encryption.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken config, session encryption | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_session_encryption.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Trailing chars 'nvalid value :/);' at the end of '.encrypt(invalid value :/);' on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Trailing chars 'nvalid value :/);' at the end of '.encrypt(invalid value :/);' on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_session_encryption_without_encryption_key.phpt b/src/tests/broken_configuration/broken_conf_session_encryption_without_encryption_key.phpt new file mode 100644 index 0000000..c90a154 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_session_encryption_without_encryption_key.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration - encrypted session without encryption key | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_session_encryption_without_encryption_key.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.secret_key` option in`sp.global`: please set it first in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.secret_key` option in`sp.global`: please set it first in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_session_encryption_without_env_var.phpt b/src/tests/broken_configuration/broken_conf_session_encryption_without_env_var.phpt new file mode 100644 index 0000000..c2654e4 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_session_encryption_without_env_var.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration - encrypted session without env var | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_session_encryption_without_env_var.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] You're trying to use the session cookie encryption feature on line 2 without having set the `.cookie_env_var` option in`sp.global`: please set it first in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_shown_in_phpinfo.phpt b/src/tests/broken_configuration/broken_conf_shown_in_phpinfo.phpt new file mode 100644 index 0000000..eb7eae6 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_shown_in_phpinfo.phpt | |||
| @@ -0,0 +1,28 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_config_regexp.ini | ||
| 7 | --FILE-- | ||
| 8 | <?php | ||
| 9 | ob_start(); | ||
| 10 | phpinfo(); | ||
| 11 | $info = ob_get_clean(); | ||
| 12 | ob_get_clean(); | ||
| 13 | if (strstr($info, 'Valid config => no') !== FALSE) { | ||
| 14 | echo "win"; | ||
| 15 | } else { | ||
| 16 | echo "lose"; | ||
| 17 | } | ||
| 18 | ?> | ||
| 19 | --EXPECTF-- | ||
| 20 | PHP Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 | ||
| 21 | PHP Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 | ||
| 22 | |||
| 23 | Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 | ||
| 24 | |||
| 25 | Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 | ||
| 26 | |||
| 27 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 28 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_truncated.phpt b/src/tests/broken_configuration/broken_conf_truncated.phpt new file mode 100644 index 0000000..f0c5887 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_truncated.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Bad boolean value in configuration | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/config_broken_conf_truncated.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_unserialize.phpt b/src/tests/broken_configuration/broken_conf_unserialize.phpt new file mode 100644 index 0000000..d7a924a --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_unserialize.phpt | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | --TEST-- | ||
| 2 | Invalid configuration file for unserialize | ||
| 3 | --INI-- | ||
| 4 | file_uploads=1 | ||
| 5 | sp.configuration_file={PWD}/config/broken_conf_unserialize.ini | ||
| 6 | --FILE-- | ||
| 7 | <?php | ||
| 8 | echo 1; | ||
| 9 | ?> | ||
| 10 | --EXPECTF-- | ||
| 11 | PHP Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 | ||
| 14 | |||
| 15 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 16 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_upload_validation.phpt b/src/tests/broken_configuration/broken_conf_upload_validation.phpt new file mode 100644 index 0000000..332a649 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_upload_validation.phpt | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | --TEST-- | ||
| 2 | Invalid configuration file for upload validation | ||
| 3 | --INI-- | ||
| 4 | file_uploads=1 | ||
| 5 | sp.configuration_file={PWD}/config/borken_conf_upload_validation.ini | ||
| 6 | --FILE-- | ||
| 7 | <?php | ||
| 8 | echo 1; | ||
| 9 | ?> | ||
| 10 | --EXPECTF-- | ||
| 11 | PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 | ||
| 14 | |||
| 15 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 16 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_weird_keyword.phpt b/src/tests/broken_configuration/broken_conf_weird_keyword.phpt new file mode 100644 index 0000000..e3c1239 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_weird_keyword.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Bad config, unknown keyword | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_weird_keyword.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Trailing chars '.not_a_valid_keyword("test");' at the end of '.enable().not_a_valid_keyword("test");' on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][config] Trailing chars '.not_a_valid_keyword("test");' at the end of '.enable().not_a_valid_keyword("test");' on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_wrapper_whitelist.phpt b/src/tests/broken_configuration/broken_conf_wrapper_whitelist.phpt new file mode 100644 index 0000000..ea147ac --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_wrapper_whitelist.phpt | |||
| @@ -0,0 +1,18 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration with invalid token for wrapper whitelist | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_wrapper_whitelist.ini | ||
| 7 | sp.allow_broken_configuration=Off | ||
| 8 | --FILE-- | ||
| 9 | <?php | ||
| 10 | echo 1337; | ||
| 11 | ?> | ||
| 12 | --EXPECT-- | ||
| 13 | PHP Fatal error: [snuffleupagus][config] Trailing chars '.invalid_param();' at the end of '.invalid_param();' on line 1 in Unknown on line 0 | ||
| 14 | |||
| 15 | Fatal error: [snuffleupagus][config] Trailing chars '.invalid_param();' at the end of '.invalid_param();' on line 1 in Unknown on line 0 | ||
| 16 | |||
| 17 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 18 | Could not startup. | ||
diff --git a/src/tests/broken_configuration/broken_conf_wrong_quotes.phpt b/src/tests/broken_configuration/broken_conf_wrong_quotes.phpt new file mode 100644 index 0000000..119bbe7 --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_wrong_quotes.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Configuration line with too many quotes | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_wrong_quotes.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECT-- | ||
| 9 | PHP Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"\)': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][error] There is an issue with the parsing of '"\)': it doesn't look like a valid string on line 1 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_conf_wrong_type.phpt b/src/tests/broken_configuration/broken_conf_wrong_type.phpt new file mode 100644 index 0000000..b90d6ff --- /dev/null +++ b/src/tests/broken_configuration/broken_conf_wrong_type.phpt | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken conf with wrong type | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) die "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_conf_wrong_type.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECTF-- | ||
| 9 | PHP Fatal error: [snuffleupagus][error] .ret_type() is expecting a valid php type ('false', 'true', 'array'. 'object', 'long', 'double', 'null', 'resource', 'reference', 'undef') on line 5 in Unknown on line 0 | ||
| 10 | |||
| 11 | Fatal error: [snuffleupagus][error] .ret_type() is expecting a valid php type ('false', 'true', 'array'. 'object', 'long', 'double', 'null', 'resource', 'reference', 'undef') on line 5 in Unknown on line 0 | ||
| 12 | |||
| 13 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 14 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_invalid_client_ip4.phpt b/src/tests/broken_configuration/broken_invalid_client_ip4.phpt new file mode 100644 index 0000000..e8a5260 --- /dev/null +++ b/src/tests/broken_configuration/broken_invalid_client_ip4.phpt | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | --TEST-- | ||
| 2 | Invalid client IP | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) die "skip"; ?> | ||
| 5 | --ENV-- | ||
| 6 | return <<<EOF | ||
| 7 | REMOTE_ADDR=xyz | ||
| 8 | EOF; | ||
| 9 | --INI-- | ||
| 10 | sp.configuration_file={PWD}/config/disabled_functions_cidr.ini | ||
| 11 | --FILE-- | ||
| 12 | <?php | ||
| 13 | strpos("1337", "1"); | ||
| 14 | ?> | ||
| 15 | --EXPECTF-- | ||
| 16 | Fatal error: [snuffleupagus][cidr_match] Weird ip (xyz) family in %a/broken_invalid_client_ip4.php on line 2 \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_regexp.phpt b/src/tests/broken_configuration/broken_regexp.phpt new file mode 100644 index 0000000..2fc130d --- /dev/null +++ b/src/tests/broken_configuration/broken_regexp.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken regexp | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) die "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/broken_regexp.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECTF-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Failed to compile '^$[': missing terminating ] for character class on line 1. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] '.value_r()' is expecting a valid regexp, and not '"^$["' on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Failed to compile '^$[': missing terminating ] for character class on line 1. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] '.value_r()' is expecting a valid regexp, and not '"^$["' on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/broken_unmatching_brackets.phpt b/src/tests/broken_configuration/broken_unmatching_brackets.phpt new file mode 100644 index 0000000..33eaaa7 --- /dev/null +++ b/src/tests/broken_configuration/broken_unmatching_brackets.phpt | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | --TEST-- | ||
| 2 | Broken configuration - unmatching brackets | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) die "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/config_unmatching_brackets.ini | ||
| 7 | --FILE-- | ||
| 8 | --EXPECTF-- | ||
| 9 | PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 | ||
| 10 | PHP Fatal error: [snuffleupagus][config] Invalid value 'arr[b]]]]]' for `param` on line 1 in Unknown on line 0 | ||
| 11 | |||
| 12 | Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 | ||
| 13 | |||
| 14 | Fatal error: [snuffleupagus][config] Invalid value 'arr[b]]]]]' for `param` on line 1 in Unknown on line 0 | ||
| 15 | |||
| 16 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 17 | Could not startup. \ No newline at end of file | ||
diff --git a/src/tests/broken_configuration/config/borken_conf_enable_disable.ini b/src/tests/broken_configuration/config/borken_conf_enable_disable.ini new file mode 100644 index 0000000..4e95294 --- /dev/null +++ b/src/tests/broken_configuration/config/borken_conf_enable_disable.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.global_strict.disable().enable(); | |||
diff --git a/src/tests/broken_configuration/config/borken_conf_upload_validation.ini b/src/tests/broken_configuration/config/borken_conf_upload_validation.ini new file mode 100644 index 0000000..7c94185 --- /dev/null +++ b/src/tests/broken_configuration/config/borken_conf_upload_validation.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.upload_validation.script( | |||
diff --git a/src/tests/broken_configuration/config/broken_conf.ini b/src/tests/broken_configuration/config/broken_conf.ini new file mode 100644 index 0000000..0595320 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf.ini | |||
| @@ -0,0 +1 @@ | |||
| this is a broken line | |||
diff --git a/src/tests/broken_configuration/config/broken_conf2.ini b/src/tests/broken_configuration/config/broken_conf2.ini new file mode 100644 index 0000000..fdb6b8f --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf2.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.wrong | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_cookie_action.ini b/src/tests/broken_configuration/config/broken_conf_cookie_action.ini new file mode 100644 index 0000000..5f07c28 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_cookie_action.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.cookie.name("my_cookie_name"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_cookie_encryption_without_encryption_key.ini b/src/tests/broken_configuration/config/broken_conf_cookie_encryption_without_encryption_key.ini new file mode 100644 index 0000000..a100bd8 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_cookie_encryption_without_encryption_key.ini | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | sp.global.cookie_env_var("MY_SUPER_ENV_VAR_YAY"); | ||
| 2 | sp.cookie.name("my_cookie_name").encrypt(); | ||
diff --git a/src/tests/broken_configuration/config/broken_conf_cookie_encryption_without_env_var.ini b/src/tests/broken_configuration/config/broken_conf_cookie_encryption_without_env_var.ini new file mode 100644 index 0000000..54cb101 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_cookie_encryption_without_env_var.ini | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | sp.global.secret_key("super secret encryption key"); | ||
| 2 | sp.cookie.name("my_cookie_name").encrypt(); | ||
diff --git a/src/tests/broken_configuration/config/broken_conf_cookie_name_and_regexp.ini b/src/tests/broken_configuration/config/broken_conf_cookie_name_and_regexp.ini new file mode 100644 index 0000000..503889b --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_cookie_name_and_regexp.ini | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | sp.global.secret_key("abcdef").cookie_env_var("REMOTE_ADDR"); | ||
| 2 | sp.cookie.name("my_cookie_name").name_r("my_cookie_regexp").encrypt(); | ||
diff --git a/src/tests/broken_configuration/config/broken_conf_cookie_samesite.ini b/src/tests/broken_configuration/config/broken_conf_cookie_samesite.ini new file mode 100644 index 0000000..acc4aa0 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_cookie_samesite.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.cookie.name("my_cookie_name").samesite("nop"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_eval.ini b/src/tests/broken_configuration/config/broken_conf_eval.ini new file mode 100644 index 0000000..80ef7e5 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_eval.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.eval_blacklist.list("cos,sin | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_expecting_bool.ini b/src/tests/broken_configuration/config/broken_conf_expecting_bool.ini new file mode 100644 index 0000000..51c28b2 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_expecting_bool.ini | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | # this is an example of broken conf | ||
| 2 | |||
| 3 | |||
| 4 | ; this is another comment | ||
| 5 | sp.harden_random.enable(1337); | ||
diff --git a/src/tests/broken_configuration/config/broken_conf_invalid_cidr.ini b/src/tests/broken_configuration/config/broken_conf_invalid_cidr.ini new file mode 100644 index 0000000..b1929c1 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_invalid_cidr.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").drop().cidr("127.0.0.1/42"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_invalid_cidr6.ini b/src/tests/broken_configuration/config/broken_conf_invalid_cidr6.ini new file mode 100644 index 0000000..5e91faf --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_invalid_cidr6.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").drop().cidr("2001:0db8:0000:0000:0000:ff00:0042:8329/ZZZ"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_invalid_cidr6_no_slash.ini b/src/tests/broken_configuration/config/broken_conf_invalid_cidr6_no_slash.ini new file mode 100644 index 0000000..067209f --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_invalid_cidr6_no_slash.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").drop().cidr("2001:0db8:0000:0000:0000:ff00:0042:8329"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_invalid_cidr6_too_big.ini b/src/tests/broken_configuration/config/broken_conf_invalid_cidr6_too_big.ini new file mode 100644 index 0000000..f82b18b --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_invalid_cidr6_too_big.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").drop().cidr("2001:0db8:0000:0000:0000:ff00:0042:8329/13337"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_invalid_cidr_value.ini b/src/tests/broken_configuration/config/broken_conf_invalid_cidr_value.ini new file mode 100644 index 0000000..06a56bd --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_invalid_cidr_value.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").drop().cidr(" | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_invalid_filename.ini b/src/tests/broken_configuration/config/broken_conf_invalid_filename.ini new file mode 100644 index 0000000..1be3b51 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_invalid_filename.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("sprintf").filename("wrong file name").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_invalid_type.ini b/src/tests/broken_configuration/config/broken_conf_invalid_type.ini new file mode 100644 index 0000000..c52994e --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_invalid_type.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("strpos").ret_type("totally_wrong"_type") | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_key_value.ini b/src/tests/broken_configuration/config/broken_conf_key_value.ini new file mode 100644 index 0000000..a0edaf2 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_key_value.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("").value("").key("").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_line_empty_string.ini b/src/tests/broken_configuration/config/broken_conf_line_empty_string.ini new file mode 100644 index 0000000..dfa5520 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_line_empty_string.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.cookie.name( | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_line_no_closing.ini b/src/tests/broken_configuration/config/broken_conf_line_no_closing.ini new file mode 100644 index 0000000..6a8c922 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_line_no_closing.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.cookie.name("123" | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_1.ini b/src/tests/broken_configuration/config/broken_conf_local_var_1.ini new file mode 100644 index 0000000..ae5165c --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_1.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("]").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_10.ini b/src/tests/broken_configuration/config/broken_conf_local_var_10.ini new file mode 100644 index 0000000..93dd07f --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_10.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("asd[asd]asd").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_11.ini b/src/tests/broken_configuration/config/broken_conf_local_var_11.ini new file mode 100644 index 0000000..028b1bd --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_11.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").param("asd::").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_12.ini b/src/tests/broken_configuration/config/broken_conf_local_var_12.ini new file mode 100644 index 0000000..a151960 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_12.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_13.ini b/src/tests/broken_configuration/config/broken_conf_local_var_13.ini new file mode 100644 index 0000000..e7c9778 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_13.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("asd->asd").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_14.ini b/src/tests/broken_configuration/config/broken_conf_local_var_14.ini new file mode 100644 index 0000000..6c98ec3 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_14.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("$i+valid var name ").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_15.ini b/src/tests/broken_configuration/config/broken_conf_local_var_15.ini new file mode 100644 index 0000000..a8dc5a4 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_15.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("$i$$!@#->qwe").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_16.ini b/src/tests/broken_configuration/config/broken_conf_local_var_16.ini new file mode 100644 index 0000000..550719b --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_16.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("\"").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_2.ini b/src/tests/broken_configuration/config/broken_conf_local_var_2.ini new file mode 100644 index 0000000..145a3b5 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_2.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("\"\"asd").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_3.ini b/src/tests/broken_configuration/config/broken_conf_local_var_3.ini new file mode 100644 index 0000000..5d89076 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_3.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("\$qwe->::").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_4.ini b/src/tests/broken_configuration/config/broken_conf_local_var_4.ini new file mode 100644 index 0000000..3ec073b --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_4.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("\"asd\"asd[]").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_5.ini b/src/tests/broken_configuration/config/broken_conf_local_var_5.ini new file mode 100644 index 0000000..cd350b6 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_5.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("'asd'asd[]").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_6.ini b/src/tests/broken_configuration/config/broken_conf_local_var_6.ini new file mode 100644 index 0000000..02f4f1a --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_6.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("''asd").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_7.ini b/src/tests/broken_configuration/config/broken_conf_local_var_7.ini new file mode 100644 index 0000000..abbd223 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_7.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("asd-->").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_8.ini b/src/tests/broken_configuration/config/broken_conf_local_var_8.ini new file mode 100644 index 0000000..fd18487 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_8.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("asd[asd]\"asd\"").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_local_var_9.ini b/src/tests/broken_configuration/config/broken_conf_local_var_9.ini new file mode 100644 index 0000000..a311b86 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_local_var_9.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").var("asd[asd]\'asd\'").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_lots_of_quotes.ini b/src/tests/broken_configuration/config/broken_conf_lots_of_quotes.ini new file mode 100644 index 0000000..189a10d --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_lots_of_quotes.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.cookie.name("this\"is a weird\"\"\"cookie\"name""); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_missing_script.ini b/src/tests/broken_configuration/config/broken_conf_missing_script.ini new file mode 100644 index 0000000..a46f590 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_missing_script.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.upload_validation.enable(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive.ini new file mode 100644 index 0000000..7ea483f --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").param("id").value("42").value_r("^id$").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive10.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive10.ini new file mode 100644 index 0000000..da8426e --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive10.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.readonly_exec.enable().disable(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive11.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive11.ini new file mode 100644 index 0000000..cab163f --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive11.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("strcmp").drop().ret("hip").var("hop"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive12.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive12.ini new file mode 100644 index 0000000..fe140db --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive12.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("strcmp").drop().ret("hip").value("hop"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive2.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive2.ini new file mode 100644 index 0000000..3ff3ca7 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive2.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").function_r("system").param("id").value("42").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive3.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive3.ini new file mode 100644 index 0000000..f4f7604 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive3.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").param("id").value("42").filename_r("^id$").filename("pouet.txt").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive4.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive4.ini new file mode 100644 index 0000000..c38a727 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive4.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").param("id").value("42").param_r("^id$").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive5.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive5.ini new file mode 100644 index 0000000..254b2a3 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive5.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").ret("0").drop().ret_r("^0$"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive6.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive6.ini new file mode 100644 index 0000000..7c6712c --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive6.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").param("id").value("42").ret_r("^0$").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive7.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive7.ini new file mode 100644 index 0000000..feb3486 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive7.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("system").ret("0").drop().allow(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive8.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive8.ini new file mode 100644 index 0000000..c9c9ea2 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive8.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.ret("0").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_mutually_exclusive9.ini b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive9.ini new file mode 100644 index 0000000..7bf6a62 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_mutually_exclusive9.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.unserialize_hmac.enable().disable(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_nonexisting_script.ini b/src/tests/broken_configuration/config/broken_conf_nonexisting_script.ini new file mode 100644 index 0000000..8327438 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_nonexisting_script.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.upload_validation.enable().script("./non_existing_script.sh"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_quotes.ini b/src/tests/broken_configuration/config/broken_conf_quotes.ini new file mode 100644 index 0000000..eac8739 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_quotes.ini | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | sp.disable_function.function("system").filename("/static_pages/index.php").var("_SERVER[PHP_SELF").value_r("\"").drop().alias("XSS"); | ||
| 2 | sp.disable_function.filename("include/imageobject_im.class.php").function("exec").var("CONFIG[im_options]).value_r("[^a-z0-9]").drop(); | ||
| 3 | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_readonly_exec.ini b/src/tests/broken_configuration/config/broken_conf_readonly_exec.ini new file mode 100644 index 0000000..9e11313 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_readonly_exec.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.readonly_exec.enable(1234); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_session_encryption.ini b/src/tests/broken_configuration/config/broken_conf_session_encryption.ini new file mode 100644 index 0000000..66b7956 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_session_encryption.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.session.encrypt(invalid value :/); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_session_encryption_without_encryption_key.ini b/src/tests/broken_configuration/config/broken_conf_session_encryption_without_encryption_key.ini new file mode 100644 index 0000000..2b6f674 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_session_encryption_without_encryption_key.ini | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | sp.global.cookie_env_var("MY_SUPER_ENV_VAR_YAY"); | ||
| 2 | sp.session.encrypt(); | ||
diff --git a/src/tests/broken_configuration/config/broken_conf_session_encryption_without_env_var.ini b/src/tests/broken_configuration/config/broken_conf_session_encryption_without_env_var.ini new file mode 100644 index 0000000..43caf4a --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_session_encryption_without_env_var.ini | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | sp.global.secret_key("super secret key, shhhh"); | ||
| 2 | sp.session.encrypt(); | ||
diff --git a/src/tests/broken_configuration/config/broken_conf_to_few_args.ini b/src/tests/broken_configuration/config/broken_conf_to_few_args.ini new file mode 100644 index 0000000..89e19be --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_to_few_args.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.harden_random.enable(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_unserialize.ini b/src/tests/broken_configuration/config/broken_conf_unserialize.ini new file mode 100644 index 0000000..9cdc9a6 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_unserialize.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.unserialize_hmac.enable(1234); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_weird_keyword.ini b/src/tests/broken_configuration/config/broken_conf_weird_keyword.ini new file mode 100644 index 0000000..bf5e7f5 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_weird_keyword.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.harden_random.enable().not_a_valid_keyword("test"); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_wrapper_whitelist.ini b/src/tests/broken_configuration/config/broken_conf_wrapper_whitelist.ini new file mode 100644 index 0000000..b8e08a8 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_wrapper_whitelist.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.wrappers_whitelist.invalid_param(); | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_wrong_quotes.ini b/src/tests/broken_configuration/config/broken_conf_wrong_quotes.ini new file mode 100644 index 0000000..ff41f93 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_wrong_quotes.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.cookie.name("\) | |||
diff --git a/src/tests/broken_configuration/config/broken_conf_wrong_type.ini b/src/tests/broken_configuration/config/broken_conf_wrong_type.ini new file mode 100644 index 0000000..b2943db --- /dev/null +++ b/src/tests/broken_configuration/config/broken_conf_wrong_type.ini | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | sp.disable_function.function("strpos").ret_type("undef").drop().alias("Return value is undef"); | ||
| 2 | sp.disable_function.function("strpos").ret_type("null").drop().alias("Return value is null"); | ||
| 3 | sp.disable_function.function("strpos").ret_type("object").drop().alias("Return value is object"); | ||
| 4 | sp.disable_function.function("strpos").ret_type("reference").drop().alias("Return value is reference"); | ||
| 5 | sp.disable_function.function("strpos").ret_type("totally_wrong_type").drop().alias("Return value is FALSE"); | ||
diff --git a/src/tests/broken_configuration/config/broken_config_regexp.ini b/src/tests/broken_configuration/config/broken_config_regexp.ini new file mode 100644 index 0000000..62bed11 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_config_regexp.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function_r("^system$").filename_r("*.").drop(); | |||
diff --git a/src/tests/broken_configuration/config/broken_config_regexp_no_closing_paren.ini b/src/tests/broken_configuration/config/broken_config_regexp_no_closing_paren.ini new file mode 100644 index 0000000..93e150b --- /dev/null +++ b/src/tests/broken_configuration/config/broken_config_regexp_no_closing_paren.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function_r("^system$").drop().filename_r("*." | |||
diff --git a/src/tests/broken_configuration/config/broken_regexp.ini b/src/tests/broken_configuration/config/broken_regexp.ini new file mode 100644 index 0000000..8e4bf69 --- /dev/null +++ b/src/tests/broken_configuration/config/broken_regexp.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("AwesomeClass::method3").param("a").drop().value_r("^$["); | |||
diff --git a/src/tests/broken_configuration/config/config_broken_conf_truncated.ini b/src/tests/broken_configuration/config/config_broken_conf_truncated.ini new file mode 100644 index 0000000..bf05dfb --- /dev/null +++ b/src/tests/broken_configuration/config/config_broken_conf_truncated.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("").param(no quote, omg! | |||
diff --git a/src/tests/broken_configuration/config/config_encrypted_cookies_noname.ini b/src/tests/broken_configuration/config/config_encrypted_cookies_noname.ini new file mode 100644 index 0000000..048e404 --- /dev/null +++ b/src/tests/broken_configuration/config/config_encrypted_cookies_noname.ini | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | sp.global.secret_key("abcdef").cookie_env_var("REMOTE_ADDR"); | ||
| 2 | sp.cookie.name("").encrypt(); | ||
| 3 | sp.auto_cookie_secure.enable(); | ||
diff --git a/src/tests/broken_configuration/config/config_encrypted_regexp_cookies_bad_regexp.ini b/src/tests/broken_configuration/config/config_encrypted_regexp_cookies_bad_regexp.ini new file mode 100644 index 0000000..4fe92fd --- /dev/null +++ b/src/tests/broken_configuration/config/config_encrypted_regexp_cookies_bad_regexp.ini | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | sp.global.secret_key("abcdef").cookie_env_var("REMOTE_ADDR"); | ||
| 2 | sp.cookie.name_r("^super_co[a-z+$").encrypt(); | ||
| 3 | sp.auto_cookie_secure.enable(); | ||
diff --git a/src/tests/broken_configuration/config/config_unmatching_brackets.ini b/src/tests/broken_configuration/config/config_unmatching_brackets.ini new file mode 100644 index 0000000..45fa4fe --- /dev/null +++ b/src/tests/broken_configuration/config/config_unmatching_brackets.ini | |||
| @@ -0,0 +1 @@ | |||
| sp.disable_function.function("foo").param("arr[b]]]]]").value("aaa").alias("4").drop(); | |||
diff --git a/src/tests/broken_configuration/config/disabled_functions_cidr.ini b/src/tests/broken_configuration/config/disabled_functions_cidr.ini new file mode 100644 index 0000000..f69ce07 --- /dev/null +++ b/src/tests/broken_configuration/config/disabled_functions_cidr.ini | |||
| @@ -0,0 +1,9 @@ | |||
| 1 | sp.disable_function.function("system").drop().cidr("2001:ab9:a::123/64"); | ||
| 2 | sp.disable_function.function("system").drop().cidr("192.168.0.1/16"); | ||
| 3 | sp.disable_function.function("system").drop().cidr("127.0.0.1/8"); | ||
| 4 | sp.disable_function.function("printf").drop().cidr("10.0.0.1/8"); | ||
| 5 | sp.disable_function.function("strpos").drop().cidr("127.0.0.2/4"); | ||
| 6 | sp.disable_function.function("strpos").drop().cidr("::ffff:192.0.2.128/128"); | ||
| 7 | sp.disable_function.function("strpos").drop().cidr("2001:ab9:a::123/64"); | ||
| 8 | sp.disable_function.function("strpos").drop().cidr("2001:0db8:f000:f000:f000:ff00:0042:8329/124"); | ||
| 9 | sp.disable_function.function("printf").drop().cidr("2002:0db8:0000:0000:0000:ff00:0042:8329/24"); | ||
diff --git a/src/tests/broken_configuration/encrypt_regexp_cookies_bad_regexp.phpt b/src/tests/broken_configuration/encrypt_regexp_cookies_bad_regexp.phpt new file mode 100644 index 0000000..8272148 --- /dev/null +++ b/src/tests/broken_configuration/encrypt_regexp_cookies_bad_regexp.phpt | |||
| @@ -0,0 +1,22 @@ | |||
| 1 | --TEST-- | ||
| 2 | Cookie decryption in ipv4 | ||
| 3 | --SKIPIF-- | ||
| 4 | <?php if (!extension_loaded("snuffleupagus")) die "skip"; ?> | ||
| 5 | --INI-- | ||
| 6 | sp.configuration_file={PWD}/config/config_encrypted_regexp_cookies_bad_regexp.ini | ||
| 7 | error_reporting=1 | ||
| 8 | --COOKIE-- | ||
| 9 | super_cookie=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP3gV9YJZL/pUeNAjCKFW0U2ywmf1CwHzwd2pWM=;awful_cookie=awful_cookie_value; | ||
| 10 | --ENV-- | ||
| 11 | return <<<EOF | ||
| 12 | REMOTE_ADDR=127.0.0.1 | ||
| 13 | HTTP_USER_AGENT=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/59.0.3071.109 Chrome/59.0.3071.109 Safari/537.36 | ||
| 14 | EOF; | ||
| 15 | --FILE-- | ||
| 16 | <?php var_dump($_COOKIE); ?> | ||
| 17 | --EXPECT-- | ||
| 18 | Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 | ||
| 19 | |||
| 20 | Fatal error: [snuffleupagus][config] Failed to compile '^super_co[a-z+$': missing terminating ] for character class on line 2. in Unknown on line 0 | ||
| 21 | |||
| 22 | Fatal error: [snuffleupagus][config] '.name_r()' is expecting a valid regexp, and not '"^super_co[a-z+$"' on line 2 in Unknown on line 0 | ||
