From 72582b63a922a678c1059dd57bbb977b3e90278a Mon Sep 17 00:00:00 2001 From: Alex Kotov <kotovalexarian@gmail.com> Date: Thu, 10 Feb 2022 02:30:13 +0500 Subject: [PATCH] Main: fix units --- include/kernaux/units.h | 7 ++++--- src/units.c | 6 +++--- tests/test_units_human.c | 7 ------- 3 files changed, 7 insertions(+), 13 deletions(-) diff --git a/include/kernaux/units.h b/include/kernaux/units.h index af7d427..eee9361 100644 --- a/include/kernaux/units.h +++ b/include/kernaux/units.h @@ -7,6 +7,7 @@ extern "C" { #include <stdbool.h> #include <stddef.h> +#include <stdint.h> enum KernAux_Unit { KERNAUX_UNIT_BIT, @@ -25,12 +26,12 @@ enum KernAux_UnitPrefixBin { KERNAUX_UNITPFX_GIBI, }; -bool kernaux_units_human_raw(size_t value, enum KernAux_Unit unit, +bool kernaux_units_human_raw(uint64_t value, enum KernAux_Unit unit, char *buffer, size_t buffer_size); -bool kernaux_units_human_dec(size_t value, enum KernAux_Unit unit, +bool kernaux_units_human_dec(uint64_t value, enum KernAux_Unit unit, enum KernAux_UnitPrefixDec prefix, char *buffer, size_t buffer_size); -bool kernaux_units_human_bin(size_t value, enum KernAux_Unit unit, +bool kernaux_units_human_bin(uint64_t value, enum KernAux_Unit unit, enum KernAux_UnitPrefixBin prefix, char *buffer, size_t buffer_size); diff --git a/src/units.c b/src/units.c index 3f31b85..c324068 100644 --- a/src/units.c +++ b/src/units.c @@ -9,7 +9,7 @@ #define TMP_BUFFER_SIZE (64) bool kernaux_units_human_raw( - const size_t value, + const uint64_t value, const enum KernAux_Unit unit, char *const buffer, const size_t buffer_size @@ -45,7 +45,7 @@ bool kernaux_units_human_raw( } bool kernaux_units_human_dec( - const size_t value, + const uint64_t value, const enum KernAux_Unit unit, const enum KernAux_UnitPrefixDec prefix, char *const buffer, @@ -91,7 +91,7 @@ bool kernaux_units_human_dec( } bool kernaux_units_human_bin( - const size_t value, + const uint64_t value, const enum KernAux_Unit unit, const enum KernAux_UnitPrefixBin prefix, char *const buffer, diff --git a/tests/test_units_human.c b/tests/test_units_human.c index 07f2a48..200d15c 100644 --- a/tests/test_units_human.c +++ b/tests/test_units_human.c @@ -42,7 +42,6 @@ int main() test_raw(UINT16_MAX, KERNAUX_UNIT_BYTE, "65535 Byte"); test_raw(UINT32_MAX, KERNAUX_UNIT_BIT, "4294967295 bit"); test_raw(UINT32_MAX, KERNAUX_UNIT_BYTE, "4294967295 Byte"); - // TODO: only on 64-bit machine test_raw(UINT64_MAX, KERNAUX_UNIT_BIT, "18446744073709551615 bit"); test_raw(UINT64_MAX, KERNAUX_UNIT_BYTE, "18446744073709551615 Byte"); @@ -58,7 +57,6 @@ int main() test_dec(UINT16_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_KILO, "65535 kB"); test_dec(UINT32_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_KILO, "4294967295 kbit"); test_dec(UINT32_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_KILO, "4294967295 kB"); - // TODO: only on 64-bit machine test_dec(UINT64_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_KILO, "18446744073709551615 kbit"); test_dec(UINT64_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_KILO, "18446744073709551615 kB"); @@ -74,7 +72,6 @@ int main() test_dec(UINT16_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_MEGA, "65535 MB"); test_dec(UINT32_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_MEGA, "4294967295 Mbit"); test_dec(UINT32_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_MEGA, "4294967295 MB"); - // TODO: only on 64-bit machine test_dec(UINT64_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_MEGA, "18446744073709551615 Mbit"); test_dec(UINT64_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_MEGA, "18446744073709551615 MB"); @@ -90,7 +87,6 @@ int main() test_dec(UINT16_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_GIGA, "65535 GB"); test_dec(UINT32_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_GIGA, "4294967295 Gbit"); test_dec(UINT32_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_GIGA, "4294967295 GB"); - // TODO: only on 64-bit machine test_dec(UINT64_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_GIGA, "18446744073709551615 Gbit"); test_dec(UINT64_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_GIGA, "18446744073709551615 GB"); @@ -106,7 +102,6 @@ int main() test_bin(UINT16_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_KIBI, "65535 KiB"); test_bin(UINT32_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_KIBI, "4294967295 Kibit"); test_bin(UINT32_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_KIBI, "4294967295 KiB"); - // TODO: only on 64-bit machine test_bin(UINT64_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_KIBI, "18446744073709551615 Kibit"); test_bin(UINT64_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_KIBI, "18446744073709551615 KiB"); @@ -122,7 +117,6 @@ int main() test_bin(UINT16_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_MEBI, "65535 MiB"); test_bin(UINT32_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_MEBI, "4294967295 Mibit"); test_bin(UINT32_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_MEBI, "4294967295 MiB"); - // TODO: only on 64-bit machine test_bin(UINT64_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_MEBI, "18446744073709551615 Mibit"); test_bin(UINT64_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_MEBI, "18446744073709551615 MiB"); @@ -138,7 +132,6 @@ int main() test_bin(UINT16_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_GIBI, "65535 GiB"); test_bin(UINT32_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_GIBI, "4294967295 Gibit"); test_bin(UINT32_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_GIBI, "4294967295 GiB"); - // TODO: only on 64-bit machine test_bin(UINT64_MAX, KERNAUX_UNIT_BIT, KERNAUX_UNITPFX_GIBI, "18446744073709551615 Gibit"); test_bin(UINT64_MAX, KERNAUX_UNIT_BYTE, KERNAUX_UNITPFX_GIBI, "18446744073709551615 GiB");