12345678910111213141516171819202122232425262728293031323334353637383940 |
- // SPDX-License-Identifier: GPL-2.0
- #include <inttypes.h>
- #include <linux/compiler.h>
- #include <linux/types.h>
- #include <string.h>
- #include "tests.h"
- #include "units.h"
- #include "debug.h"
- int test__unit_number__scnprint(struct test *t __maybe_unused, int subtest __maybe_unused)
- {
- struct {
- u64 n;
- const char *str;
- } test[] = {
- { 1, "1B" },
- { 10*1024, "10K" },
- { 20*1024*1024, "20M" },
- { 30*1024*1024*1024ULL, "30G" },
- { 0, "0B" },
- { 0, NULL },
- };
- unsigned i = 0;
- while (test[i].str) {
- char buf[100];
- unit_number__scnprintf(buf, sizeof(buf), test[i].n);
- pr_debug("n %" PRIu64 ", str '%s', buf '%s'\n",
- test[i].n, test[i].str, buf);
- if (strcmp(test[i].str, buf))
- return TEST_FAIL;
- i++;
- }
- return TEST_OK;
- }
|