diff --git a/mysql-test/include/show_msg.inc b/mysql-test/include/show_msg.inc index 5a29541edcf0ea720c07b5715ea0552aea6dce52..659dce1468696086e0ac73f2f287a27cc034abd5 100755 --- a/mysql-test/include/show_msg.inc +++ b/mysql-test/include/show_msg.inc @@ -6,13 +6,19 @@ # Usage: # Add the following to any *.test file: # : -# set @message="This is a message example"; +# let $message= <value>; # --source include/show_msg.inc # : # +# Attention: +# - Please do not write any spaces between $message and the "=", because the +# assignment will not work. +# - Be careful with single quotes. They must be escaped like "''" or "\'". +# +# "include/show_msg80.inc" contains a detailed description and examples. --disable_query_log -SET @utf8_message = CONVERT(@message using utf8); +eval SET @utf8_message = CONVERT('$message' using utf8); select @utf8_message as "" union select repeat(CONVERT('-' using utf8),char_length(@utf8_message)); diff --git a/mysql-test/include/show_msg80.inc b/mysql-test/include/show_msg80.inc index d9a59c5517abf9f23264cf97da8db3d97cbd243a..acc2c4301a3d8a3b21c905cb05292e43f9fdfd43 100755 --- a/mysql-test/include/show_msg80.inc +++ b/mysql-test/include/show_msg80.inc @@ -1,22 +1,88 @@ #### include/show_msg80.inc # -# This file writes the value set in @message into the -# a protocol file as part of executing a test sequence -# with a dash line that is fixed on 80 characters. -# This can be used in the case of long messages, -# multi line messages that exceed 80 or if an 80 char -# line is desired for short messages. +# This file writes the value set in @message into the a protocol file as part +# of executing a test sequence with a dash line that is fixed on 80 characters. +# +# This can be used in the case of long messages, multi line messages that +# exceed 80 or if an 80 char line is desired for short messages. # # Usage: # Add the following to any *.test file: # : -# set @message="This is a message example"; +# let $message= <value>; # --source include/show_msg80.inc # : # +# Attention: +# - Please do not write any spaces between $message and the "=", because the +# assignment will not work. +# - Be careful with single quotes. They must be escaped like "''" or "\'". +# +# +# Content of "$message" and protocol output depending on the assignement: +# ----------------------------------------------------------------------- +# <x> first char after "$message=", +# where the content is not (space or tab) +# <y*> first chat after beginning of the line, +# where the content is not (space or tab) +# <z> last char before ";" +# | beginning or end of line +# +# script: let $message= <x><whatever0>| +# | <y1><whatever1>| +# |................| +# | <yn><whatevern><z>; +# content: "<x><whatever0><new line><y1><whatever1><new line> +# ....<new line><yn><whatevern><z>" +# protocol output: |<x><whatever0>| +# |<y1><whatever1>| +# |.....| +# |<yn><whatevern><z>| +# |--- 80 dashes ---| +# +# +# Examples of messages: +# --------------------- +# +# Several lines with indentation variant 1: +# script: |let $message= . Testcase 3.1 : Ensure that Pi is not an| +# | . integer number| +# | . Third line; +# protocol: |. Testcase 3.1 : Ensure that Pi is not an| +# |. integer number| +# |. Third line| +# |------ 80 dashes ----| +# Please mention that +# - the auxiliary "." preserves the indentation. +# - it is easy to write the script lines to get a fine indentation +# - the "." is printed +# +# Several lines with indentation variant 2: +# script: |let $message= +# |" Testcase 3.1 : Ensure that Pi is not an| +# | integer number.| +# | Third line"; +# protocol: |" Testcase 3.1 : Ensure that Pi is not an| +# | integer number.| +# | Third line"| +# |------ 80 dashes ----| +# +# Please mention that +# - the '"' preserves the indentation. +# - it is not so easy to write the script lines to get a fine indentation +# - the '"' is printed +# +# Several lines with lost indentation (negative example) +# script: |let $message= Here is message line 1 +# | message line 2; +# protocol: |Here is message line 1| +# |message line 2| +# |------ 80 dashes ----| +# Please mention, that the leading spaces of the message lines disappeared. +# --disable_query_log -SET @utf8_message = CONVERT(@message using utf8); +eval SET @utf8_message = CONVERT('$message' using utf8); select @utf8_message as "" union select repeat(CONVERT('-' using utf8),80); diff --git a/mysql-test/r/mysqltest.result b/mysql-test/r/mysqltest.result index 87e2fca970b22113ed60783ffff8853d5bae5546..63123b418ebeaf8b74b80e2cafb896106f430c3c 100644 --- a/mysql-test/r/mysqltest.result +++ b/mysql-test/r/mysqltest.result @@ -148,17 +148,14 @@ a'b a"b select 'aaa\\','aa''a',"aa""a"; aaa\ aa'a aa"a aaa\ aa'a aa"a -SET @message = 'Here comes a message'; Here comes a message -------------------- -SET @message = USER(); root@localhost -------------- -SET @message = 'Here comes a very very long message that is longer then 80 characters -on multiple lines'; -Here comes a very very long message that is longer then 80 characters -on multiple lines +"Here comes a very very long message that + - is longer then 80 characters and + - consists of several lines" -------------------------------------------------------------------------------- diff --git a/mysql-test/t/mysqltest.test b/mysql-test/t/mysqltest.test index 4e16e57058d9a19f851b17b7164f4dce17821bcb..43e82c4037bfd967ce4ad77cad995a12ee799e7e 100644 --- a/mysql-test/t/mysqltest.test +++ b/mysql-test/t/mysqltest.test @@ -299,19 +299,21 @@ select 'aaa\\','aa''a',"aa""a"; # -# Check of include/show_msg.inc +# Check of include/show_msg.inc and include/show_msg80.inc # # The message contains in most cases a string with the default character set -SET @message = 'Here comes a message'; +let $message= Here comes a message; --source include/show_msg.inc # The message could also contain a string with character set utf8 -SET @message = USER(); +let $message= `SELECT USER()`; --source include/show_msg.inc # The message contains more then 80 characters on multiple lines -SET @message = 'Here comes a very very long message that is longer then 80 characters -on multiple lines'; +let $message= +"Here comes a very very long message that + - is longer then 80 characters and + - consists of several lines"; --source include/show_msg80.inc