mirror of
https://github.com/MariaDB/server.git
synced 2025-01-15 19:42:28 +01:00
2c7b6214e7
- Load and convert the entire input file at once, rather than reading string-by-string using fgets(). This change makes it possible to convert from UCS2, UTF16, UTF32 data. - Adding the --delimiter command, to treat the specified characters as delimiters rather than data to convert. Useful in combination with `-f filename` or `-t filename`. The delimiter characters are not converted, they are copied from the input to the output as is. - Adding diagnostics with line number and position if: * an illegal input byte sequence was found * a character cannot be converted to the target character set
39 lines
1.4 KiB
Text
39 lines
1.4 KiB
Text
--echo #
|
|
--echo # MDEV-17088 Provide tools to encode/decode mysql-encoded file system names
|
|
--echo #
|
|
|
|
--character_set latin1
|
|
|
|
--echo # default encoding
|
|
--exec echo "t1" | $MARIADB_CONV
|
|
--exec echo "t1" | $MARIADB_CONV -f filename --delimiter="\r\n"
|
|
--exec echo "t1" | $MARIADB_CONV -t filename --delimiter="\r\n"
|
|
|
|
--echo # invalid option
|
|
--replace_regex /.*mariadb-conv.*: unknown/mariadb-conv: unknown/
|
|
--error 1
|
|
--exec echo "t1" | $MARIADB_CONV -f filename -r latin1 2>&1 > /dev/null
|
|
|
|
--echo # unknown "to" character set
|
|
--replace_regex /.*mariadb-conv.*: unknown/mariadb-conv: unknown/
|
|
--error 1
|
|
--exec echo "t1" | $MARIADB_CONV -f filename -t unknown-cs 2>&1 > /dev/null
|
|
|
|
--echo # unknown "from" character set
|
|
--replace_regex /.*mariadb-conv.*: unknown/mariadb-conv: unknown/
|
|
--error 1
|
|
--exec echo "t1" | $MARIADB_CONV -f unknown-cs -t latin1 2>&1 > /dev/null
|
|
|
|
--echo # Bad delimiter
|
|
--error 1
|
|
--exec echo "t1" | $MARIADB_CONV --delimiter="\x" 2>&1 > /dev/null
|
|
|
|
--echo # Conversion error
|
|
--error 1
|
|
--exec $MARIADB_CONV -f utf8 -t latin1 < $MYSQL_TEST_DIR/std_data/mariadb-conv/file01.utf8.txt 2>&1
|
|
--exec $MARIADB_CONV -f utf8 -t latin1 -c < $MYSQL_TEST_DIR/std_data/mariadb-conv/file01.utf8.txt 2>&1
|
|
|
|
--echo # Bad input character
|
|
--error 1
|
|
--exec $MARIADB_CONV -f utf8 -t latin1 < $MYSQL_TEST_DIR/std_data/mariadb-conv/file02.latin1.txt 2>&1
|
|
--exec $MARIADB_CONV -f utf8 -t latin1 -c < $MYSQL_TEST_DIR/std_data/mariadb-conv/file02.latin1.txt 2>&1
|