--source include/have_innodb.inc
# This is the unit test for bug #47167.
# It tests setting the global variable "innodb_file_format_max" (
# originally "innodb_file_format_check") with a user-Defined Variable.

--source include/not_embedded.inc
--source include/restart_and_reinit.inc

# Save the value (Antelope) in 'innodb_file_format_max' to
# 'old_innodb_file_format_max'
set @old_innodb_file_format_max=@@innodb_file_format_max;

# @old_innodb_file_format_max shall have the value of 'Antelope'
select @old_innodb_file_format_max;

# Reset the value in 'innodb_file_format_max' to 'Barracuda'
set global innodb_file_format_max = Barracuda;

select @@innodb_file_format_max;

# Set 'innodb_file_format_max' to its default value, which
# is the latest file format supported in the current release.
set global innodb_file_format_max = DEFAULT;

select @@innodb_file_format_max;

# Put the saved value back to 'innodb_file_format_max'
set global innodb_file_format_max = @old_innodb_file_format_max;

# Check whether 'innodb_file_format_max' get its original value.
select @@innodb_file_format_max;

# Following are negative tests, all should fail.
--disable_warnings
--error ER_WRONG_VALUE_FOR_VAR
set global innodb_file_format_max = cheetah;

--error ER_WRONG_VALUE_FOR_VAR
set global innodb_file_format_max = Bear;

--error ER_WRONG_VALUE_FOR_VAR
set global innodb_file_format_max = on;

--error ER_WRONG_VALUE_FOR_VAR
set global innodb_file_format_max = off;
--enable_warnings
