diff options
author | Kyle Edwards <kyle.edwards@kitware.com> | 2019-08-16 18:49:13 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2019-08-16 18:49:28 (GMT) |
commit | dcf2beb7dec757b7e28eba43fb7f2d5498bded39 (patch) | |
tree | b4dcb409eea4f99a58f02711edba5452c8613cfc /Tests/CMakeLib/testStringAlgorithms.cxx | |
parent | 6f1781c63ad58c3c84987dce7eee36668ed2ba57 (diff) | |
parent | 935fbe0b0454163678bc4ef19e1bee95a7a31b4d (diff) | |
download | CMake-dcf2beb7dec757b7e28eba43fb7f2d5498bded39.zip CMake-dcf2beb7dec757b7e28eba43fb7f2d5498bded39.tar.gz CMake-dcf2beb7dec757b7e28eba43fb7f2d5498bded39.tar.bz2 |
Merge topic 'cmStringAlgorithms_ulong'
935fbe0b04 cmStringAlgorithms: Add cmStrToLong and cmStrToULong
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3681
Diffstat (limited to 'Tests/CMakeLib/testStringAlgorithms.cxx')
-rw-r--r-- | Tests/CMakeLib/testStringAlgorithms.cxx | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/Tests/CMakeLib/testStringAlgorithms.cxx b/Tests/CMakeLib/testStringAlgorithms.cxx index f833502..a92a910 100644 --- a/Tests/CMakeLib/testStringAlgorithms.cxx +++ b/Tests/CMakeLib/testStringAlgorithms.cxx @@ -190,5 +190,40 @@ int testStringAlgorithms(int /*unused*/, char* /*unused*/ []) assert_ok(!cmHasLiteralSuffix(str, "ab"), "cmHasLiteralPrefix string not"); } + // ---------------------------------------------------------------------- + // Test cmStrToLong + { + long value; + assert_ok(cmStrToLong("1", &value) && value == 1, + "cmStrToLong parses a positive decimal integer."); + assert_ok(cmStrToLong(" 1", &value) && value == 1, + "cmStrToLong parses a decimal integer after whitespace."); + + assert_ok(cmStrToLong("-1", &value) && value == -1, + "cmStrToLong parses a negative decimal integer."); + assert_ok( + cmStrToLong(" -1", &value) && value == -1, + "cmStrToLong parses a negative decimal integer after whitespace."); + + assert_ok(!cmStrToLong("1x", &value), + "cmStrToLong rejects trailing content."); + } + + // ---------------------------------------------------------------------- + // Test cmStrToULong + { + unsigned long value; + assert_ok(cmStrToULong("1", &value) && value == 1, + "cmStrToULong parses a decimal integer."); + assert_ok(cmStrToULong(" 1", &value) && value == 1, + "cmStrToULong parses a decimal integer after whitespace."); + assert_ok(!cmStrToULong("-1", &value), + "cmStrToULong rejects a negative number."); + assert_ok(!cmStrToULong(" -1", &value), + "cmStrToULong rejects a negative number after whitespace."); + assert_ok(!cmStrToULong("1x", &value), + "cmStrToULong rejects trailing content."); + } + return failed; } |