[tarantool-patches] Re: [PATCH] lua: add string.fromhex method
Alexander Turenko
alexander.turenko at tarantool.org
Thu Aug 9 10:06:20 MSK 2018
Hi, Nikita!
The implementation LGTM.
See minor comments about the test below.
Please, proceed the next review round with Vlad.
WBR, Alexander Turenko.
On Wed, Aug 08, 2018 at 03:21:03PM +0300, N.Tatunov wrote:
> Add string.fromhex method. Add test for string.fromhex().
>
> Closes #2562
> ---
>
> Issue: https://github.com/tarantool/tarantool/issues/2562
> Branch: https://github.com/tarantool/tarantool/tree/N_Tatunov/gh-2562-fromhex-method
>
> <...>
>
> diff --git a/test/app-tap/string.test.lua b/test/app-tap/string.test.lua
> index 1d10dcfc9..f88296fff 100755
> --- a/test/app-tap/string.test.lua
> +++ b/test/app-tap/string.test.lua
> @@ -3,7 +3,7 @@
> local tap = require('tap')
> local test = tap.test("string extensions")
>
> -test:plan(6)
> +test:plan(7)
>
> test:test("split", function(test)
> test:plan(10)
> @@ -114,6 +114,25 @@ test:test("hex", function(test)
> test:is(string.hex(""), "", "hex empty string")
> end)
>
> +test:test("fromhex", function(test)
> + test:plan(11)
> + test:is(string.fromhex("48656c6c6f"), "Hello", "from hex to bin")
> + test:is(string.fromhex("4c696e7578"), "Linux", "from hex to bin")
> + test:is(string.fromhex("6C6F72656D"), "lorem", "from hex to bin")
> + test:is(string.fromhex("697073756D"), "ipsum", "from hex to bin")
> + test:is(string.fromhex("6c6f72656d"), "lorem", "from hex to bin")
> + test:is(string.fromhex("697073756d"), "ipsum", "from hex to bin")
> + test:is(string.fromhex("6A6B6C6D6E6F"), "jklmno", "from hex to bin")
> + test:is(string.fromhex("6a6b6c6d6e6f"), "jklmno", "from hex to bin")
> + local _, err = pcall(string.fromhex, 'aaa')
Use double quotes when a file primarily uses this quotes type.
> + test:ok(err and err:match("(even amount of chars expected," ..
> + " got odd amount)"), err)
1. Indent is strange (don't get what is the rule).
2. Don't use `err` for diagnostics (the message could can be unusable in case of an
error).
> + local _, err = pcall(string.fromhex, 'qq')
Single qutoes -> doule quotes.
> + test:ok(err and err:match("(hex string expected, got non hex chars)"), err)
> + local _, err = pcall(string.fromhex, 795)
> + test:ok(err and err:match("(string expected, got " .. type(795) .. ")"))
type(795) -> number
> +end)
> +
> test:test("strip", function(test)
> test:plan(6)
> local str = " hello hello "
> --
> 2.15.2 (Apple Git-101.1)
>
More information about the Tarantool-patches
mailing list