Commit a5b6a39f authored by unknown's avatar unknown
Browse files

Improvement of the auxiliary routines include/show_msg*.inc

- replace @message by $message
  --> The annoying protocol line "SET @message= <value>" will disappear.
- extended description
- some examples added


mysql-test/include/show_msg.inc:
  replace @message by $message
mysql-test/include/show_msg80.inc:
  - replace @message by $message
  - extended description
  - some examples added
mysql-test/r/mysqltest.result:
  updated results
mysql-test/t/mysqltest.test:
  sub testcases for the show_msg*.inc scripts modified, because the script properties are altered
parent 2ec50db8
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -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));
+74 −8
Original line number Diff line number Diff line
#### 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);
+3 −6
Original line number Diff line number Diff line
@@ -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"
--------------------------------------------------------------------------------
+7 −5
Original line number Diff line number Diff line
@@ -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