#ifdef WIN32 #include #endif #define BOOST_TEST_MODULE Helpers #include "./../../src/helpers/helpers.h" #include #include #include using namespace boost; using namespace std; using namespace uad; BOOST_AUTO_TEST_CASE(ToHex_should_cast_single_byte_to_hex_string) { byte a1 = byte(0); byte a2 = byte(1); byte a3 = byte(2); byte a4 = byte(3); byte a5 = byte(4); byte a6 = byte(5); byte a7 = byte(6); byte a8 = byte(15); byte a9 = byte(64); byte a10 = byte(97); byte a11 = byte(127); byte a12 = byte(255); BOOST_CHECK_EQUAL(ToHex(&a1, 1), "00"s); BOOST_CHECK_EQUAL(ToHex(&a2, 1), "01"s); BOOST_CHECK_EQUAL(ToHex(&a3, 1), "02"s); BOOST_CHECK_EQUAL(ToHex(&a4, 1), "03"s); BOOST_CHECK_EQUAL(ToHex(&a5, 1), "04"s); BOOST_CHECK_EQUAL(ToHex(&a6, 1), "05"s); BOOST_CHECK_EQUAL(ToHex(&a7, 1), "06"s); BOOST_CHECK_EQUAL(ToHex(&a8, 1), "0F"s); BOOST_CHECK_EQUAL(ToHex(&a9, 1), "40"s); BOOST_CHECK_EQUAL(ToHex(&a10, 1), "61"s); BOOST_CHECK_EQUAL(ToHex(&a11, 1), "7F"s); BOOST_CHECK_EQUAL(ToHex(&a12, 1), "FF"s); } BOOST_AUTO_TEST_CASE(ToHex_should_return_empty_string_if_no_arr_or_no_length) { byte a1 = byte(0); BOOST_CHECK_EQUAL(ToHex(nullptr, 0), ""s); BOOST_CHECK_EQUAL(ToHex(&a1, 0), ""s); BOOST_CHECK_EQUAL(ToHex(nullptr, 1), ""s); } // BOOST_AUTO_TEST_CASE(ToHex_should_cast_bytes_vector_to_hex_string) // { // constexpr size_t kSize = 10; // // byte a1[kSize] = {byte(0), byte(1), byte(2), byte(3), byte(4), byte(5), byte(6), byte(7), byte(8), byte(9)}; // byte a2[kSize] = {byte(1), byte(2), byte(3), byte(4), byte(5), byte(6), byte(7), byte(8), byte(9), byte(10)}; // byte a3[kSize] = {byte(2), byte(3), byte(4), byte(5), byte(6), byte(7), byte(8), byte(9), byte(10), byte(11)}; // byte a4[kSize] = {byte(3), byte(4), byte(5), byte(6), byte(7), byte(8), byte(9), byte(10), byte(11), byte(12)}; // byte a5[kSize] = byte(4); // byte a6[kSize] = byte(5); // byte a7[kSize] = byte(6); // byte a8[kSize] = byte(15); // byte a9[kSize] = byte(64); // byte a10[kSize] = byte(97); // byte a11[kSize] = byte(127); // byte a12[kSize] = byte(255); // // BOOST_CHECK_EQUAL(ToHex(&a1, 0), "00"s); // BOOST_CHECK_EQUAL(ToHex(&a2, 0), "01"s); // BOOST_CHECK_EQUAL(ToHex(&a3, 0), "02"s); // BOOST_CHECK_EQUAL(ToHex(&a4, 0), "03"s); // BOOST_CHECK_EQUAL(ToHex(&a5, 0), "04"s); // BOOST_CHECK_EQUAL(ToHex(&a6, 0), "05"s); // BOOST_CHECK_EQUAL(ToHex(&a7, 0), "06"s); // BOOST_CHECK_EQUAL(ToHex(&a8, 0), "0F"s); // BOOST_CHECK_EQUAL(ToHex(&a9, 0), "40"s); // BOOST_CHECK_EQUAL(ToHex(&a10, 0), "61"s); // BOOST_CHECK_EQUAL(ToHex(&a11, 0), "7F"s); // BOOST_CHECK_EQUAL(ToHex(&a12, 0), "FF"s); // }