X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=tests%2Funit%2Ftest_utils_parse_size_suffix.c;h=4340a69ec639266d96d0bdf1655a9db077d903c5;hp=3b9c68cafcf8f366395f31f62ce920e8971bb66f;hb=refs%2Fheads%2Fsow-2019-0002-rev1;hpb=70d0b120691e90d81de7b38af8b845e261b5b40c diff --git a/tests/unit/test_utils_parse_size_suffix.c b/tests/unit/test_utils_parse_size_suffix.c index 3b9c68caf..4340a69ec 100644 --- a/tests/unit/test_utils_parse_size_suffix.c +++ b/tests/unit/test_utils_parse_size_suffix.c @@ -1,18 +1,8 @@ /* - * Copyright (C) - 2013 Simon Marchi + * Copyright (C) 2013 Simon Marchi * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by as - * published by the Free Software Foundation; only version 2 of the License. + * SPDX-License-Identifier: GPL-2.0-only * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along with - * this program; if not, write to the Free Software Foundation, Inc., 51 - * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #include @@ -21,14 +11,15 @@ #include -#include +#include -/* For lttngerr.h */ +/* For error.h */ int lttng_opt_quiet = 1; int lttng_opt_verbose = 3; +int lttng_opt_mi; struct valid_test_input { - char *input; + const char *input; uint64_t expected_result; }; @@ -42,12 +33,64 @@ static struct valid_test_input valid_tests_inputs[] = { { "128K", 131072 }, { "0x1234k", 4771840 }, { "32M", 33554432 }, - { "1024G", 1099511627776 }, + { "1024G", 1099511627776ULL }, + { "0X400", 1024 }, + { "0x40a", 1034 }, + { "0X40b", 1035 }, + { "0x40C", 1036 }, + { "0X40D", 1037 }, + { "0x40e", 1038 }, + { "0X40f", 1039 }, + { "00", 0 }, + { "0k", 0 }, + { "0K", 0 }, + { "0M", 0 }, + { "0G", 0 }, + { "00k", 0 }, + { "00K", 0 }, + { "00M", 0 }, + { "00G", 0 }, + { "0x0", 0 }, + { "0X0", 0 }, + { "0x0k", 0 }, + { "0X0K", 0 }, + { "0x0M", 0 }, + { "0X0G", 0 }, + { "0X40G", 68719476736ULL }, + { "0300k", 196608 }, + { "0300K", 196608 }, + { "030M", 25165824 }, + { "020G", 17179869184ULL }, + { "0xa0k", 163840 }, + { "0xa0K", 163840 }, + { "0XA0M", 167772160 }, + { "0xA0G", 171798691840ULL }, }; static const int num_valid_tests = sizeof(valid_tests_inputs) / sizeof(valid_tests_inputs[0]); /* Invalid test cases */ -static char *invalid_tests_inputs[] = { "", "-1", "k", "4611686018427387904G" }; +static const char *invalid_tests_inputs[] = { + "", + " ", + "-1", + "k", + "4611686018427387904G", + "0x40g", + "08", + "09", + "0x", + "x0", + "0xx0", + "07kK", + "0xk", + "0XM", + "0xG", + "0x0MM", + "0X0GG", + "0a", + "0B", +}; + static const int num_invalid_tests = sizeof(invalid_tests_inputs) / sizeof(invalid_tests_inputs[0]); static void test_utils_parse_size_suffix(void)