53 lines
1.7 KiB
C++
53 lines
1.7 KiB
C++
#include "test/framework/catch.hpp"
|
|
#include "src/shellmatta_utils.c"
|
|
#include <string.h>
|
|
|
|
TEST_CASE( "shellmatta_utils.c - itoa - 123456 base 10" ) {
|
|
char buffer[64];
|
|
memset(buffer, 0, sizeof(buffer));
|
|
CHECK( utils_shellItoa(123456, buffer, 10) == 6 );
|
|
REQUIRE( strcmp(buffer, "123456") == 0);
|
|
}
|
|
|
|
TEST_CASE( "shellmatta_utils.c - itoa - 0x0ABBCCDD base 16") {
|
|
char buffer[64];
|
|
memset(buffer, 0, sizeof(buffer));
|
|
CHECK( utils_shellItoa(0x0ABBCCDD, buffer, 16) == 7 );
|
|
REQUIRE( strcmp(buffer, "ABBCCDD") == 0);
|
|
}
|
|
|
|
TEST_CASE( "shellmatta_utils.c - itoa - -574236 base 10") {
|
|
char buffer[64];
|
|
memset(buffer, 0, sizeof(buffer));
|
|
CHECK( utils_shellItoa(-574236, buffer, 10) == 7 );
|
|
REQUIRE( strcmp(buffer, "-574236") == 0);
|
|
}
|
|
|
|
TEST_CASE( "shellmatta_utils.c - itoa - 0x80000000 base 2") {
|
|
char buffer[64];
|
|
memset(buffer, 0, sizeof(buffer));
|
|
CHECK( utils_shellItoa(0x80000000, buffer, 2) == 33 );
|
|
REQUIRE( strcmp(buffer, "-10000000000000000000000000000000") == 0);
|
|
}
|
|
|
|
TEST_CASE( "shellmatta_utils.c - itoa - 0x7FFFFFFF base 2") {
|
|
char buffer[64];
|
|
memset(buffer, 0, sizeof(buffer));
|
|
CHECK( utils_shellItoa(0x7FFFFFFF, buffer, 2) == 31 );
|
|
REQUIRE( strcmp(buffer, "1111111111111111111111111111111") == 0);
|
|
}
|
|
|
|
TEST_CASE( "shellmatta_utils.c - itoa - 0x7FFFFFFF base 1 - wrong base") {
|
|
char buffer[64];
|
|
memset(buffer, 0, sizeof(buffer));
|
|
CHECK( utils_shellItoa(0x7FFFFFFF, buffer, 1) == 0 );
|
|
REQUIRE( strcmp(buffer, "\0") == 0);
|
|
}
|
|
|
|
TEST_CASE( "shellmatta_utils.c - itoa - 0x7FFFFFFF base 17 - wrong base") {
|
|
char buffer[64];
|
|
memset(buffer, 0, sizeof(buffer));
|
|
CHECK( utils_shellItoa(0x7FFFFFFF, buffer, 17) == 0 );
|
|
REQUIRE( strcmp(buffer, "\0") == 0);
|
|
}
|