polardbxengine/mysql-test/suite/x/t/expect_field_exists.test

149 lines
6.0 KiB
Plaintext

########### ../t/expect_noerror.test #########
### #
### This test runs aims to run expect.open and expect.close xmessage #
### with mysqlxtest client. #
### Test covers #
### - check condition_key (continue on error or not) #
# Do not continue on error if condition_key=1,default is #
# to continue #
### - Inherit parent's open block condition with "op" #
### - Nested open/close block #
### #
########################################################################
#
--source include/xplugin_preamble.inc
--source include/xplugin_create_user.inc
## Test starts here
--write_file $MYSQL_TMP_DIR/expect_field.tmp
-->import expect.macro
#
## Test
#
-->echo #
-->echo ## Expectation block
-->echo ## open([+field_exists=1]) / close()
-->echo #
-->callmacro Expect_open cond {condition_key:2 condition_value: "1"} ER_SUCCESS
-->callmacro Expect_close ER_SUCCESS
-->echo #
-->echo ## Expectation block
-->echo ## open([+field_exists=1]) / query() / close()
-->echo #
-->callmacro Expect_open cond {condition_key:2 condition_value: "1"} ER_SUCCESS
-->callmacro Execute_sql select "Yes" as 'Is_ok'; ER_SUCCESS
-->callmacro Expect_close ER_SUCCESS
-->echo #
-->echo ## Expectation block
-->echo ## open([+field_exists=1, +field_exists=2]) / query() / close()
-->echo #
-->callmacro Expect_open cond {condition_key:2 condition_value: "1"} cond {condition_key:2 condition_value: "2"} ER_SUCCESS
-->callmacro Execute_sql select "Yes" as 'Is_ok'; ER_SUCCESS
-->callmacro Expect_close ER_SUCCESS
-->echo #
-->echo ## Expectation block
-->echo ## open([+field_exists=1, +field_exists=unknown]) / query() / close()
-->echo #
-->callmacro Expect_open cond {condition_key:2 condition_value: "1"} cond {condition_key:2 condition_value: "1.1"} ER_X_EXPECT_FIELD_EXISTS_FAILED
-->callmacro Execute_sql select "Yes" as 'Is_ok'; ER_X_EXPECT_FIELD_EXISTS_FAILED
-->callmacro Expect_close ER_X_EXPECT_FIELD_EXISTS_FAILED
-->echo #
-->echo ## Expectation block
-->echo ## open([+field_exists=1]) / query():NOK / query() / close()
-->echo #
-->callmacro Expect_open cond {condition_key:2 condition_value: "1"} ER_SUCCESS
-->callmacro Execute_sql select `invalid_column_name`; ER_BAD_FIELD_ERROR
-->callmacro Execute_sql select "Yes" as 'Is_ok'; ER_SUCCESS
-->callmacro Expect_close ER_SUCCESS
-->echo #
-->echo ## Expectation block
-->echo ## open([+field_exists=unknown]):NOK / query():NOK / close():NOK
-->echo #
-->callmacro Expect_open cond {condition_key:2 condition_value: "1.1"} ER_X_EXPECT_FIELD_EXISTS_FAILED
-->callmacro Execute_sql select "No" as 'Is_ok'; ER_X_EXPECT_FIELD_EXISTS_FAILED
-->callmacro Expect_close ER_X_EXPECT_FIELD_EXISTS_FAILED
-->echo #
-->echo ## Expectation block
-->echo ## open([+field_exists=unknown, +no_error]):NOK / query():NOK / close():NOK
-->echo #
-->callmacro Expect_open cond {condition_key:2 condition_value: "1.1"} cond {condition_key:1} ER_X_EXPECT_FIELD_EXISTS_FAILED
-->callmacro Execute_sql select "No" as 'Is_ok'; ER_X_EXPECT_FIELD_EXISTS_FAILED
-->callmacro Expect_close ER_X_EXPECT_FIELD_EXISTS_FAILED
-->echo #
-->echo ## Expectation block
-->echo ## open([+field_exists=2, +no_error]):OK/
-->echo ## query():OK / query(error):NOK / query():NOK
-->echo ## close():NOK
-->echo #
-->callmacro Expect_open cond {condition_key:2 condition_value: "2"} cond {condition_key:1} ER_SUCCESS
-->callmacro Execute_sql select "Yes" as 'Is_ok'; ER_SUCCESS
-->callmacro Execute_sql select `invalid_column_name`; ER_BAD_FIELD_ERROR
-->callmacro Execute_sql select "No" as 'Is_ok'; ER_X_EXPECT_NO_ERROR_FAILED
-->callmacro Expect_close ER_X_EXPECT_NO_ERROR_FAILED
-->echo #
-->echo ## Nested expectation block
-->echo ## open([+field_exists=2]):OK/
-->echo ## open([+no_error]):OK/
-->echo ## query():OK / query(error):NOK / query():NOK
-->echo ## close():NOK
-->echo ## query():OK
-->echo ## close():OK
-->echo #
-->callmacro Expect_open cond {condition_key:2 condition_value: "2"} ER_SUCCESS
-->callmacro Expect_open cond {condition_key:1} ER_SUCCESS
-->callmacro Execute_sql select "Yes" as 'Is_ok'; ER_SUCCESS
-->callmacro Execute_sql select `invalid_column_name`; ER_BAD_FIELD_ERROR
-->callmacro Execute_sql select "No" as 'Is_ok'; ER_X_EXPECT_NO_ERROR_FAILED
-->callmacro Expect_close ER_X_EXPECT_NO_ERROR_FAILED
-->callmacro Execute_sql select "Yes" as 'Is_ok'; ER_SUCCESS
-->callmacro Expect_close ER_SUCCESS
-->echo #
-->echo ## Nested expectation block
-->echo ## open([+no_error]):OK/
-->echo ## open([+field_exists=2]):OK/
-->echo ## query(error):NOK
-->echo ## close():NOK
-->echo ## query():NOK
-->echo ## close():NOK
-->echo #
-->callmacro Expect_open cond {condition_key:1} ER_SUCCESS
-->callmacro Expect_open cond {condition_key:2 condition_value: "2"} ER_SUCCESS
-->callmacro Execute_sql select `invalid_column_name`; ER_BAD_FIELD_ERROR
-->callmacro Expect_close ER_X_EXPECT_NO_ERROR_FAILED
-->callmacro Execute_sql select "No" as 'Is_ok'; ER_X_EXPECT_NO_ERROR_FAILED
-->callmacro Expect_close ER_X_EXPECT_NO_ERROR_FAILED
-->echo #
-->echo ## Nested expectation block
-->echo ## open([+no_error]):OK/
-->echo ## open([+field_exists=2], new_context):OK/
-->echo ## query():NOK
-->echo ## close():OK
-->echo ## query():OK
-->echo ## close():OK
-->echo #
-->callmacro Expect_open cond {condition_key:1} ER_SUCCESS
-->callmacro Expect_open cond {condition_key:2 condition_value: "2"} op:EXPECT_CTX_EMPTY ER_SUCCESS
-->callmacro Execute_sql select `invalid_column_name`; ER_BAD_FIELD_ERROR
-->callmacro Expect_close ER_SUCCESS
-->callmacro Execute_sql select "Yes" as 'Is_ok'; ER_SUCCESS
-->callmacro Expect_close ER_SUCCESS
EOF
--exec $MYSQLXTEST -ux_root --password='' --file=$MYSQL_TMP_DIR/expect_field.tmp 2>&1
## Cleanup
--remove_file $MYSQL_TMP_DIR/expect_field.tmp
--source include/xplugin_drop_user.inc