From e79f7e3bd992c7f0915ef9afe7afb6d79740527a Mon Sep 17 00:00:00 2001 From: jvoisin Date: Mon, 14 Jan 2019 19:29:25 +0000 Subject: Reorganize the testsuite Splitting the testsuite in several components makes it easier to manage and comprehend. This was also needed some some tests aren't passing on Alpine Linux, but we still want to run as many of them as we can on this platform.--- src/tests/broken_configuration/broken_conf.phpt | 14 +++++++++++ src/tests/broken_configuration/broken_conf2.phpt | 14 +++++++++++ .../broken_conf_allow_broken_disabled.phpt | 18 ++++++++++++++ .../broken_conf_allow_broken_enabled.phpt | 16 +++++++++++++ .../broken_conf_config_regexp.phpt | 17 +++++++++++++ ...broken_conf_config_regexp_no_closing_paren.phpt | 17 +++++++++++++ ...f_cookie_encryption_without_encryption_key.phpt | 14 +++++++++++ ...ken_conf_cookie_encryption_without_env_var.phpt | 14 +++++++++++ .../broken_conf_cookie_name_and_regexp.phpt | 14 +++++++++++ .../broken_conf_enable_disable.phpt | 14 +++++++++++ .../broken_configuration/broken_conf_eval.phpt | 14 +++++++++++ .../broken_conf_expecting_bool.phpt | 14 +++++++++++ .../broken_conf_invalid_cidr.phpt | 14 +++++++++++ .../broken_conf_invalid_cidr6.phpt | 14 +++++++++++ .../broken_conf_invalid_cidr6_no_slash.phpt | 14 +++++++++++ .../broken_conf_invalid_cidr6_too_big.phpt | 9 +++++++ .../broken_conf_invalid_cidr_value.phpt | 18 ++++++++++++++ .../broken_conf_invalid_filename.phpt | 14 +++++++++++ .../broken_conf_invalid_type.phpt | 14 +++++++++++ .../broken_conf_key_value.phpt | 14 +++++++++++ .../broken_conf_line_empty_string.phpt | 14 +++++++++++ .../broken_conf_line_no_closing.phpt | 14 +++++++++++ .../broken_conf_local_var_1.phpt | 17 +++++++++++++ .../broken_conf_local_var_10.phpt | 17 +++++++++++++ .../broken_conf_local_var_11.phpt | 17 +++++++++++++ .../broken_conf_local_var_12.phpt | 14 +++++++++++ .../broken_conf_local_var_13.phpt | 17 +++++++++++++ .../broken_conf_local_var_14.phpt | 17 +++++++++++++ .../broken_conf_local_var_15.phpt | 17 +++++++++++++ .../broken_conf_local_var_16.phpt | 17 +++++++++++++ .../broken_conf_local_var_2.phpt | 17 +++++++++++++ .../broken_conf_local_var_3.phpt | 17 +++++++++++++ .../broken_conf_local_var_4.phpt | 17 +++++++++++++ .../broken_conf_local_var_5.phpt | 17 +++++++++++++ .../broken_conf_local_var_6.phpt | 17 +++++++++++++ .../broken_conf_local_var_7.phpt | 17 +++++++++++++ .../broken_conf_local_var_8.phpt | 17 +++++++++++++ .../broken_conf_local_var_9.phpt | 17 +++++++++++++ .../broken_conf_lots_of_quotes.phpt | 14 +++++++++++ .../broken_conf_missing_script.phpt | 16 +++++++++++++ .../broken_conf_mutually_exclusive.phpt | 11 +++++++++ .../broken_conf_mutually_exclusive10.phpt | 14 +++++++++++ .../broken_conf_mutually_exclusive11.phpt | 14 +++++++++++ .../broken_conf_mutually_exclusive12.phpt | 14 +++++++++++ .../broken_conf_mutually_exclusive2.phpt | 11 +++++++++ .../broken_conf_mutually_exclusive3.phpt | 11 +++++++++ .../broken_conf_mutually_exclusive4.phpt | 14 +++++++++++ .../broken_conf_mutually_exclusive5.phpt | 11 +++++++++ .../broken_conf_mutually_exclusive6.phpt | 14 +++++++++++ .../broken_conf_mutually_exclusive7.phpt | 14 +++++++++++ .../broken_conf_mutually_exclusive8.phpt | 14 +++++++++++ .../broken_conf_mutually_exclusive9.phpt | 14 +++++++++++ .../broken_conf_no_cookie_action.phpt | 14 +++++++++++ .../broken_conf_no_cookie_name.phpt | 14 +++++++++++ .../broken_conf_no_file_specified.phpt | 10 ++++++++ .../broken_conf_nonexisting_script.phpt | 16 +++++++++++++ .../broken_configuration/broken_conf_quotes.phpt | 17 +++++++++++++ .../broken_conf_readonly_exec.phpt | 16 +++++++++++++ .../broken_configuration/broken_conf_samesite.phpt | 14 +++++++++++ .../broken_conf_session_encryption.phpt | 14 +++++++++++ ..._session_encryption_without_encryption_key.phpt | 14 +++++++++++ ...en_conf_session_encryption_without_env_var.phpt | 14 +++++++++++ .../broken_conf_shown_in_phpinfo.phpt | 28 ++++++++++++++++++++++ .../broken_conf_truncated.phpt | 14 +++++++++++ .../broken_conf_unserialize.phpt | 16 +++++++++++++ .../broken_conf_upload_validation.phpt | 16 +++++++++++++ .../broken_conf_weird_keyword.phpt | 14 +++++++++++ .../broken_conf_wrapper_whitelist.phpt | 18 ++++++++++++++ .../broken_conf_wrong_quotes.phpt | 14 +++++++++++ .../broken_conf_wrong_type.phpt | 14 +++++++++++ .../broken_invalid_client_ip4.phpt | 16 +++++++++++++ src/tests/broken_configuration/broken_regexp.phpt | 17 +++++++++++++ .../broken_unmatching_brackets.phpt | 17 +++++++++++++ .../config/borken_conf_enable_disable.ini | 1 + .../config/borken_conf_upload_validation.ini | 1 + .../broken_configuration/config/broken_conf.ini | 1 + .../broken_configuration/config/broken_conf2.ini | 1 + .../config/broken_conf_cookie_action.ini | 1 + ...nf_cookie_encryption_without_encryption_key.ini | 2 ++ ...oken_conf_cookie_encryption_without_env_var.ini | 2 ++ .../config/broken_conf_cookie_name_and_regexp.ini | 2 ++ .../config/broken_conf_cookie_samesite.ini | 1 + .../config/broken_conf_eval.ini | 1 + .../config/broken_conf_expecting_bool.ini | 5 ++++ .../config/broken_conf_invalid_cidr.ini | 1 + .../config/broken_conf_invalid_cidr6.ini | 1 + .../config/broken_conf_invalid_cidr6_no_slash.ini | 1 + .../config/broken_conf_invalid_cidr6_too_big.ini | 1 + .../config/broken_conf_invalid_cidr_value.ini | 1 + .../config/broken_conf_invalid_filename.ini | 1 + .../config/broken_conf_invalid_type.ini | 1 + .../config/broken_conf_key_value.ini | 1 + .../config/broken_conf_line_empty_string.ini | 1 + .../config/broken_conf_line_no_closing.ini | 1 + .../config/broken_conf_local_var_1.ini | 1 + .../config/broken_conf_local_var_10.ini | 1 + .../config/broken_conf_local_var_11.ini | 1 + .../config/broken_conf_local_var_12.ini | 1 + .../config/broken_conf_local_var_13.ini | 1 + .../config/broken_conf_local_var_14.ini | 1 + .../config/broken_conf_local_var_15.ini | 1 + .../config/broken_conf_local_var_16.ini | 1 + .../config/broken_conf_local_var_2.ini | 1 + .../config/broken_conf_local_var_3.ini | 1 + .../config/broken_conf_local_var_4.ini | 1 + .../config/broken_conf_local_var_5.ini | 1 + .../config/broken_conf_local_var_6.ini | 1 + .../config/broken_conf_local_var_7.ini | 1 + .../config/broken_conf_local_var_8.ini | 1 + .../config/broken_conf_local_var_9.ini | 1 + .../config/broken_conf_lots_of_quotes.ini | 1 + .../config/broken_conf_missing_script.ini | 1 + .../config/broken_conf_mutually_exclusive.ini | 1 + .../config/broken_conf_mutually_exclusive10.ini | 1 + .../config/broken_conf_mutually_exclusive11.ini | 1 + .../config/broken_conf_mutually_exclusive12.ini | 1 + .../config/broken_conf_mutually_exclusive2.ini | 1 + .../config/broken_conf_mutually_exclusive3.ini | 1 + .../config/broken_conf_mutually_exclusive4.ini | 1 + .../config/broken_conf_mutually_exclusive5.ini | 1 + .../config/broken_conf_mutually_exclusive6.ini | 1 + .../config/broken_conf_mutually_exclusive7.ini | 1 + .../config/broken_conf_mutually_exclusive8.ini | 1 + .../config/broken_conf_mutually_exclusive9.ini | 1 + .../config/broken_conf_nonexisting_script.ini | 1 + .../config/broken_conf_quotes.ini | 3 +++ .../config/broken_conf_readonly_exec.ini | 1 + .../config/broken_conf_session_encryption.ini | 1 + ...f_session_encryption_without_encryption_key.ini | 2 ++ ...ken_conf_session_encryption_without_env_var.ini | 2 ++ .../config/broken_conf_to_few_args.ini | 1 + .../config/broken_conf_unserialize.ini | 1 + .../config/broken_conf_weird_keyword.ini | 1 + .../config/broken_conf_wrapper_whitelist.ini | 1 + .../config/broken_conf_wrong_quotes.ini | 1 + .../config/broken_conf_wrong_type.ini | 5 ++++ .../config/broken_config_regexp.ini | 1 + .../broken_config_regexp_no_closing_paren.ini | 1 + .../broken_configuration/config/broken_regexp.ini | 1 + .../config/config_broken_conf_truncated.ini | 1 + .../config/config_encrypted_cookies_noname.ini | 3 +++ .../config_encrypted_regexp_cookies_bad_regexp.ini | 3 +++ .../config/config_unmatching_brackets.ini | 1 + .../config/disabled_functions_cidr.ini | 9 +++++++ .../encrypt_regexp_cookies_bad_regexp.phpt | 22 +++++++++++++++++ 145 files changed, 1221 insertions(+) create mode 100644 src/tests/broken_configuration/broken_conf.phpt create mode 100644 src/tests/broken_configuration/broken_conf2.phpt create mode 100644 src/tests/broken_configuration/broken_conf_allow_broken_disabled.phpt create mode 100644 src/tests/broken_configuration/broken_conf_allow_broken_enabled.phpt create mode 100644 src/tests/broken_configuration/broken_conf_config_regexp.phpt create mode 100644 src/tests/broken_configuration/broken_conf_config_regexp_no_closing_paren.phpt create mode 100644 src/tests/broken_configuration/broken_conf_cookie_encryption_without_encryption_key.phpt create mode 100644 src/tests/broken_configuration/broken_conf_cookie_encryption_without_env_var.phpt create mode 100644 src/tests/broken_configuration/broken_conf_cookie_name_and_regexp.phpt create mode 100644 src/tests/broken_configuration/broken_conf_enable_disable.phpt create mode 100644 src/tests/broken_configuration/broken_conf_eval.phpt create mode 100644 src/tests/broken_configuration/broken_conf_expecting_bool.phpt create mode 100644 src/tests/broken_configuration/broken_conf_invalid_cidr.phpt create mode 100644 src/tests/broken_configuration/broken_conf_invalid_cidr6.phpt create mode 100644 src/tests/broken_configuration/broken_conf_invalid_cidr6_no_slash.phpt create mode 100644 src/tests/broken_configuration/broken_conf_invalid_cidr6_too_big.phpt create mode 100644 src/tests/broken_configuration/broken_conf_invalid_cidr_value.phpt create mode 100644 src/tests/broken_configuration/broken_conf_invalid_filename.phpt create mode 100644 src/tests/broken_configuration/broken_conf_invalid_type.phpt create mode 100644 src/tests/broken_configuration/broken_conf_key_value.phpt create mode 100644 src/tests/broken_configuration/broken_conf_line_empty_string.phpt create mode 100644 src/tests/broken_configuration/broken_conf_line_no_closing.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_1.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_10.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_11.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_12.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_13.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_14.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_15.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_16.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_2.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_3.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_4.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_5.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_6.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_7.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_8.phpt create mode 100644 src/tests/broken_configuration/broken_conf_local_var_9.phpt create mode 100644 src/tests/broken_configuration/broken_conf_lots_of_quotes.phpt create mode 100644 src/tests/broken_configuration/broken_conf_missing_script.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive10.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive11.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive12.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive2.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive3.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive4.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive5.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive6.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive7.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive8.phpt create mode 100644 src/tests/broken_configuration/broken_conf_mutually_exclusive9.phpt create mode 100644 src/tests/broken_configuration/broken_conf_no_cookie_action.phpt create mode 100644 src/tests/broken_configuration/broken_conf_no_cookie_name.phpt create mode 100644 src/tests/broken_configuration/broken_conf_no_file_specified.phpt create mode 100644 src/tests/broken_configuration/broken_conf_nonexisting_script.phpt create mode 100644 src/tests/broken_configuration/broken_conf_quotes.phpt create mode 100644 src/tests/broken_configuration/broken_conf_readonly_exec.phpt create mode 100644 src/tests/broken_configuration/broken_conf_samesite.phpt create mode 100644 src/tests/broken_configuration/broken_conf_session_encryption.phpt create mode 100644 src/tests/broken_configuration/broken_conf_session_encryption_without_encryption_key.phpt create mode 100644 src/tests/broken_configuration/broken_conf_session_encryption_without_env_var.phpt create mode 100644 src/tests/broken_configuration/broken_conf_shown_in_phpinfo.phpt create mode 100644 src/tests/broken_configuration/broken_conf_truncated.phpt create mode 100644 src/tests/broken_configuration/broken_conf_unserialize.phpt create mode 100644 src/tests/broken_configuration/broken_conf_upload_validation.phpt create mode 100644 src/tests/broken_configuration/broken_conf_weird_keyword.phpt create mode 100644 src/tests/broken_configuration/broken_conf_wrapper_whitelist.phpt create mode 100644 src/tests/broken_configuration/broken_conf_wrong_quotes.phpt create mode 100644 src/tests/broken_configuration/broken_conf_wrong_type.phpt create mode 100644 src/tests/broken_configuration/broken_invalid_client_ip4.phpt create mode 100644 src/tests/broken_configuration/broken_regexp.phpt create mode 100644 src/tests/broken_configuration/broken_unmatching_brackets.phpt create mode 100644 src/tests/broken_configuration/config/borken_conf_enable_disable.ini create mode 100644 src/tests/broken_configuration/config/borken_conf_upload_validation.ini create mode 100644 src/tests/broken_configuration/config/broken_conf.ini create mode 100644 src/tests/broken_configuration/config/broken_conf2.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_cookie_action.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_cookie_encryption_without_encryption_key.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_cookie_encryption_without_env_var.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_cookie_name_and_regexp.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_cookie_samesite.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_eval.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_expecting_bool.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_invalid_cidr.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_invalid_cidr6.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_invalid_cidr6_no_slash.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_invalid_cidr6_too_big.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_invalid_cidr_value.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_invalid_filename.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_invalid_type.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_key_value.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_line_empty_string.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_line_no_closing.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_1.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_10.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_11.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_12.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_13.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_14.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_15.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_16.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_2.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_3.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_4.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_5.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_6.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_7.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_8.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_local_var_9.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_lots_of_quotes.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_missing_script.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive10.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive11.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive12.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive2.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive3.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive4.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive5.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive6.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive7.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive8.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_mutually_exclusive9.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_nonexisting_script.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_quotes.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_readonly_exec.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_session_encryption.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_session_encryption_without_encryption_key.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_session_encryption_without_env_var.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_to_few_args.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_unserialize.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_weird_keyword.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_wrapper_whitelist.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_wrong_quotes.ini create mode 100644 src/tests/broken_configuration/config/broken_conf_wrong_type.ini create mode 100644 src/tests/broken_configuration/config/broken_config_regexp.ini create mode 100644 src/tests/broken_configuration/config/broken_config_regexp_no_closing_paren.ini create mode 100644 src/tests/broken_configuration/config/broken_regexp.ini create mode 100644 src/tests/broken_configuration/config/config_broken_conf_truncated.ini create mode 100644 src/tests/broken_configuration/config/config_encrypted_cookies_noname.ini create mode 100644 src/tests/broken_configuration/config/config_encrypted_regexp_cookies_bad_regexp.ini create mode 100644 src/tests/broken_configuration/config/config_unmatching_brackets.ini create mode 100644 src/tests/broken_configuration/config/disabled_functions_cidr.ini create mode 100644 src/tests/broken_configuration/encrypt_regexp_cookies_bad_regexp.phpt (limited to 'src/tests/broken_configuration') 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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf2.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid configuration section 'sp.wrong' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration section 'sp.wrong' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration with allow broken turned off +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf.ini +sp.allow_broken_configuration=Off +--FILE-- + +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration with allow broken turned on +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf.ini +sp.allow_broken_configuration=On +--FILE-- + +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration prefix for 'this is a broken line' on line 1 in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_config_regexp.ini +--FILE-- +--EXPECTF-- +PHP Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration - regexp without a closing parenthesis +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_config_regexp_no_closing_paren.ini +--FILE-- +--EXPECT-- +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 +PHP Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 + +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 + +Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Borken configuration - encrypted cookie without encryption key +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_cookie_encryption_without_encryption_key.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Borken configuration - encrypted cookie with without cookie env var +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_cookie_encryption_without_env_var.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Borken configuration - encrypted cookie with name and regexp +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_cookie_name_and_regexp.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] name and name_r are mutually exclusive on line 2 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] name and name_r are mutually exclusive on line 2 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Global strict mode +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/borken_conf_enable_disable.ini +--FILE-- +--EXPECTF-- +PHP Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration for eval +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_eval.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Bad boolean value in configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_expecting_bool.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Trailing chars '337);' at the end of '.enable(1337);' on line 5 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Trailing chars '337);' at the end of '.enable(1337);' on line 5 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_invalid_cidr.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] '42' isn't a valid ipv4 mask. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] '42' isn't a valid ipv4 mask. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_invalid_cidr6.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] 'ZZZ' isn't a valid network mask. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] 'ZZZ' isn't a valid network mask. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration, invalid cidr for ipv6 because there is no `/` in it +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_invalid_cidr6_no_slash.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration, cidr for ipv6 is too big, that will `mod` to 25. +(13337%128 = 25) +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_invalid_cidr6_too_big.ini +--FILE-- +--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 @@ +--TEST-- +Broken configuration, invalid cidr value +(13337%128 = 25) +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_invalid_cidr_value.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] " doesn't contain a valid cidr on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] " doesn't contain a valid cidr on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration filename without absolute path +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_invalid_filename.ini +--FILE-- +--EXPECTF-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken conf with wrong type +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_invalid_type.ini +--FILE-- +--EXPECTF-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_key_value.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Configuration line with an empty string +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_line_empty_string.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Configuration line without closing parenthese +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_line_no_closing.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_1.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value ']' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value ']' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_10.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]asd' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]asd' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_11.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `::` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value 'asd::' for `param` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `::` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value 'asd::' for `param` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_12.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Empty value in `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Empty value in `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_13.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value 'asd->asd' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value 'asd->asd' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_14.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid var name: $i+valid var name . in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value '$i+valid var name ' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid var name: $i+valid var name . in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value '$i+valid var name ' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_15.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid var name: $i$$!@#. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value '$i$$!@#->qwe' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid var name: $i$$!@#. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value '$i$$!@#->qwe' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_16.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Missing a closing quote. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value '"' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Missing a closing quote. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value '"' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_2.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value '""asd' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value '""asd' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_3.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value '$qwe->::' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value '$qwe->::' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_4.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value '"asd"asd[]' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `"` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value '"asd"asd[]' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_5.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value ''asd'asd[]' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value ''asd'asd[]' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_6.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value '''asd' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `'` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value '''asd' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_7.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value 'asd-->' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `->` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value 'asd-->' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_8.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]"asd"' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]"asd"' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_local_var_9.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]'asd'' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value 'asd[asd]'asd'' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Configuration line with too many quotes +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_lots_of_quotes.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Invalid configuration file for upload +--INI-- +file_uploads=1 +sp.configuration_file={PWD}/config/broken_conf_missing_script.ini +--FILE-- + +--EXPECTF-- +PHP Fatal error: [snuffleupagus][config] The `script` directive is mandatory in '.enable();' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] The `script` directive is mandatory in '.enable();' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive.ini +--FILE-- +--EXPECT-- +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 + +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 @@ +--TEST-- +Broken configuration - enabled/disabled readonly +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive10.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration - ret and var are mutually exclusives +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive11.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration - ret and value are mutually exclusive +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive12.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive2.ini +--FILE-- +--EXPECT-- +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 + +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive3.ini +--FILE-- +--EXPECT-- +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 + +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive4.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive5.ini +--FILE-- +--EXPECT-- +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 + +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive6.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive7.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive8.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration - enabled/disabled unserialize +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_mutually_exclusive9.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] A rule can't be enabled and disabled on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Bad config, invalid action. +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_cookie_action.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] You must specify a at least one action to a cookie on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] You must specify a at least one action to a cookie on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Borken configuration - encrypted cookie with no name +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/config_encrypted_cookies_noname.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] You must specify a cookie name/regexp on line 2 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] You must specify a cookie name/regexp on line 2 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration - No configuration file specified +--INI-- +--SKIPIF-- + +--FILE-- + +--EXPECT-- +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Invalid configuration file for upload +--INI-- +file_uploads=1 +sp.configuration_file={PWD}/config/broken_conf_nonexisting_script.ini +--FILE-- + +--EXPECTF-- +PHP Fatal error: [snuffleupagus][config] The `script` (./non_existing_script.sh) doesn't exist on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] The `script` (./non_existing_script.sh) doesn't exist on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration - missing quote +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_quotes.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] You forgot to close a bracket. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value '_SERVER[PHP_SELF' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] You forgot to close a bracket. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value '_SERVER[PHP_SELF' for `var` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Invalid configuration file for readonly_exec +--INI-- +file_uploads=1 +sp.configuration_file={PWD}/config/broken_conf_readonly_exec.ini +--FILE-- + +--EXPECTF-- +PHP Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Bad config, invalid samesite type. +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_cookie_samesite.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] nop is an invalid value to samesite (expected Lax or Strict) on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] nop is an invalid value to samesite (expected Lax or Strict) on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken config, session encryption +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_session_encryption.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Trailing chars 'nvalid value :/);' at the end of '.encrypt(invalid value :/);' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Trailing chars 'nvalid value :/);' at the end of '.encrypt(invalid value :/);' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration - encrypted session without encryption key +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_session_encryption_without_encryption_key.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration - encrypted session without env var +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_session_encryption_without_env_var.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_config_regexp.ini +--FILE-- + no') !== FALSE) { + echo "win"; +} else { + echo "lose"; +} +?> +--EXPECTF-- +PHP Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Failed to compile '*.': %s on line 1. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] '.filename_r()' is expecting a valid regexp, and not '"*."' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Bad boolean value in configuration +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/config_broken_conf_truncated.ini +--FILE-- +--EXPECT-- +PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Invalid configuration file for unserialize +--INI-- +file_uploads=1 +sp.configuration_file={PWD}/config/broken_conf_unserialize.ini +--FILE-- + +--EXPECTF-- +PHP Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Trailing chars '234);' at the end of '.enable(1234);' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Invalid configuration file for upload validation +--INI-- +file_uploads=1 +sp.configuration_file={PWD}/config/borken_conf_upload_validation.ini +--FILE-- + +--EXPECTF-- +PHP Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][error] A valid string as parameter is expected on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Bad config, unknown keyword +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_weird_keyword.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration with invalid token for wrapper whitelist +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_wrapper_whitelist.ini +sp.allow_broken_configuration=Off +--FILE-- + +--EXPECT-- +PHP Fatal error: [snuffleupagus][config] Trailing chars '.invalid_param();' at the end of '.invalid_param();' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Trailing chars '.invalid_param();' at the end of '.invalid_param();' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Configuration line with too many quotes +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_wrong_quotes.ini +--FILE-- +--EXPECT-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken conf with wrong type +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_conf_wrong_type.ini +--FILE-- +--EXPECTF-- +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 + +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 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Invalid client IP +--SKIPIF-- + +--ENV-- +return << +--EXPECTF-- +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 @@ +--TEST-- +Broken regexp +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/broken_regexp.ini +--FILE-- +--EXPECTF-- +PHP Fatal error: [snuffleupagus][config] Failed to compile '^$[': missing terminating ] for character class on line 1. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] '.value_r()' is expecting a valid regexp, and not '"^$["' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Failed to compile '^$[': missing terminating ] for character class on line 1. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] '.value_r()' is expecting a valid regexp, and not '"^$["' on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +--TEST-- +Broken configuration - unmatching brackets +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/config_unmatching_brackets.ini +--FILE-- +--EXPECTF-- +PHP Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 +PHP Fatal error: [snuffleupagus][config] Invalid value 'arr[b]]]]]' for `param` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid `]` position. in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid value 'arr[b]]]]]' for `param` on line 1 in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 +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 @@ +sp.global.cookie_env_var("MY_SUPER_ENV_VAR_YAY"); +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 @@ +sp.global.secret_key("super secret encryption key"); +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 @@ +sp.global.secret_key("abcdef").cookie_env_var("REMOTE_ADDR"); +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 @@ + # this is an example of broken conf + + + ; this is another comment +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 @@ +sp.disable_function.function("system").filename("/static_pages/index.php").var("_SERVER[PHP_SELF").value_r("\"").drop().alias("XSS"); +sp.disable_function.filename("include/imageobject_im.class.php").function("exec").var("CONFIG[im_options]).value_r("[^a-z0-9]").drop(); + 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 @@ +sp.global.cookie_env_var("MY_SUPER_ENV_VAR_YAY"); +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 @@ +sp.global.secret_key("super secret key, shhhh"); +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 @@ +sp.disable_function.function("strpos").ret_type("undef").drop().alias("Return value is undef"); +sp.disable_function.function("strpos").ret_type("null").drop().alias("Return value is null"); +sp.disable_function.function("strpos").ret_type("object").drop().alias("Return value is object"); +sp.disable_function.function("strpos").ret_type("reference").drop().alias("Return value is reference"); +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 @@ +sp.global.secret_key("abcdef").cookie_env_var("REMOTE_ADDR"); +sp.cookie.name("").encrypt(); +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 @@ +sp.global.secret_key("abcdef").cookie_env_var("REMOTE_ADDR"); +sp.cookie.name_r("^super_co[a-z+$").encrypt(); +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 @@ +sp.disable_function.function("system").drop().cidr("2001:ab9:a::123/64"); +sp.disable_function.function("system").drop().cidr("192.168.0.1/16"); +sp.disable_function.function("system").drop().cidr("127.0.0.1/8"); +sp.disable_function.function("printf").drop().cidr("10.0.0.1/8"); +sp.disable_function.function("strpos").drop().cidr("127.0.0.2/4"); +sp.disable_function.function("strpos").drop().cidr("::ffff:192.0.2.128/128"); +sp.disable_function.function("strpos").drop().cidr("2001:ab9:a::123/64"); +sp.disable_function.function("strpos").drop().cidr("2001:0db8:f000:f000:f000:ff00:0042:8329/124"); +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 @@ +--TEST-- +Cookie decryption in ipv4 +--SKIPIF-- + +--INI-- +sp.configuration_file={PWD}/config/config_encrypted_regexp_cookies_bad_regexp.ini +error_reporting=1 +--COOKIE-- +super_cookie=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP3gV9YJZL/pUeNAjCKFW0U2ywmf1CwHzwd2pWM=;awful_cookie=awful_cookie_value; +--ENV-- +return << +--EXPECT-- +Fatal error: [snuffleupagus][config] Invalid configuration file in Unknown on line 0 + +Fatal error: [snuffleupagus][config] Failed to compile '^super_co[a-z+$': missing terminating ] for character class on line 2. in Unknown on line 0 + +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 -- cgit v1.3