polardbxengine/mysql-test/suite/sys_vars/t/check_proxy_users_basic.test

159 lines
7.0 KiB
Plaintext

############## mysql-test\t\check_proxy_users_basic.test ######################
# #
# Variable Name: check_proxy_users #
# Scope: GLOBAL #
# Access Type: Dynamic #
# Data Type: numeric #
# Default Value: 0 #
# Range: - #
# #
# #
# Creation Date: 2015-01-20 #
# Author: Todd Farmer #
# Description: Test Cases of Dynamic System Variable check_proxy_users #
# that checks the behavior of this variable in the following ways#
# * Default Value #
# * Valid & Invalid values #
# * Scope & Access method #
# * Data Integrity #
# #
# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
# server-system-variables.html #
# #
###############################################################################
--source include/load_sysvars.inc
################################################################
# START OF check_proxy_users TESTS #
################################################################
########################################################################
# Saving initial value of check_proxy_users in a temporary variable #
########################################################################
SET @start_value = @@global.check_proxy_users;
SELECT @start_value;
--echo '#----- 1.2.2.3 Default ---------------------------------------#'
################################################################
# Display the DEFAULT value of check_proxy_users #
################################################################
SET @@global.check_proxy_users = 1;
SET @@global.check_proxy_users = DEFAULT;
SELECT @@global.check_proxy_users;
###############################################
# Verify default value of variable #
###############################################
SET @@global.check_proxy_users = @start_value;
SELECT @@global.check_proxy_users = 0;
--echo '#----- 1.2.1 Valid values -------------------------------------#'
#################################################################
# Change the value of check_proxy_users to a valid value #
#################################################################
SET @@global.check_proxy_users = 0;
SELECT @@global.check_proxy_users;
SET @@global.check_proxy_users = 1;
SELECT @@global.check_proxy_users;
SET @@global.check_proxy_users = TRUE;
SELECT @@global.check_proxy_users;
SET @@global.check_proxy_users = FALSE;
SELECT @@global.check_proxy_users;
SET @@global.check_proxy_users = ON;
SELECT @@global.check_proxy_users;
SET @@global.check_proxy_users = OFF;
SELECT @@global.check_proxy_users;
--echo '#----- 1.2.1 Invalid values -----------------------------------#'
####################################################################
# Change the value of check_proxy_users to invalid value #
####################################################################
--Error ER_WRONG_VALUE_FOR_VAR
SET @@global.check_proxy_users = -1;
SELECT @@global.check_proxy_users;
--Error ER_WRONG_VALUE_FOR_VAR
SET @@global.check_proxy_users = 4294967296;
SELECT @@global.check_proxy_users;
--Error ER_WRONG_VALUE_FOR_VAR
SET @@global.check_proxy_users = 10240022115;
SELECT @@global.check_proxy_users;
--Error ER_WRONG_TYPE_FOR_VAR
SET @@global.check_proxy_users = 10000.01;
SELECT @@global.check_proxy_users;
--Error ER_WRONG_VALUE_FOR_VAR
SET @@global.check_proxy_users = -1024;
SELECT @@global.check_proxy_users;
--Error ER_WRONG_VALUE_FOR_VAR
SET @@global.check_proxy_users = 42949672950;
SELECT @@global.check_proxy_users;
--Error ER_WRONG_VALUE_FOR_VAR
SET @@global.check_proxy_users = 'test';
SELECT @@global.check_proxy_users;
--echo '#----- 1.2.5 Global/Session variable ---------------------------#'
####################################################################
# Test if accessing session check_proxy_users gives error #
####################################################################
--Error ER_GLOBAL_VARIABLE
SET @@session.check_proxy_users = 0;
SELECT @@check_proxy_users;
##############################################################################
# Check if the value in GLOBAL & SESSION Tables matches values in variable #
##############################################################################
--disable_warnings
SELECT IF(@@global.check_proxy_users, "ON", "OFF") = VARIABLE_VALUE
FROM performance_schema.global_variables
WHERE VARIABLE_NAME='check_proxy_users';
SELECT IF(@@check_proxy_users, "ON", "OFF") = VARIABLE_VALUE
FROM performance_schema.session_variables
WHERE VARIABLE_NAME='check_proxy_users';
--enable_warnings
####################################################################################################
# Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable #
####################################################################################################
SET @@global.check_proxy_users = 1;
SELECT @@check_proxy_users = @@global.check_proxy_users;
--echo '#----- 1.2.6 Global/Session variable ---------------------------#'
#########################################################################
# Check if check_proxy_users can be accessed with and without @@ sign #
#########################################################################
--Error ER_GLOBAL_VARIABLE
SET check_proxy_users = 1;
SELECT @@check_proxy_users;
--Error ER_PARSE_ERROR
SET local.check_proxy_users = 1;
--Error ER_UNKNOWN_TABLE
SELECT local.check_proxy_users;
--Error ER_PARSE_ERROR
SET global.check_proxy_users = 1;
--Error ER_UNKNOWN_TABLE
SELECT global.check_proxy_users;
--Error ER_BAD_FIELD_ERROR
SELECT check_proxy_users = @@session.check_proxy_users;
##############################
# Restore initial value #
##############################
SET @@global.check_proxy_users = @start_value;
SELECT @@global.check_proxy_users;
#################################################################
# END OF check_proxy_users TESTS #
#################################################################